mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-02-17 13:10:12 +08:00
2010-04-27 Kai Tietz <kai.tietz@onevision.com>
* pe-x86_64.c (TARGET_UNDERSCORE): Set value dependent to USE_MINGW64_LEADING_UNDERSCORES. * pei-x86_64.c (TARGET_UNDERSCORE): Likewise. * config.bfd: Change underscoring default for x64 mingw to false. * coffcode.h (coff_write_relocs): Add check that dereferenced sym_ptr_ptr isn't NULL. * config.in (USE_MINGW64_LEADING_UNDERSCORES): New. * configure: Regenerated. * configure.in: Add option '--enable-leading-mingw64-underscores' and define config.in variable USE_MINGW64_LEADING_UNDERSCORES.
This commit is contained in:
parent
e78f4312c5
commit
ef72a554d9
@ -1,3 +1,17 @@
|
||||
2010-04-27 Kai Tietz <kai.tietz@onevision.com>
|
||||
|
||||
* pe-x86_64.c (TARGET_UNDERSCORE): Set value dependent
|
||||
to USE_MINGW64_LEADING_UNDERSCORES.
|
||||
* pei-x86_64.c (TARGET_UNDERSCORE): Likewise.
|
||||
* config.bfd: Change underscoring default for x64 mingw
|
||||
to false.
|
||||
* coffcode.h (coff_write_relocs): Add check that dereferenced
|
||||
sym_ptr_ptr isn't NULL.
|
||||
* config.in (USE_MINGW64_LEADING_UNDERSCORES): New.
|
||||
* configure: Regenerated.
|
||||
* configure.in: Add option '--enable-leading-mingw64-underscores'
|
||||
and define config.in variable USE_MINGW64_LEADING_UNDERSCORES.
|
||||
|
||||
2010-04-27 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
PR binutils/11512
|
||||
|
@ -2648,7 +2648,7 @@ coff_write_relocs (bfd * abfd, int first_undef)
|
||||
entries know which symbol index they point to. So we
|
||||
have to look up the output symbol here. */
|
||||
|
||||
if (q->sym_ptr_ptr[0]->the_bfd != abfd)
|
||||
if (q->sym_ptr_ptr[0] != NULL && q->sym_ptr_ptr[0]->the_bfd != abfd)
|
||||
{
|
||||
int j;
|
||||
const char *sname = q->sym_ptr_ptr[0]->name;
|
||||
@ -2677,7 +2677,7 @@ coff_write_relocs (bfd * abfd, int first_undef)
|
||||
n.r_symndx = q->addend;
|
||||
else
|
||||
#endif
|
||||
if (q->sym_ptr_ptr)
|
||||
if (q->sym_ptr_ptr && q->sym_ptr_ptr[0] != NULL)
|
||||
{
|
||||
#ifdef SECTION_RELATIVE_ABSOLUTE_SYMBOL_P
|
||||
if (SECTION_RELATIVE_ABSOLUTE_SYMBOL_P (q, s))
|
||||
|
@ -177,7 +177,6 @@ case "${targ}" in
|
||||
;;
|
||||
alpha*-*-*vms*)
|
||||
targ_defvec=vms_alpha_vec
|
||||
targ_selvecs=vms_lib_txt_vec
|
||||
want64=true
|
||||
;;
|
||||
alpha*-*-*)
|
||||
@ -640,7 +639,7 @@ case "${targ}" in
|
||||
targ_defvec=x86_64pe_vec
|
||||
targ_selvecs="x86_64pe_vec x86_64pei_vec bfd_elf64_x86_64_vec bfd_elf64_l1om_vec"
|
||||
want64=true
|
||||
targ_underscore=yes
|
||||
targ_underscore=no
|
||||
;;
|
||||
#endif
|
||||
i[3-7]86-*-lynxos*)
|
||||
@ -1511,6 +1510,10 @@ case "${targ}" in
|
||||
targ_defvec=bfd_elf32_vax_vec
|
||||
;;
|
||||
|
||||
vax*-*-*vms*)
|
||||
targ_defvec=vms_vax_vec
|
||||
;;
|
||||
|
||||
we32k-*-*)
|
||||
targ_defvec=we32kcoff_vec
|
||||
;;
|
||||
|
@ -297,6 +297,9 @@
|
||||
/* Use b modifier when opening binary files? */
|
||||
#undef USE_BINARY_FOPEN
|
||||
|
||||
/* Define if we should use leading underscore on 64 bit mingw targets */
|
||||
#undef USE_MINGW64_LEADING_UNDERSCORES
|
||||
|
||||
/* Use mmap if it's available? */
|
||||
#undef USE_MMAP
|
||||
|
||||
|
18
bfd/configure
vendored
18
bfd/configure
vendored
@ -785,6 +785,7 @@ enable_64_bit_bfd
|
||||
enable_targets
|
||||
with_mmap
|
||||
enable_secureplt
|
||||
enable_leading_mingw64_underscores
|
||||
with_separate_debug_dir
|
||||
enable_elf_stt_common
|
||||
with_pkgversion
|
||||
@ -1435,6 +1436,8 @@ Optional Features:
|
||||
--enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)
|
||||
--enable-targets alternative target configurations
|
||||
--enable-secureplt Default to creating read-only plt entries
|
||||
--enable-leading-mingw64-underscores
|
||||
Enable leading underscores on 64 bit mingw targets
|
||||
--enable-elf-stt-common Allow the generation of ELF symbols with the STT_COMMON type
|
||||
--enable-werror treat compile warnings as errors
|
||||
--enable-build-warnings enable build-time compiler warnings
|
||||
@ -11402,7 +11405,7 @@ else
|
||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||
lt_status=$lt_dlunknown
|
||||
cat > conftest.$ac_ext <<_LT_EOF
|
||||
#line 11405 "configure"
|
||||
#line 11408 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#if HAVE_DLFCN_H
|
||||
@ -11508,7 +11511,7 @@ else
|
||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||
lt_status=$lt_dlunknown
|
||||
cat > conftest.$ac_ext <<_LT_EOF
|
||||
#line 11511 "configure"
|
||||
#line 11514 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#if HAVE_DLFCN_H
|
||||
@ -12049,6 +12052,17 @@ $as_echo "#define USE_SECUREPLT 1" >>confdefs.h
|
||||
|
||||
fi
|
||||
|
||||
# Check whether --enable-leading-mingw64-underscores was given.
|
||||
if test "${enable_leading_mingw64_underscores+set}" = set; then :
|
||||
enableval=$enable_leading_mingw64_underscores;
|
||||
fi
|
||||
|
||||
if test x"$enable_leading_mingw64_underscores" = xyes ; then :
|
||||
|
||||
$as_echo "#define USE_MINGW64_LEADING_UNDERSCORES 1" >>confdefs.h
|
||||
|
||||
fi
|
||||
|
||||
DEBUGDIR=${libdir}/debug
|
||||
|
||||
# Check whether --with-separate-debug-dir was given.
|
||||
|
@ -75,6 +75,14 @@ if test $use_secureplt = true; then
|
||||
[Define if we should default to creating read-only plt entries])
|
||||
fi
|
||||
|
||||
AC_ARG_ENABLE(leading-mingw64-underscores,
|
||||
AS_HELP_STRING([--enable-leading-mingw64-underscores],
|
||||
[Enable leading underscores on 64 bit mingw targets]),
|
||||
[],[])
|
||||
AS_IF([ test x"$enable_leading_mingw64_underscores" = xyes ],
|
||||
[AC_DEFINE(USE_MINGW64_LEADING_UNDERSCORES, 1,
|
||||
[Define if we should use leading underscore on 64 bit mingw targets])])
|
||||
|
||||
DEBUGDIR=${libdir}/debug
|
||||
AC_ARG_WITH(separate-debug-dir,
|
||||
AS_HELP_STRING([--with-separate-debug-dir=DIR],
|
||||
|
@ -28,7 +28,11 @@
|
||||
#define COFF_WITH_PE
|
||||
#define COFF_WITH_pex64
|
||||
#define PCRELOFFSET TRUE
|
||||
#if defined (USE_MINGW64_LEADING_UNDERSCORES)
|
||||
#define TARGET_UNDERSCORE '_'
|
||||
#else
|
||||
#define TARGET_UNDERSCORE 0
|
||||
#endif
|
||||
#define COFF_LONG_SECTION_NAMES
|
||||
#define COFF_SUPPORT_GNU_LINKONCE
|
||||
#define COFF_LONG_FILENAMES
|
||||
|
@ -29,7 +29,11 @@
|
||||
#define COFF_WITH_PE
|
||||
#define COFF_WITH_pex64
|
||||
#define PCRELOFFSET TRUE
|
||||
#if defined (USE_MINGW64_LEADING_UNDERSCORES)
|
||||
#define TARGET_UNDERSCORE '_'
|
||||
#else
|
||||
#define TARGET_UNDERSCORE 0
|
||||
#endif
|
||||
/* Long section names not allowed in executable images, only object files. */
|
||||
#define COFF_LONG_SECTION_NAMES 0
|
||||
#define COFF_SUPPORT_GNU_LINKONCE
|
||||
|
Loading…
Reference in New Issue
Block a user