u-boot-brain/scripts
Joel Stanley e391b1e64b Makefile: Fix linking with modern binutils
Since Binutils 1a9ccd70f9a7[1] u-boot will not link targets that set
CONFIG_SYS_TEXT_BASE=0 with the following error:

  LD      u-boot
arm-linux-gnueabi-ld.bfd: u-boot: Not enough room for program headers, try
 linking with -N
arm-linux-gnueabi-ld.bfd: final link failed: Bad value

The issue can be reproduced with the bad binutils and the rock2_defconfig
target.

This issue was also encountered by the powerpc kernel[2], with the fix
being to pass --no-dynamic-linker for linkers newer than 2.26 when this
flag was introduced. The option tells ld that the PIE or shared lib does
not need loaded program headers.

Ubuntu Zesty's Binutils 2.27.51.20161202 hits this error.

[1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=1a9ccd70f9a7
[2] https://git.kernel.org/cgit/linux/kernel/git/powerpc/linux.git/commit/?h=next&id=ff45000fcb56b5b0f1a14a865d3541746d838a0a

Signed-off-by: Joel Stanley <joel@jms.id.au>
[AF: Apply to LDFLAGS_$(SPL_BIN) as well, suggested by Tom Rini]
Signed-off-by: Andreas Färber <afaerber@suse.de>
2017-04-10 08:06:48 -04:00
..
basic kbuild: fixdep: Check fstat(2) return value 2016-05-23 11:50:21 -04:00
coccinelle/net scripts: Add a cocci patch for miiphy_register 2016-08-15 15:26:23 -05:00
kconfig kconfig: re-sync with Linux 4.10 2017-02-12 14:31:25 -05:00
.gitignore cmd: add a new command "config" to show .config contents 2017-02-08 15:56:26 -05:00
bin2c.c scripts: import bin2c.c from Linux 4.10-rc6 2017-02-08 15:56:19 -05:00
binutils-version.sh scripts: fix binutils-version.sh for 'as' without a package. 2015-01-08 11:00:45 -05:00
build-whitelist.sh build-whitelist: do not add new options to whitelist when update 2016-10-07 14:26:30 +00:00
check-config.sh kbuild: beautify the log of config whitelist check 2017-02-08 15:56:30 -05:00
checkpatch.pl checkpatch: Port spelling to checkpatch 2017-02-08 15:56:31 -05:00
checkstack.pl scripts/checkstack.pl: update to get AArch64 port from Linux 2015-03-05 11:17:53 -05:00
cleanpatch Makefile: Move some scripts imported from Linux 2013-12-13 09:18:45 -05:00
config_whitelist.txt Remove various unused interrupt related code 2017-04-06 20:42:18 -04:00
coreboot.sed x86: Add a script to aid code conversion from coreboot 2016-03-17 10:27:23 +08:00
docproc.c cosmetic: kbuild: clean-up coding style (sync with Linux 3.16-rc1) 2014-06-20 11:56:26 -04:00
dtc-version.sh kbuild: Make scripts executable 2014-11-12 13:25:42 -05:00
fill_scrapyard.py scripts: add a utility to fill blank fields of doc/README.scrapyard 2015-01-14 10:58:49 -05:00
gcc-stack-usage.sh kbuild: Make scripts executable 2014-11-12 13:25:42 -05:00
gcc-version.sh kbuild: Make scripts executable 2014-11-12 13:25:42 -05:00
get_default_envs.sh scripts: Add script to extract default environment 2016-10-06 21:00:53 -04:00
get_maintainer.pl get_maintainer: fix perl 5.22/5.24 deprecated/incompatible "\C" use 2016-01-08 10:15:47 -05:00
Kbuild.include Makefile: Provide an option to select SPL or TPL 2017-04-05 16:36:58 -04:00
Kconfig cmd: add a new command "config" to show .config contents 2017-02-08 15:56:26 -05:00
kernel-doc kbuild: sync misc scripts with Linux 3.18-rc1 2014-11-07 16:27:07 -05:00
ld-version.sh kbuild: sync with Linux Kernel v3.15-rc1 2014-04-18 11:43:36 -04:00
Lindent scripts/Lindent: import from Linux 3.16 2014-08-21 12:01:29 -04:00
mailmapper tools, scripts: refactor error-out statements of Python scripts 2014-08-21 12:01:11 -04:00
Makefile cmd: add a new command "config" to show .config contents 2017-02-08 15:56:26 -05:00
Makefile.autoconf kbuild: add include linux/kconfig.h in config.h 2017-01-28 08:47:42 -05:00
Makefile.build scripts/Makefile* Add SPDX-License-Identifier tag 2016-01-19 08:31:17 -05:00
Makefile.clean scripts/Makefile* Add SPDX-License-Identifier tag 2016-01-19 08:31:17 -05:00
Makefile.extrawarn kbuild: turn of dtc unit address warnings by default 2017-03-09 11:31:39 -05:00
Makefile.host dm: Add a more efficient libfdt library 2016-07-14 20:40:24 -06:00
Makefile.lib Avoid non-portable sed construct 2017-01-14 16:47:15 -05:00
Makefile.spl Makefile: Fix linking with modern binutils 2017-04-10 08:06:48 -04:00
Makefile.uncmd_spl scripts/Makefile* Add SPDX-License-Identifier tag 2016-01-19 08:31:17 -05:00
mkmakefile kbuild: Make scripts executable 2014-11-12 13:25:42 -05:00
objdiff scripts: objdiff: sync with Linux 3.16 2014-08-21 12:01:11 -04:00
setlocalversion scripts: refetch scripts/setlocalversion from Linux 3.16 2014-08-28 17:18:48 -04:00
show-gnu-make scripts: add scripts/show-gnu-make to get GNU Make command name 2014-07-29 11:48:36 -04:00