aboutsummaryrefslogtreecommitdiff
path: root/ld/emulparams
diff options
context:
space:
mode:
Diffstat (limited to 'ld/emulparams')
-rw-r--r--ld/emulparams/arcelf.sh2
-rw-r--r--ld/emulparams/arclinux.sh17
2 files changed, 12 insertions, 7 deletions
diff --git a/ld/emulparams/arcelf.sh b/ld/emulparams/arcelf.sh
index a0b9c8f..7777f9b 100644
--- a/ld/emulparams/arcelf.sh
+++ b/ld/emulparams/arcelf.sh
@@ -18,3 +18,5 @@ ENTRY=__start
SDATA_START_SYMBOLS='__SDATA_BEGIN__ = .;'
OTHER_SECTIONS="/DISCARD/ : { *(.__arc_profile_*) }"
EMBEDDED=yes
+
+GENERATE_SHLIB_SCRIPT=yes
diff --git a/ld/emulparams/arclinux.sh b/ld/emulparams/arclinux.sh
index 9d17bfe..63e56ec 100644
--- a/ld/emulparams/arclinux.sh
+++ b/ld/emulparams/arclinux.sh
@@ -1,4 +1,5 @@
. ${srcdir}/emulparams/arc-endianness.sh
+ARCH=arc
SCRIPT_NAME=arclinux
if [ "x${ARC_ENDIAN}" = "xbig" ]; then
OUTPUT_FORMAT="elf32-bigarc"
@@ -8,15 +9,17 @@ fi
LITTLE_OUTPUT_FORMAT="elf32-littlearc"
BIG_OUTPUT_FORMAT="elf32-bigarc"
TEXT_START_ADDR=0x10000
-MAXPAGESIZE=0x2000
-COMMONPAGESIZE=0x2000
-NONPAGED_TEXT_START_ADDR=0x10000
-ARCH=arc
-MACHINE=
+MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
+COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
ENTRY=__start
-TEMPLATE_NAME=arclinux
TEMPLATE_NAME=elf32
EXTRA_EM_FILE=arclinux
GENERATE_SHLIB_SCRIPT=yes
-SDATA_START_SYMBOLS='__SDATA_BEGIN__ = .;'
+GENERATE_PIE_SCRIPT=yes
+
OTHER_SECTIONS="/DISCARD/ : { *(.__arc_profile_*) }"
+
+# To support RELRO security feature.
+NO_SMALL_DATA=yes
+SEPARATE_GOTPLT=4
+GENERATE_COMBRELOC_SCRIPT=yes