This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Allow ld target customiser script to force on disk scripts


On Fri, Jan 17, 2014 at 08:58:50AM +1030, Alan Modra wrote:
> On Thu, Jan 16, 2014 at 12:19:16PM -0700, Tom Tromey wrote:
> > ld/genscripts.sh now prints the environment:
> > 
> 
> In emulparams/nds32elf.sh we have
> 
> 	# Instruct genscripts.sh not to compile scripts in by COMPILE_IN
> 	# in order to use external linker scripts files.
> 	EMULATION_LIBPATH=
> 
> That runs foul of the following in genscripts.sh.
> 
> 	# We need it for testsuite.
> 	set $EMULATION_LIBPATH
> 
> So, breakage from a new port.

Mucking with EMULATION_LIBPATH has unwanted side effects.  Allow nds32
emulparams scripts to disable compiled-in scripts naturally, by
setting COMPILE_IN=no.

	* genscripts.sh (COMPILE_IN): Don't set if already set.
	* emulparams/nds32elf.sh: Don't clear EMULATION_LIBPATH, set
	COMPILE_IN=no.
	* emulparams/nds32elf16m.sh: Likewise.
	* emulparams/nds32elf_linux.sh: Likewise.
	* emultempl/aix.em: Test COMPILE_IN value is "yes".
	* emultempl/armcoff.em: Likewise.
	* emultempl/elf32.em: Likewise.
	* emultempl/generic.em: Likewise.
	* emultempl/gld960.em: Likewise.
	* emultempl/gld960c.em: Likewise.
	* emultempl/linux.em: Likewise.
	* emultempl/lnk960.em: Likewise.
	* emultempl/m68kcoff.em: Likewise.
	* emultempl/sunos.em: Likewise.
	* emultempl/ticoff.em: Likewise.

diff --git a/ld/genscripts.sh b/ld/genscripts.sh
index eeb6d73..d240f99 100755
--- a/ld/genscripts.sh
+++ b/ld/genscripts.sh
@@ -413,8 +413,8 @@ if test -n "$GENERATE_AUTO_IMPORT_SCRIPT"; then
   ) | sed -e '/^ *$/d;s/[ 	]*$//' > ldscripts/${EMULATION_NAME}.xa
 fi
 
-case " $EMULATION_LIBPATH " in
-    *" ${EMULATION_NAME} "*) COMPILE_IN=true;;
+case "$COMPILE_IN: $EMULATION_LIBPATH " in
+    :*" ${EMULATION_NAME} "*) COMPILE_IN=yes;;
 esac
 
 # PR ld/5652:
diff --git a/ld/emulparams/nds32elf.sh b/ld/emulparams/nds32elf.sh
index c12048d..3a27351 100644
--- a/ld/emulparams/nds32elf.sh
+++ b/ld/emulparams/nds32elf.sh
@@ -14,6 +14,5 @@ MAXPAGESIZE=0x20
 EMBEDDED=yes
 COMMONPAGESIZE=0x20
 
-# Instruct genscripts.sh not to compile scripts in by COMPILE_IN
-# in order to use external linker scripts files.
-EMULATION_LIBPATH=
+# Use external linker script files.
+COMPILE_IN=no
diff --git a/ld/emulparams/nds32elf16m.sh b/ld/emulparams/nds32elf16m.sh
index 7d3b063..8993a18 100644
--- a/ld/emulparams/nds32elf16m.sh
+++ b/ld/emulparams/nds32elf16m.sh
@@ -14,6 +14,5 @@ MAXPAGESIZE=0x20
 EMBEDDED=yes
 COMMONPAGESIZE=0x20
 
-# Instruct genscripts.sh not to compile scripts in by COMPILE_IN
-# in order to use external linker scripts files.
-EMULATION_LIBPATH=
+# Use external linker script files.
+COMPILE_IN=no
diff --git a/ld/emulparams/nds32elf_linux.sh b/ld/emulparams/nds32elf_linux.sh
index 6d89f79..39d3e89 100644
--- a/ld/emulparams/nds32elf_linux.sh
+++ b/ld/emulparams/nds32elf_linux.sh
@@ -31,6 +31,5 @@ fi
 GENERATE_SHLIB_SCRIPT=yes
 GENERATE_PIE_SCRIPT=yes
 
-# Instruct genscripts.sh not to compile scripts in by COMPILE_IN
-# in order to use external linker scripts files.
-EMULATION_LIBPATH=
+# Use external linker script files.
+COMPILE_IN=no
diff --git a/ld/emultempl/aix.em b/ld/emultempl/aix.em
index aa72ce6..084bb66 100644
--- a/ld/emultempl/aix.em
+++ b/ld/emultempl/aix.em
@@ -1399,7 +1399,7 @@ static char *
 gld${EMULATION_NAME}_get_script (int *isfile)
 EOF
 
-if test -n "$COMPILE_IN"
+if test x"$COMPILE_IN" = xyes
 then
 # Scripts compiled in.
 
diff --git a/ld/emultempl/armcoff.em b/ld/emultempl/armcoff.em
index 20bff14..7c90378 100644
--- a/ld/emultempl/armcoff.em
+++ b/ld/emultempl/armcoff.em
@@ -205,7 +205,7 @@ static char *
 gld${EMULATION_NAME}_get_script (int *isfile)
 EOF
 
-if test -n "$COMPILE_IN"
+if test x"$COMPILE_IN" = xyes
 then
 # Scripts compiled in.
 
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index 569c7f7..a4f04f1 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -2017,7 +2017,7 @@ static char *
 gld${EMULATION_NAME}_get_script (int *isfile)
 EOF
 
-if test -n "$COMPILE_IN"
+if test x"$COMPILE_IN" = xyes
 then
 # Scripts compiled in.
 
diff --git a/ld/emultempl/generic.em b/ld/emultempl/generic.em
index dce2bff..53754f0 100644
--- a/ld/emultempl/generic.em
+++ b/ld/emultempl/generic.em
@@ -81,7 +81,7 @@ static char *
 gld${EMULATION_NAME}_get_script (int *isfile)
 EOF
 
-if test -n "$COMPILE_IN"
+if test x"$COMPILE_IN" = xyes
 then
 # Scripts compiled in.
 
diff --git a/ld/emultempl/gld960.em b/ld/emultempl/gld960.em
index 4ba3eec..7e8552f 100644
--- a/ld/emultempl/gld960.em
+++ b/ld/emultempl/gld960.em
@@ -74,7 +74,7 @@ static char *
 gld960_get_script (int *isfile)
 EOF
 
-if test -n "$COMPILE_IN"
+if test x"$COMPILE_IN" = xyes
 then
 # Scripts compiled in.
 
diff --git a/ld/emultempl/gld960c.em b/ld/emultempl/gld960c.em
index 1999ea8..39fe1f2 100644
--- a/ld/emultempl/gld960c.em
+++ b/ld/emultempl/gld960c.em
@@ -87,7 +87,7 @@ static char *
 gld960_get_script (int *isfile)
 EOF
 
-if test -n "$COMPILE_IN"
+if test x"$COMPILE_IN" = xyes
 then
 # Scripts compiled in.
 
diff --git a/ld/emultempl/linux.em b/ld/emultempl/linux.em
index 61c7df4..5cf5bfa 100644
--- a/ld/emultempl/linux.em
+++ b/ld/emultempl/linux.em
@@ -131,7 +131,7 @@ static char *
 gld${EMULATION_NAME}_get_script (int *isfile)
 EOF
 
-if test -n "$COMPILE_IN"
+if test x"$COMPILE_IN" = xyes
 then
 # Scripts compiled in.
 
diff --git a/ld/emultempl/lnk960.em b/ld/emultempl/lnk960.em
index e556d43..1951c36 100644
--- a/ld/emultempl/lnk960.em
+++ b/ld/emultempl/lnk960.em
@@ -268,7 +268,7 @@ static char *
 lnk960_get_script (int *isfile)
 EOF
 
-if test -n "$COMPILE_IN"
+if test x"$COMPILE_IN" = xyes
 then
 # Scripts compiled in.
 
diff --git a/ld/emultempl/m68kcoff.em b/ld/emultempl/m68kcoff.em
index f68866c..f34490d 100644
--- a/ld/emultempl/m68kcoff.em
+++ b/ld/emultempl/m68kcoff.em
@@ -165,7 +165,7 @@ static char *
 gld${EMULATION_NAME}_get_script (int *isfile)
 EOF
 
-if test -n "$COMPILE_IN"
+if test x"$COMPILE_IN" = xyes
 then
 # Scripts compiled in.
 
diff --git a/ld/emultempl/sunos.em b/ld/emultempl/sunos.em
index af11027..14bf5af 100644
--- a/ld/emultempl/sunos.em
+++ b/ld/emultempl/sunos.em
@@ -960,7 +960,7 @@ static char *
 gld${EMULATION_NAME}_get_script (int *isfile)
 EOF
 
-if test -n "$COMPILE_IN"
+if test x"$COMPILE_IN" = xyes
 then
 # Scripts compiled in.
 
diff --git a/ld/emultempl/ticoff.em b/ld/emultempl/ticoff.em
index dff1d70..3b952a4 100644
--- a/ld/emultempl/ticoff.em
+++ b/ld/emultempl/ticoff.em
@@ -106,7 +106,7 @@ gld_${EMULATION_NAME}_before_parse(void)
 static char *
 gld_${EMULATION_NAME}_get_script (int *isfile)
 EOF
-if test -n "$COMPILE_IN"
+if test x"$COMPILE_IN" = xyes
 then
 # Scripts compiled in.
 

-- 
Alan Modra
Australia Development Lab, IBM


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]