From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23441 invoked by alias); 2 Jun 2014 06:30:41 -0000 Mailing-List: contact binutils-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sourceware.org Received: (qmail 23428 invoked by uid 89); 2 Jun 2014 06:30:40 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.2 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-pa0-f49.google.com Received: from mail-pa0-f49.google.com (HELO mail-pa0-f49.google.com) (209.85.220.49) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Mon, 02 Jun 2014 06:30:36 +0000 Received: by mail-pa0-f49.google.com with SMTP id fa1so2805484pad.36 for ; Sun, 01 Jun 2014 23:30:34 -0700 (PDT) X-Received: by 10.68.215.68 with SMTP id og4mr37949813pbc.112.1401690634707; Sun, 01 Jun 2014 23:30:34 -0700 (PDT) Received: from bubble.grove.modra.org ([101.166.26.37]) by mx.google.com with ESMTPSA id io8sm18527209pbc.96.2014.06.01.23.30.32 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sun, 01 Jun 2014 23:30:34 -0700 (PDT) Received: by bubble.grove.modra.org (Postfix, from userid 1000) id D66ABEA0098; Mon, 2 Jun 2014 16:00:29 +0930 (CST) Date: Mon, 02 Jun 2014 06:30:00 -0000 From: Alan Modra To: Hans-Peter Nilsson , binutils@sourceware.org Subject: Re: [RFA:] fix PR ld/16963, missing SEARCH_DIR for non-sysroot cross-builds Message-ID: <20140602063029.GK6679@bubble.grove.modra.org> Mail-Followup-To: Hans-Peter Nilsson , binutils@sourceware.org References: <201405201619.s4KGJpRg002591@ignucius.se.axis.com> <201405281315.s4SDFpU2031819@ignucius.se.axis.com> <20140528141505.GJ6679@bubble.grove.modra.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20140528141505.GJ6679@bubble.grove.modra.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-IsSubscribed: yes X-SW-Source: 2014-06/txt/msg00004.txt.bz2 bfin, msp, and score all used an extra parameter to genscripts.sh to select a "customizer_script" different from the standard one named from the emulation. Which is why your 2014-05-28 patch caused http://lists.gnu.org/archive/html/bug-binutils/2014-06/msg00001.html This patch renames the scripts to avoid the need of a customizer_script param, tidying them in the process. * emulparams/elf32bfin.sh: Rename from bfin.sh. * emulparams/elf32bfinfd.sh: Update to suit. * emulparams/msp430.sh: Rename from msp430all.sh. Remove MSP430_NAME and msp430X vars. * emulparams/msp430X.sh: New. * emulparams/score3_elf.sh: Rename from scoreelf.sh. Remove SCORE_NAME and score7_elf ARCH setting. * emulparams/score7_elf.sh: New. * Makefile.am (eelf32bfin.c, eelf32bfinfd.c): Update dependencies. (emsp430.c, emsp430X.c, escore3_elf.c, escore7_elf.c): Likewise. * Makefile.in: Regenerate. * genscripts.sh: Delete customizer_script param. diff --git a/ld/Makefile.am b/ld/Makefile.am index d66801b..24ba3e1 100644 --- a/ld/Makefile.am +++ b/ld/Makefile.am @@ -942,12 +942,12 @@ eelf32b4300.c: $(srcdir)/emulparams/elf32b4300.sh \ $(srcdir)/emulparams/elf32bmip.sh $(ELF_DEPS) \ $(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} -eelf32bfin.c: $(srcdir)/emulparams/bfin.sh \ +eelf32bfin.c: $(srcdir)/emulparams/elf32bfin.sh \ $(ELF_DEPS) $(srcdir)/emultempl/bfin.em \ $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} eelf32bfinfd.c: $(srcdir)/emulparams/elf32bfinfd.sh \ - $(srcdir)/emulparams/bfin.sh \ + $(srcdir)/emulparams/elf32bfin.sh \ $(ELF_DEPS) $(srcdir)/emultempl/bfin.em \ $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} @@ -1480,13 +1480,11 @@ emn10300.c: $(srcdir)/emulparams/mn10300.sh \ $(srcdir)/emulparams/mn10200.sh \ $(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} -emsp430.c: $(srcdir)/emulparams/msp430all.sh \ - $(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \ - ${GEN_DEPENDS} +emsp430.c: $(srcdir)/emulparams/msp430.sh \ + $(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc ${GEN_DEPENDS} -emsp430X.c: $(srcdir)/emulparams/msp430all.sh \ - $(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \ - ${GEN_DEPENDS} +emsp430X.c: $(srcdir)/emulparams/msp430.sh $(srcdir)/emulparams/msp430X.sh \ + $(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc ${GEN_DEPENDS} ends32elf.c: $(srcdir)/emulparams/nds32elf.sh \ $(ELF_DEPS) $(srcdir)/emultempl/nds32elf.em \ @@ -1586,11 +1584,12 @@ eppcpe.c: $(srcdir)/emulparams/ppcpe.sh \ eriscix.c: $(srcdir)/emulparams/riscix.sh \ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS} -escore3_elf.c: $(srcdir)/emulparams/scoreelf.sh \ +escore3_elf.c: $(srcdir)/emulparams/score3_elf.sh \ $(ELF_DEPS) $(srcdir)/emultempl/scoreelf.em \ $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} -escore7_elf.c: $(srcdir)/emulparams/scoreelf.sh \ +escore7_elf.c: $(srcdir)/emulparams/score3_elf.sh \ + $(srcdir)/emulparams/score7_elf.sh \ $(ELF_DEPS) $(srcdir)/emultempl/scoreelf.em \ $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} diff --git a/ld/emulparams/bfin.sh b/ld/emulparams/bfin.sh deleted file mode 100644 index 6c0bb40..0000000 --- a/ld/emulparams/bfin.sh +++ /dev/null @@ -1,12 +0,0 @@ -SCRIPT_NAME=elf -OUTPUT_FORMAT="elf32-bfin" -TEXT_START_ADDR=0x0 -MAXPAGESIZE="CONSTANT (MAXPAGESIZE)" -TARGET_PAGE_SIZE=0x1000 -ARCH=bfin -MACHINE= -TEMPLATE_NAME=elf32 -GENERATE_SHLIB_SCRIPT=yes -EMBEDDED=yes -USER_LABEL_PREFIX=_ -EXTRA_EM_FILE=bfin diff --git a/ld/emulparams/elf32bfin.sh b/ld/emulparams/elf32bfin.sh new file mode 100644 index 0000000..6c0bb40 --- /dev/null +++ b/ld/emulparams/elf32bfin.sh @@ -0,0 +1,12 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-bfin" +TEXT_START_ADDR=0x0 +MAXPAGESIZE="CONSTANT (MAXPAGESIZE)" +TARGET_PAGE_SIZE=0x1000 +ARCH=bfin +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +EMBEDDED=yes +USER_LABEL_PREFIX=_ +EXTRA_EM_FILE=bfin diff --git a/ld/emulparams/elf32bfinfd.sh b/ld/emulparams/elf32bfinfd.sh index 26f8f47..4c96bc9 100644 --- a/ld/emulparams/elf32bfinfd.sh +++ b/ld/emulparams/elf32bfinfd.sh @@ -1,4 +1,4 @@ -. ${srcdir}/emulparams/bfin.sh +. ${srcdir}/emulparams/elf32bfin.sh unset STACK_ADDR OUTPUT_FORMAT="elf32-bfinfdpic" MAXPAGESIZE="CONSTANT (MAXPAGESIZE)" diff --git a/ld/emulparams/msp430.sh b/ld/emulparams/msp430.sh new file mode 100644 index 0000000..b459698 --- /dev/null +++ b/ld/emulparams/msp430.sh @@ -0,0 +1,18 @@ +#!/bin/sh + +# This called by genscripts_extra.sh + +SCRIPT_NAME=elf32msp430 +TEMPLATE_NAME=generic +EXTRA_EM_FILE=genelf +OUTPUT_FORMAT="elf32-msp430" +MACHINE= +MAXPAGESIZE=1 +EMBEDDED=yes + +ARCH=msp:14 +ROM_START=0x8000 +ROM_SIZE=0x7fe0 +RAM_START=0x0200 +RAM_SIZE=1K +STACK=0x600 diff --git a/ld/emulparams/msp430X.sh b/ld/emulparams/msp430X.sh new file mode 100644 index 0000000..fea669b --- /dev/null +++ b/ld/emulparams/msp430X.sh @@ -0,0 +1,8 @@ +. ${srcdir}/emulparams/msp430.sh + +ARCH=MSP430x43 +ROM_START=0x02000 +ROM_SIZE=0x0dfe0 +RAM_START=0x10000 +RAM_SIZE=0x30000 +STACK=0x600 diff --git a/ld/emulparams/msp430all.sh b/ld/emulparams/msp430all.sh deleted file mode 100644 index 1f1eef8..0000000 --- a/ld/emulparams/msp430all.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/sh - -# This called by genscripts_extra.sh - -MSP430_NAME=${EMULATION_NAME} - -SCRIPT_NAME=elf32msp430 -TEMPLATE_NAME=generic -EXTRA_EM_FILE=genelf -OUTPUT_FORMAT="elf32-msp430" -MACHINE= -MAXPAGESIZE=1 -EMBEDDED=yes - -if [ "${MSP430_NAME}" = "msp430" ] ; then -ARCH=msp:14 -ROM_START=0x8000 -ROM_SIZE=0x7fe0 -RAM_START=0x0200 -RAM_SIZE=1K -STACK=0x600 -fi - -if [ "${MSP430_NAME}" = "msp430X" ] ; then -ARCH=MSP430x43 -ROM_START=0x02000 -ROM_SIZE=0x0dfe0 -RAM_START=0x10000 -RAM_SIZE=0x30000 -STACK=0x600 -fi diff --git a/ld/emulparams/score3_elf.sh b/ld/emulparams/score3_elf.sh new file mode 100644 index 0000000..4636cd3 --- /dev/null +++ b/ld/emulparams/score3_elf.sh @@ -0,0 +1,33 @@ +MACHINE= +SCRIPT_NAME=elf +TEMPLATE_NAME=elf32 +EXTRA_EM_FILE=scoreelf +OUTPUT_FORMAT="elf32-bigscore" +BIG_OUTPUT_FORMAT="elf32-bigscore" +LITTLE_OUTPUT_FORMAT="elf32-littlescore" +NO_RELA_RELOCS=yes +GROUP="-lm -lc -lglsim -lgcc -lstdc++" + +TEXT_START_ADDR=0x00000000 +MAXPAGESIZE=256 +NONPAGED_TEXT_START_ADDR=0x0400000 +SHLIB_TEXT_START_ADDR=0x5ffe0000 +OTHER_GOT_SYMBOLS=' + _gp = ALIGN(16) + 0x3ff0; +' + +OTHER_BSS_START_SYMBOLS='_bss_start__ = . + ALIGN(4);' +OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;' +DATA_START_SYMBOLS='_fdata = . ;' +SDATA_START_SYMBOLS='_sdata_begin = . ;' +OTHER_BSS_SYMBOLS=' + _bss_start = ALIGN(4) ; +' +# This sets the stack to the top of the simulator memory (2^19 bytes). +STACK_ADDR=0x8000000 + +ARCH=score3 +MACHINE= +ENTRY=_start +EMBEDDED=yes +GENERATE_SHLIB_SCRIPT=yes diff --git a/ld/emulparams/score7_elf.sh b/ld/emulparams/score7_elf.sh new file mode 100644 index 0000000..9b7ce9b --- /dev/null +++ b/ld/emulparams/score7_elf.sh @@ -0,0 +1,2 @@ +. ${srcdir}/emulparams/score3_elf.sh +ARCH=score7 diff --git a/ld/emulparams/scoreelf.sh b/ld/emulparams/scoreelf.sh deleted file mode 100644 index 3a7ed31..0000000 --- a/ld/emulparams/scoreelf.sh +++ /dev/null @@ -1,41 +0,0 @@ -MACHINE= -SCRIPT_NAME=elf -TEMPLATE_NAME=elf32 -EXTRA_EM_FILE=scoreelf -OUTPUT_FORMAT="elf32-bigscore" -BIG_OUTPUT_FORMAT="elf32-bigscore" -LITTLE_OUTPUT_FORMAT="elf32-littlescore" -NO_RELA_RELOCS=yes -GROUP="-lm -lc -lglsim -lgcc -lstdc++" - -TEXT_START_ADDR=0x00000000 -MAXPAGESIZE=256 -NONPAGED_TEXT_START_ADDR=0x0400000 -SHLIB_TEXT_START_ADDR=0x5ffe0000 -OTHER_GOT_SYMBOLS=' - _gp = ALIGN(16) + 0x3ff0; -' - -OTHER_BSS_START_SYMBOLS='_bss_start__ = . + ALIGN(4);' -OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;' -DATA_START_SYMBOLS='_fdata = . ;' -SDATA_START_SYMBOLS='_sdata_begin = . ;' -OTHER_BSS_SYMBOLS=' - _bss_start = ALIGN(4) ; -' -# This sets the stack to the top of the simulator memory (2^19 bytes). -STACK_ADDR=0x8000000 - -SCORE_NAME=${EMULATION_NAME} -if [ "${SCORE_NAME}" = "score3_elf" ] ; then -ARCH=score3 -fi - -if [ "${SCORE_NAME}" = "score7_elf" ] ; then -ARCH=score7 -fi - -MACHINE= -ENTRY=_start -EMBEDDED=yes -GENERATE_SHLIB_SCRIPT=yes diff --git a/ld/genscripts.sh b/ld/genscripts.sh index 4436070..499607a 100755 --- a/ld/genscripts.sh +++ b/ld/genscripts.sh @@ -33,8 +33,7 @@ # enable_initfini_array \ # this_emulation \ # optional: -# tool_dir \ -# customizer_script +# tool_dir # # Sample usage: # @@ -93,14 +92,9 @@ use_sysroot=$1 ENABLE_INITFINI_ARRAY=$2 EMULATION_NAME=$3 TOOL_LIB=$4 -CUSTOMIZER_SCRIPT=$5 - -if [ "x${CUSTOMIZER_SCRIPT}" = "x" ] ; then - CUSTOMIZER_SCRIPT=${EMULATION_NAME} -fi -CUSTOMIZER_SCRIPT="${srcdir}/emulparams/${CUSTOMIZER_SCRIPT}.sh" # Include the emulation-specific parameters: +CUSTOMIZER_SCRIPT="${srcdir}/emulparams/${EMULATION_NAME}.sh" . ${CUSTOMIZER_SCRIPT} if test -d ldscripts; then -- Alan Modra Australia Development Lab, IBM