summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>1999-08-23 09:07:45 +0000
committerNick Clifton <nickc@redhat.com>1999-08-23 09:07:45 +0000
commit3b108066c923292f1cb23589a897f663dd48884e (patch)
tree865855f39c32fd6634fb65c5d41a45735d44de28
parent9e525108fef105148a4e6a8ed320f285c3b640e9 (diff)
downloadbinutils-gdb-3b108066c923292f1cb23589a897f663dd48884e.tar.gz
Add ability for individual targets to have their own command line switches by
defining PARSE_AND_LIST_ARGS.
-rw-r--r--ld/ChangeLog5
-rw-r--r--ld/emultempl/elf32.em24
2 files changed, 25 insertions, 4 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 4e184e63c73..7eb00ef147e 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,8 @@
+1999-08-23 Nick Clifton <nickc@cygnus.com>
+
+ * emultempl/elf32.em: Add ability for individual targets to have
+ their own command line switches by defining PARSE_AND_LIST_ARGS.
+
1999-08-19 Andreas Schwab <schwab@suse.de>
* configure.host: Use ${CC} instead of gcc for finding compiler
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index 163e4c9a9b2..0c0ebb7152e 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -1119,6 +1119,22 @@ EOF
fi
+if test -n "$PARSE_AND_LIST_ARGS" ; then
+cat >>e${EMULATION_NAME}.c <<EOF
+static int gld_${EMULATION_NAME}_parse_args PARAMS ((int, char **));
+static void gld_${EMULATION_NAME}_list_options PARAMS ((FILE * file));
+
+ $PARSE_AND_LIST_ARGS
+EOF
+else
+
+cat >>e${EMULATION_NAME}.c <<EOF
+#define gld_${EMULATION_NAME}_parse_args NULL
+#define gld_${EMULATION_NAME}_list_options NULL
+EOF
+
+fi
+
cat >>e${EMULATION_NAME}.c <<EOF
struct ld_emulation_xfer_struct ld_${EMULATION_NAME}_emulation =
@@ -1135,14 +1151,14 @@ struct ld_emulation_xfer_struct ld_${EMULATION_NAME}_emulation =
gld${EMULATION_NAME}_get_script,
"${EMULATION_NAME}",
"${OUTPUT_FORMAT}",
- NULL,
- NULL,
+ NULL, /* finish */
+ NULL, /* create output section statements */
gld${EMULATION_NAME}_open_dynamic_archive,
gld${EMULATION_NAME}_place_orphan,
NULL, /* set_symbols */
- NULL, /* parse_args */
+ gld_${EMULATION_NAME}_parse_args,
NULL, /* unrecognized_file */
- NULL, /* list_options */
+ gld_${EMULATION_NAME}_list_options,
NULL /* recognized_file */
};
EOF