aboutsummaryrefslogtreecommitdiff
path: root/ld/emultempl
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2000-07-20 21:18:23 +0000
committerH.J. Lu <hjl.tools@gmail.com>2000-07-20 21:18:23 +0000
commit6c1439be2121d3d9140b458194e3c0fd1618a9b0 (patch)
tree0ef752bc90408d6eec2412a614956c5ebbd5a0d7 /ld/emultempl
parentc25373b76aea96ee3be21f06938518f8faa7d5dc (diff)
downloadgdb-6c1439be2121d3d9140b458194e3c0fd1618a9b0.zip
gdb-6c1439be2121d3d9140b458194e3c0fd1618a9b0.tar.gz
gdb-6c1439be2121d3d9140b458194e3c0fd1618a9b0.tar.bz2
2000-07-20 H.J. Lu <hjl@gnu.org>
* ld.texinfo: Add documentation for --disable-new-dtags and --enable-new-dtags. * ldmain.c (main): Initialize link_info.new_dtags to false. * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add --disable-new-dtags and --enable-new-dtags. (gld_${EMULATION_NAME}_list_options): Likewise.
Diffstat (limited to 'ld/emultempl')
-rw-r--r--ld/emultempl/elf32.em19
1 files changed, 17 insertions, 2 deletions
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index 2510148..0662e22 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -1213,6 +1213,9 @@ cat >>e${EMULATION_NAME}.c <<EOF
#include "getopt.h"
+#define OPTION_DISABLE_NEW_DTAGS (400)
+#define OPTION_ENABLE_NEW_DTAGS (OPTION_DISABLE_NEW_DTAGS + 1)
+
static struct option longopts[] =
{
EOF
@@ -1220,7 +1223,8 @@ fi
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
cat >>e${EMULATION_NAME}.c <<EOF
- {NULL, required_argument, NULL, 'z'},
+ {"disable-new-dtags", no_argument, NULL, OPTION_DISABLE_NEW_DTAGS},
+ {"enable-new-dtags", no_argument, NULL, OPTION_ENABLE_NEW_DTAGS},
EOF
fi
@@ -1260,11 +1264,20 @@ gld_${EMULATION_NAME}_parse_args (argc, argv)
xexit (1);
optind = prevoptind;
return 0;
+
EOF
fi
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
cat >>e${EMULATION_NAME}.c <<EOF
+ case OPTION_DISABLE_NEW_DTAGS:
+ link_info.new_dtags = false;
+ break;
+
+ case OPTION_ENABLE_NEW_DTAGS:
+ link_info.new_dtags = true;
+ break;
+
case 'z':
if (strcmp (optarg, "initfirst") == 0)
link_info.flags_1 |= (bfd_vma) DF_1_INITFIRST;
@@ -1291,7 +1304,7 @@ cat >>e${EMULATION_NAME}.c <<EOF
link_info.flags_1 |= (bfd_vma) DF_1_ORIGIN;
}
/* What about the other Solaris -z options? FIXME. */
- break;
+ break;
EOF
fi
@@ -1317,6 +1330,8 @@ fi
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
cat >>e${EMULATION_NAME}.c <<EOF
+ fprintf (file, _(" --disable-new-dtags\tDisable new dynamic tags\n"));
+ fprintf (file, _(" --enable-new-dtags\tEnable new dynamic tags\n"));
fprintf (file, _(" -z initfirst\t\tMark DSO to be initialized first at rutime\n"));
fprintf (file, _(" -z interpose\t\tMark object to interpose all DSOs but execuable\n"));
fprintf (file, _(" -z loadfltr\t\tMark object requiring immediate process\n"));