summaryrefslogtreecommitdiff
path: root/scripts/build/binutils
AgeCommit message (Collapse)AuthorFilesLines
2016-11-21Partially revert 6f8e89cb5ca061e899bf3feaaf3fecf30d366c3e.Alexey Neyman1-12/+12
The referenced commit replaced 'make' with '${make}' everywhere. This is wrong for at least the utilities that we may build as companion tools (make, libtool): this will always invoke the version detected by configure by supplying the absolute path. In other words, the wrappers in .build/tools/bin are not fallbacks - they are either temporary (in case a respective companion tool is built) or permanent redirectors. This is the reason why the PATH= has .build/*/buildtools/bin at higher precedence than .build/tools/bin; the latter has the versions detected by configure and the former has the versions built as companion tools. Revert the rest of the gang (grep/sed/...) for consistency. After all, we may decide to supply some of them as well (awk, for instance). Signed-off-by: Alexey Neyman <stilor@att.net>
2016-09-20elf2flt: do not treat warnings as errorsKirill K. Smirnov1-0/+1
elf2flt is configured with -Werror flag by default. Disable it. Signed-off-by: Kirill K. Smirnov <kirill.k.smirnov@gmail.com>
2016-09-13binutils: make symlinks in a consistent wayKirill K. Smirnov1-1/+1
On the stage "core gcc pass-2" the following layout is created: 1) buildtools/bin/TARGET-{ar,as,elf2flt,flthdr,ld,ld.bfd,ranlib,strip} 2) buildtools/TARGET/bin/{ar,as,elf2flt,flthdr,ld,ld.bfd,ranlib,strip} 3) x-tools/TARGET/bin/TARGET-{ar,as,elf2flt,flthdr,ld,ld.bfd,ranlib,strip} 4) x-tools/TARGET/TARGET/bin{ar,as,elf2flt,flthdr,ld,ld.bfd,ranlib,strip} where both (1) and (2) are symlinks to (3). This effectively renders core pass-2 gcc with elf2flt linker unusable. Related elf2flt discussion: https://github.com/crosstool-ng/crosstool-ng/pull/443 Signed-off-by: Kirill K. Smirnov <kirill.k.smirnov@gmail.com>
2016-06-10Update elf2flt git repository locationMartin Lund1-1/+1
The elf2flt git repository has been moved to GitHub. Updated the script accordingly. Signed-off-by: Martin Lund <martin.lund@keep-it-simple.com>
2016-01-13elf2flt: Use openadk version of elf2fltBryan Hundven1-1/+1
elf2flt is now hosted on github here: https://github.com/uclinux-dev/elf2flt But, until arm support is upstream, we'll switch to Waldemar Brodkorb version of elf2flt. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-01-02binutils: Fix installing libiberty for targetBryan Hundven1-0/+4
If CT_BINUTILS_FOR_TARGET_IBERTY is set, then it seems that we also must set `--enable-install-libiberty` for configure to pickup that it needs to be installed. This closes #302 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-12-08scripts: Update usage of CT_GetCustomBryan Hundven1-15/+8
This commit updates the build scripts to match the new usage of CT_GetCustom from the previous change. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-12-07binutils: Fix LDFLAGS for static toolchainBryan Hundven1-1/+1
If building a static toolchain, the ldflags option passed to do_binutils_backend is overridden when we set `LDFLAGS=-all-static`. We should pass `LDFLAGS=${ldflags} -all-static` in this case. This fixes #297 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-12-05binutils: Fix binutils manuals_install variableBryan Hundven1-2/+2
In commit: 74d555b2 A regex in a parameter subsitution replaces a '#' hash symbol, but it is not made literal '\#', so from the hash to the end of the line is a comment. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-25binutils/gdb: Fix configure options when building from binutils-gdb repoBryan Hundven1-0/+4
When building from: {git,http}://sourceware.org/git/binutils-gdb.git and setting BINUTILS_CUSTOM or GDB_CUSTOM, they could be the same source. These config options should not affect normal released versions. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-17consistency: Use exported variables of required toolsBryan Hundven1-12/+12
We check for apps: * make * sed * grep * awk * libtool/libtoolize * install * patch * and more ...during configure. Our scripts should be consistent about using the variables that define where the found tool was found. Of course, we do hard-link these tools in buildtools, but that should be a backup for the components we are building. Our scripts should always use the tools we find. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-13xtensa: add support for the configurable Xtensa architecture.Chris Zankel1-0/+4
The Xtensa processor architecture is a configurable, extensible, and synthesizable 32-bit RISC processor core. Processor and SOC vendors can select from various processor options and even create customized instructions in addition to a base ISA to tailor the processor for a particular application. Because of the configurability, the build process requires one additional step for gcc, binutils, and gdb to update the default configuration. These configurations are packed into an 'overlay' tar image, and are simply untarred on top of the default configuration during the build. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2015-02-02scripts/*/*.sh: prioritize http downloadsBryan Hundven1-2/+2
Prirotize http downloads before ftp downloads. By having http download first, those using proxy will work with the current download mechnism. This tells me that that mechnism needs to be updated. (proxy support and/or kconfig toggles) closes #3 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-01-16binutils: Add Linaro Binutils 2.25-2015.01 and 2.24-2014.11Cristoforo Cataldo1-3/+10
This commit allows to choose, download and build latest Linaro Binutils: - binutils-linaro-2.25.0-2015.01-2 - binutils-linaro-2.24.0-2014.11-2 Signed-off-by: Cristoforo Cataldo <cristoforo.cataldo@gmail.com>
2014-12-08scripts: Update download locationsBryan Hundven1-2/+2
This change updates the download locations to default to the official download site. For gcc and gdb, also separate out the linaro download locations so that if you are downloading the linaro variant, it skips trying to download from the official gcc mirror. This commit closes #3 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-05binutils: Fix elf2flt compile on more modern systemsSolomon Peachy1-0/+1
Without this fix, elf2flt will blow up complaining that it can't resolve dlopen() and friends. One has to explicitly pass '-ldl' on the final linking command line, because the system linker is not resolving indirect dependent shared libraries. I've needed to this patch for several years on Fedora systems. Signed-off-by: Solomon Peachy <pizza@shaftnet.org> Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-05binutils: Fixup the static toolchain build problemgoodmenlinux@gmail.com1-1/+1
When try to build the static toolchain, binutils failed. I have checked the libtool script, and found that the following option -all-static -static -static-libtool-libs are processed in a strange way. If any one of those three options appears firstly in the cmdline, all others will be neglected. Our LDFLAGS is ".... -static -all-static -o", so the -static option takes the real effect, and the -all-static has no useage actually! that is the cause of the failure. Signed-off-by: Brock Zheng <goodmenlinux@gmail.com> Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-05-11binutils/elf2flt: restore the custom location functionalityYann E. MORIN"1-3/+11
Somehow, it got lost when incorporating elf2flt in the binutils farmework. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-05-11binutils/binutils: do not forget to extract elf2fltYann E. MORIN"1-5/+3
In case we're using a custom (aka local) binutils source, we still need to extract and patch elf2flt. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-05-11binutils/elf2flt: use alternate mirrorYann E. MORIN"1-7/+3
The official elf2flt upstream has disapeared. Switch to a mirror. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-02-04binutils: Added ranlib to tools listRay Donnelly1-3/+3
so that it is available to available to the core C compiler build because static libraries are built and ranlib is used on them. Signed-off-by: Ray Donnelly <mingw.android@gmail.com> Message-Id: <CAOYw7dt=+DdnKAHNShfs6a+=7sS+DLQYkyxnQMAwmw7E7zqvgA@mail.gmail.com> Patchwork-Id: 316477
2012-11-19binutils: introduce the infrastructure to support binutils alternativesYann Diorcet2-150/+91
Rework binutils in order to provide soon binutils alternative. Signed-off-by: Yann Diorcet <diorcet.yann@gmail.com> [yann.morin.1998@free.fr: split up original patch for self-contained changes] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Message-Id: <d3d1d51f399e6d2c1163.1353320546@macbook-smorlat.local> Patchwork-Id: 199971
2012-11-16scripts: add BUILD/HOST extra cflags/ldflagsYann Diorcet2-3/+15
On some hosts, and for certain toolchains (eg. toolchain targetting the upcoming Darwin), it may be necessary to pass arbitrary CFLAGS and/or LDFLAGS when building the components. And necessary infrastructure: - EXTRA_{CFLAGS,LDFLAGS}_FOR_{BUILD,HOST} as config options - pass those extra flags to components Fix-up a slight typo in elf2flt at the same time (misnamed cflags). Signed-off-by: Yann Diorcet <diorcet.yann@gmail.com> Message-Id: <d24043276c9243a35421.1353077450@macbook-smorlat.local> Patchwork-Id: 199645
2012-11-19binutils/sstrip: removeYann Diorcet1-43/+0
sstrip has been obsoleted for a while now, as it's still broken for some archs, and there seems to be no incentive to fix it upstream. Besides, the space gained with sstrip is marginal at best. Signed-off-by: Yann Diorcet <diorcet.yann@gmail.com> Message-Id: <65c8bf534d0647ce52cd.1353320545@macbook-smorlat.local> Patchwork-Id: 199970
2012-10-11binutils/elf2flt: Add CUSTOM version, CUSTOM_LOCATION config options, GetCustomDavid Holsgrove1-8/+18
CUSTOM_LOCATION config options only presented in menuconfig if component CUSTOM version selected. Change elf2flt CT_ELF2FLT_VERSION from 'head' to 'cvs' if cvs selected in config Also remove hardcoded 'cvs-' from elf2flt component name, used in CT_Extract, CT_Patch and as the CT_SRC_DIR location for the configure stage. Signed-off-by: "David Holsgrove" <david.holsgrove@xilinx.com> [yann.morin.1998@free.fr: fix indentation, don't patch custom dir location] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Message-Id: <288db3721a37844defa5.1349931196@localhost.localdomain> PatchWork-Id: 190789
2012-10-11binutils/binutils: Add CUSTOM version and CUSTOM_LOCATION config options and ↵David Holsgrove1-3/+14
GetCustom CUSTOM_LOCATION config options only presented in menuconfig if component CUSTOM version selected. Signed-off-by: "David Holsgrove" <david.holsgrove@xilinx.com> [yann.morin.1998@free.fr: fix indentation, don't patch custom dir location] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Message-Id: <7a604b5df9c84a1e20c3.1349931195@localhost.localdomain> PatchWork-Id: 190788
2012-08-07binutils/binutils: CT_BINUTILS_GOLD_THREADED should be CT_BINUTILS_GOLD_THREADSZhenqiang Chen1-1/+1
Signed-off-by: Zhenqiang Chen <zhenqiang.chen@linaro.org>
2011-07-24binutils: add frontends for building to run on the build machineYann E. MORIN"2-2/+45
In canadian-cross, we need binutils running on the build machine to be able to build the target C library. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-17binutils: split binutils to backend/frontend, a-la cc_coreYann E. MORIN"3-82/+149
Move the actual binutils code to a backend function that builds the required combo of build/host/target as requested by a frontend. This split is currently a no-op, but is required for the upcoming canadian-cross rework, where we'll be needing to build two binutils, one for build/build/target, and one for build/host/target. This applies to the three binutils: - GNU binutils - elf2flt - sstrip Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-01cc/gcc: install the core compilers in the build-tools dirYann E. MORIN"2-16/+8
There really is no good reason to install the core compilers in their own places, one for each pass. We can install them with the other build tools. Also, this implies that: - there are fewer directories to save/restore - there are fewer symlinks to create for binutils - the PATH is shorter Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-02binutils/binutils: don't install symlinks when in canadianYann E. MORIN"2-20/+34
When building a canadian-cross, the binutils are not executable on the build machine, so there is no point in installing the symlinks in the gcc static/shared install dirs. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-03-04binutils/binutils: rename function that build target librariesYann E. MORIN"1-1/+1
Prepare for the incoming build/host/target frontends. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2011-11-23binutils/binutils: build multilibYann E. MORIN"1-2/+10
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-12-12binutils/binutils: fix extra config array variable nameBenoît Thébaudeau"1-1/+1
The changeset 2467 #200836977ce6 missed renaming one occurrence of CT_BINUTILS_EXTRA_CONFIG to CT_BINUTILS_EXTRA_CONFIG_ARRAY, which is fixed by this patch. Signed-off-by: "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
2011-11-17binutils/binutils: handle NLS optionZhenqiang Chen1-2/+4
Add --disable-nls config when option "Enable nls" is not selected. Reviewed-by: Michael Hope Signed-off-by: Zhenqiang Chen <zhenqiang.chen@linaro.org>
2011-11-15scripts: add support for building manualsYann E. MORIN"1-0/+14
Add support for building the HTML and PDF manuals for the major components. Implement for binutils, GCC, GDB, and GLIBC. Always build all manuals and install a subset. Be explicit about the subset to reduce the clutter and to avoid getting copies of common manuals like bfd from all of the sourceware based components. Downside of being explicit is that you need to update it when a new component comes along. Build the manuals as part of the last GCC build, namely 'cc' for glibc based ones and cc_core_pass_2 for baremetal. An example of the output is at: http://people.linaro.org/~michaelh/incoming/crosstool-NG/ Signed-off-by: Michael Hope <michael.hope@linaro.org> [yann.morin.1998@anciens.enib.fr: depends on ! remove docs; gold manual install] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-10-09binutils/binutils: ensure gold is staticaly-linked if neededYann E. MORIN"1-2/+2
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-10-05Pass CXXFLAGS to binutils/gold.Michael Hope1-0/+1
The GOLD linker is written in C++. Pass CT_CFLAGS_FOR_HOST as CXXFLAGS to configure so that any host specific flags are passed through. It feels a bit funny passing CFLAGS as CXXFLAGS, but the PPL and GCC target rules already do the same. Signed-off-by: Michael Hope <michael.hope@linaro.org>
2011-06-03kconfig: prepend CT-NG's version tag to PKGVERSIONBenoît THÉBAUDEAU"1-4/+4
"crosstool-NG-${CT_VERSION}" is currently the default for TOOLCHAIN_PKGVERSION, and this options is passed as is to --with-pkgversion. This patch prepends "crosstool-NG ${CT_VERSION}" to TOOLCHAIN_PKGVERSION before passing it to --with-pkgversion. Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
2011-05-31binutils: use the PKGVERSION and BUGURL optionsBenoît THÉBAUDEAU"1-0/+10
This patch makes binutils benefit from the TOOLCHAIN_PKGVERSION and TOOLCHAIN_BUGURL options. Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
2011-05-18config: rename variables that are arraysYann E. MORIN"2-2/+2
Make it explicit that a variable is an array bu the name of the variable. It will be used later when .config gets munged to allow both multiple arguments and arguments with spaces at the same time to be passed from the configuration down to the build scripts. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-15scripts: interpret *_EXTRA_CONFIG config variables arraysYann E. MORIN"2-4/+4
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-04binutils/binutils: add blind option to force use of ld.bfd during buildYann E. MORIN"1-0/+5
gold is not capable of building glibc/eglibc, so we have to force using the BFD linker, ld.bfd. Offer a blind option that affected components can select to force use of the BFD linker during the build. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-05binutils/binutils: also install the wrapper for the internall ldYann E. MORIN"1-0/+3
ld is also installed in PREFIX/TUPLE/bin, so we need to wrap that as well. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-19binutils/elf2flt: log even moreYann E. MORIN"1-1/+1
Also log variable assignement for single commands. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-19binutils/binutils: log even moreYann E. MORIN"1-1/+1
Also log variable assignement for single commands. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-03binutils/binutils: use log level CFG for ./configureYann E. MORIN"1-1/+1
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-27binutils/sstrip: build statically for static toolchainsYann E. MORIN"1-1/+6
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-27binutils/elf2flt: remove trailing spacesYann E. MORIN"1-1/+1
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22scripts: PARALLELMFLAGS is evil, renameYann E. MORIN"2-3/+3
The reunification of the glibc/eglibc code paths exposed a nasty bug in the glibc build: use of PARALLELMFLAGS breaks the build. See the explanations in that bug report against FC6: https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=212111 Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>