forked from Imagelibrary/binutils-gdb
Add ld_list_options
This patch adds ld_list_options for ELF targets to avoid duplicated
outputs from ld --help.
* Makefile.am (ELF_CLFAGS): New.
(AM_CFLAGS): Add $(ELF_CLFAGS).
* configure.ac (elf_list_options): New. AC_SUBST.
(elf_shlib_list_options): Likewise.
(elf_plt_unwind_list_options): Likewise.
* lexsup.c (elf_shlib_list_options): New.
(elf_static_list_options): Likewise.
(elf_plt_unwind_list_options): Likewise.
(ld_list_options): Likewise.
(help): Call ld_list_options.
* Makefile.in: Regenerated.
* configure: Likewise.
* emulparams/plt_unwind.sh (PLT_UNWIND): New.
(PARSE_AND_LIST_OPTIONS): Removed.
* emultempl/elf32.em (gld_list_options): New.
(gld${EMULATION_NAME}_list_options): Define only if BNDPLT or
PARSE_AND_LIST_OPTIONS is defined.
(ld_${EMULATION_NAME}_emulation): Replace
gld${EMULATION_NAME}_list_options with ${gld_list_options.
This commit is contained in:
28
ld/configure
vendored
28
ld/configure
vendored
@@ -608,6 +608,9 @@ LIB_PATH
|
||||
EMUL_EXTRA_OFILES
|
||||
EMULATION_OFILES
|
||||
EMUL
|
||||
elf_plt_unwind_list_options
|
||||
elf_shlib_list_options
|
||||
elf_list_options
|
||||
STRINGIFY
|
||||
enable_initfini_array
|
||||
ENABLE_PLUGINS_FALSE
|
||||
@@ -11710,7 +11713,7 @@ else
|
||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||
lt_status=$lt_dlunknown
|
||||
cat > conftest.$ac_ext <<_LT_EOF
|
||||
#line 11713 "configure"
|
||||
#line 11716 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#if HAVE_DLFCN_H
|
||||
@@ -11816,7 +11819,7 @@ else
|
||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||
lt_status=$lt_dlunknown
|
||||
cat > conftest.$ac_ext <<_LT_EOF
|
||||
#line 11819 "configure"
|
||||
#line 11822 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#if HAVE_DLFCN_H
|
||||
@@ -17025,6 +17028,9 @@ _ACEOF
|
||||
fi
|
||||
fi
|
||||
|
||||
elf_list_options=FALSE
|
||||
elf_shlib_list_options=FALSE
|
||||
elf_plt_unwind_list_options=FALSE
|
||||
for targ_alias in `echo $target_alias $enable_targets | sed 's/,/ /g'`
|
||||
do
|
||||
if test "$targ_alias" = "all"; then
|
||||
@@ -17055,7 +17061,20 @@ do
|
||||
|
||||
for i in $targ_emul $targ_extra_emuls $targ_extra_libpath; do
|
||||
case " $all_emuls " in
|
||||
*" e${i}.o "*) ;;
|
||||
*" e${i}.o "*)
|
||||
case "${i}" in
|
||||
*elf*)
|
||||
elf_list_options=TRUE
|
||||
. ${srcdir}/emulparams/${i}.sh
|
||||
if test x${GENERATE_SHLIB_SCRIPT} = xyes; then
|
||||
elf_shlib_list_options=TRUE
|
||||
fi
|
||||
if test x${PLT_UNWIND} = xyes; then
|
||||
elf_plt_unwind_list_options=TRUE
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
all_emuls="$all_emuls e${i}.o"
|
||||
eval result=\$tdir_$i
|
||||
@@ -17092,6 +17111,9 @@ done
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
TDIRS=tdirs
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user