fix the previous - the emul names don't tend to include "32". tested on shark, though fixes to make compiling for oabi work remain uncommited. now an aarch64 build almost completes!diff -r1.8 -r1.9 src/external/gpl3/binutils/dist/ld/emulparams/armelf_nbsd.sh
(mrg)
--- src/external/gpl3/binutils/dist/ld/emulparams/armelf_nbsd.sh 2016/10/11 02:49:38 1.8
+++ src/external/gpl3/binutils/dist/ld/emulparams/armelf_nbsd.sh 2016/10/11 07:05:29 1.9
@@ -1,19 +1,19 @@ | @@ -1,19 +1,19 @@ | |||
1 | . ${srcdir}/emulparams/armelf.sh | 1 | . ${srcdir}/emulparams/armelf.sh | |
2 | MAXPAGESIZE="CONSTANT (MAXPAGESIZE)" | 2 | MAXPAGESIZE="CONSTANT (MAXPAGESIZE)" | |
3 | TEXT_START_ADDR=0x00010000 | 3 | TEXT_START_ADDR=0x00010000 | |
4 | TARGET2_TYPE=got-rel | 4 | TARGET2_TYPE=got-rel | |
5 | GENERATE_PIE_SCRIPT=yes | 5 | GENERATE_PIE_SCRIPT=yes | |
6 | 6 | |||
7 | unset DATA_START_SYMBOLS | 7 | unset DATA_START_SYMBOLS | |
8 | unset STACK_ADDR | 8 | unset STACK_ADDR | |
9 | unset EMBEDDED | 9 | unset EMBEDDED | |
10 | 10 | |||
11 | case "$target" in | 11 | case "$target" in | |
12 | aarch64*-*-netbsd* | arm*-*-netbsdelf*-*eabi*) | 12 | aarch64*-*-netbsd* | arm*-*-netbsdelf*-*eabi*) | |
13 | case "$EMULATION_NAME" in | 13 | case "$EMULATION_NAME" in | |
14 | *32*) | 14 | armelf*_nbsd) | |
15 | LIB_PATH='=/usr/lib/oabi' | 15 | LIB_PATH='=/usr/lib/oabi' | |
16 | ;; | 16 | ;; | |
17 | esac | 17 | esac | |
18 | ;; | 18 | ;; | |
19 | esac | 19 | esac |
--- src/external/gpl3/binutils/dist/ld/emulparams/armelf_nbsd_eabi.sh 2016/10/11 02:49:38 1.8
+++ src/external/gpl3/binutils/dist/ld/emulparams/armelf_nbsd_eabi.sh 2016/10/11 07:05:29 1.9
@@ -1,24 +1,27 @@ | @@ -1,24 +1,27 @@ | |||
1 | . ${srcdir}/emulparams/armelf_nbsd.sh | 1 | . ${srcdir}/emulparams/armelf_nbsd.sh | |
2 | 2 | |||
3 | # Use the ARM ABI-compliant exception-handling sections. | 3 | # Use the ARM ABI-compliant exception-handling sections. | |
4 | OTHER_READONLY_SECTIONS=" | 4 | OTHER_READONLY_SECTIONS=" | |
5 | .ARM.extab ${RELOCATING-0} : { *(.ARM.extab${RELOCATING+* .gnu.linkonce.armextab.*}) } | 5 | .ARM.extab ${RELOCATING-0} : { *(.ARM.extab${RELOCATING+* .gnu.linkonce.armextab.*}) } | |
6 | ${RELOCATING+ PROVIDE_HIDDEN (__exidx_start = .); } | 6 | ${RELOCATING+ PROVIDE_HIDDEN (__exidx_start = .); } | |
7 | .ARM.exidx ${RELOCATING-0} : { *(.ARM.exidx${RELOCATING+* .gnu.linkonce.armexidx.*}) } | 7 | .ARM.exidx ${RELOCATING-0} : { *(.ARM.exidx${RELOCATING+* .gnu.linkonce.armexidx.*}) } | |
8 | ${RELOCATING+ PROVIDE_HIDDEN (__exidx_end = .); }" | 8 | ${RELOCATING+ PROVIDE_HIDDEN (__exidx_end = .); }" | |
9 | 9 | |||
10 | case "$target" in | 10 | case "$target" in | |
11 | arm*-*-netbsdelf*-*eabihf*) | 11 | arm*-*-netbsdelf*-*eabihf*) | |
12 | LIB_PATH='=/usr/lib/eabi' | 12 | case "$EMULATION_NAME" in | |
13 | *armelf*eabi) | |||
14 | LIB_PATH='=/usr/lib/eabi' | |||
15 | ;; | |||
16 | esac | |||
13 | ;; | 17 | ;; | |
14 | arm*-*-netbsdelf*-*eabi*) | 18 | arm*-*-netbsdelf*-*eabi*) | |
15 | LIB_PATH='=/usr/lib' | |||
16 | ;; | 19 | ;; | |
17 | aarch64*-*-netbsd* | arm*-*-netbsdelf*) | 20 | aarch64*-*-netbsd* | arm*-*-netbsdelf*) | |
18 | case "$EMULATION_NAME" in | 21 | case "$EMULATION_NAME" in | |
19 | *32*) | 22 | *armelf*eabi) | |
20 | LIB_PATH='=/usr/lib/eabi' | 23 | LIB_PATH='=/usr/lib/eabi' | |
21 | ;; | 24 | ;; | |
22 | esac | 25 | esac | |
23 | ;; | 26 | ;; | |
24 | esac | 27 | esac |
--- src/external/gpl3/binutils/dist/ld/emulparams/armelf_nbsd_eabihf.sh 2016/10/11 02:49:38 1.5
+++ src/external/gpl3/binutils/dist/ld/emulparams/armelf_nbsd_eabihf.sh 2016/10/11 07:05:29 1.6
@@ -1,21 +1,20 @@ | @@ -1,21 +1,20 @@ | |||
1 | . ${srcdir}/emulparams/armelf_nbsd.sh | 1 | . ${srcdir}/emulparams/armelf_nbsd.sh | |
2 | 2 | |||
3 | # Use the ARM ABI-compliant exception-handling sections. | 3 | # Use the ARM ABI-compliant exception-handling sections. | |
4 | OTHER_READONLY_SECTIONS=" | 4 | OTHER_READONLY_SECTIONS=" | |
5 | .ARM.extab ${RELOCATING-0} : { *(.ARM.extab${RELOCATING+* .gnu.linkonce.armextab.*}) } | 5 | .ARM.extab ${RELOCATING-0} : { *(.ARM.extab${RELOCATING+* .gnu.linkonce.armextab.*}) } | |
6 | ${RELOCATING+ PROVIDE_HIDDEN (__exidx_start = .); } | 6 | ${RELOCATING+ PROVIDE_HIDDEN (__exidx_start = .); } | |
7 | .ARM.exidx ${RELOCATING-0} : { *(.ARM.exidx${RELOCATING+* .gnu.linkonce.armexidx.*}) } | 7 | .ARM.exidx ${RELOCATING-0} : { *(.ARM.exidx${RELOCATING+* .gnu.linkonce.armexidx.*}) } | |
8 | ${RELOCATING+ PROVIDE_HIDDEN (__exidx_end = .); }" | 8 | ${RELOCATING+ PROVIDE_HIDDEN (__exidx_end = .); }" | |
9 | 9 | |||
10 | case "$target" in | 10 | case "$target" in | |
11 | arm*-*-netbsdelf*-*eabihf*) | 11 | arm*-*-netbsdelf*-*eabihf*) | |
12 | LIB_PATH='=/usr/lib' | |||
13 | ;; | 12 | ;; | |
14 | aarch64*-*-netbsd* | arm*-*-netbsdelf*) | 13 | aarch64*-*-netbsd* | arm*-*-netbsdelf*) | |
15 | case "$EMULATION_NAME" in | 14 | case "$EMULATION_NAME" in | |
16 | *32*) | 15 | *armelf*eabihf) | |
17 | LIB_PATH='=/usr/lib/eabihf' | 16 | LIB_PATH='=/usr/lib/eabihf' | |
18 | ;; | 17 | ;; | |
19 | esac | 18 | esac | |
20 | ;; | 19 | ;; | |
21 | esac | 20 | esac |