summaryrefslogtreecommitdiff
path: root/scripts/build
AgeCommit message (Collapse)AuthorFilesLines
2015-01-28eglibc: Remove eglibc supportBryan Hundven3-739/+525
As posted on http://www.eglibc.org/ ==================== EGLIBC is no longer developed and such goals are now being addressed directly in GLIBC. ==================== I'm not interested in maintaining build support for unsupported software. Older branches of crosstool-ng continue to have eglibc support. If you find issues with older branches, I'm always open to pull requests. Removing eglibc also frees up glibc cleanup and build optimization. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-01-26arch/nios2:add nios2Daniel Zimmermann1-0/+13
add the nios2 architecture to crosstool-ng. Signed-off-by: Daniel Zimmermann <netzimme@gmail.com>
2015-01-16libc: newlib: Add NewLib 2.2.0, Linaro NewLib 2.2.0-2015.01 and 2.1.0-2014.09Cristoforo Cataldo1-2/+9
This commit allows to choose, download and build latest NewLib: - newlib-2.2.0 - newlib-linaro-2.2.0-2015.01 - newlib-linaro-2.1.0-2014.09 Signed-off-by: Cristoforo Cataldo <cristoforo.cataldo@gmail.com>
2015-01-16libc: glibc: Add Linaro GLibc 2.20-2014.11Cristoforo Cataldo1-3/+11
This commit allows to choose, download and build latest Linaro GLibC: - glibc-linaro-2.20-2014.11 Signed-off-by: Cristoforo Cataldo <cristoforo.cataldo@gmail.com>
2015-01-16libc: eglibc: Add Linaro EGLibc 2.19-2014.08Cristoforo Cataldo1-0/+9
This commit allows to choose, download and build latest Linaro EGLibC: - eglibc-linaro-2.19-2014.08 Signed-off-by: Cristoforo Cataldo <cristoforo.cataldo@gmail.com>
2015-01-16debug: gdb: Add Linaro GDB 7.8-2014.09 and Linaro GDB 7.6.1-2013.10Cristoforo Cataldo1-14/+16
This commit allows to choose, download and build latest Linaro GDB: - gdb-linaro-7.8-2014.09 - gdb-linaro-7.6.1-2013.10 Signed-off-by: Cristoforo Cataldo <cristoforo.cataldo@gmail.com>
2015-01-16gcc: Add Linaro GCC 4.9-2015.01 and GCC 4.8-2014.11Cristoforo Cataldo1-12/+13
This commit allows to choose, download and build latest Linaro GCC: - gcc-linaro-4.9-2015.01 - gcc-linaro-4.8-2014.11 Signed-off-by: Cristoforo Cataldo <cristoforo.cataldo@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>
2015-01-09comptools/make: Install 'gmake' symlinkBernhard Walle1-0/+3
We had following problem: We're building a toolchain with an old glibc version for compatibility with old Linux distributions (glibc 2.9). This version requires make < 4 to build. However, the configure script of glibc looks for make in the order "gnumake", "gmake" and "make". So when "gmake" is available in the system (which is the case on Gentoo Linux per default, unfortunately), then configure finds the system gmake 4.1 instead of the ct-ng make 3.82. This patch adds an option to install a symlink so that 'gmake' is also available in the old version when building toolchains. Signed-off-by: Bernhard Walle <bernhard@bwalle.de>
2015-01-07Merge pull request #19 from davidholsgrove/newlib_headersBryan Hundven2-12/+6
Newlib headers for Canadian Crosses
2015-01-01cc/gcc: Remove copyheaders toggle in do_cc_core_backend, make defaultDavid Holsgrove1-8/+2
Canadian Cross compile for baremetal fails with error; checking for the value of EOF... configure: error: computing EOF failed which is due to libstdc++ configure not being able to find stdio.h Having all modes of the core compiler copyheaders from CT_HEADERS_DIR (in combination with previous patch for newlib to add a do_libc_start_files function to copy into the CT_HEADERS_DIR) resolves this. Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2015-01-01libc/newlib: Add do_libc_start_files to copy headers to CT_HEADERS_DIRDavid Holsgrove1-4/+4
Require access to newlibs headers in gcc.sh, matching other libc components. Resolves issue with headers not found. Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-23gmp: Disable --enable-mpbsd if version is >= 5.0.2Bryan Hundven1-2/+7
closes #12 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-16Merge pull request #14 from davidholsgrove/glibc_rpcBryan Hundven1-2/+3
libc/glibc: install obsolete RPC for both eglibc and glibc
2014-12-15Merge pull request #6 from davidholsgrove/libc_custom_locationBryan Hundven3-7/+23
Libc custom location
2014-12-15libc/glibc: install obsolete RPC for both eglibc and glibcJérôme BARDON1-2/+3
Currently, the obsolete RPC headers are only installed for eglibc, but glibc has the same /deficiency/, so install the obsolete RPC for both. Signed-off-by: Jérôme BARDON <bardon.pro@gmail.com> Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-10gdb: fix typo made in gdb build scriptBryan Hundven1-1/+1
I made a typo in: 1e17619b273fb49f8d2e162f34c26994698285b3 It should be version, not release. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-09gcc and gdb: fix fetching linaro builds (part three)Bryan Hundven2-2/+3
Yes, I missed the backslash which messed up the linaro stuff. The more I look at this code, I feel it needs to be refactored a bit. So I'll come back to this in the future and clean it up. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-09gcc and gdb: fix fetching linaro builds (part two)Bryan Hundven2-2/+2
It's not my day. linaro_version is a filter. If it is not a linaro toolchain, it will just be CT_{CC,GDB}_VERSION. If it is a linaro toolchain, CT_{CC,GDB}_VERSION will be prefixed with 'linaro-' and will not match linaro_version, as linaro_version will just have the part after 'linaro-'. This *really* fixes the issue :sigh: Thanks again to @elsonwei for being right the first time! Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-09gcc and gdb: fix fetching linaro buildsBryan Hundven2-4/+4
linaro_version and linaro_series are defined but not set if we are not configured for linaro builds. Therefore we need to default them to "" (null string). As reported by @elsonwei Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-09libc/{,e}glibc: If using custom {e}glibc, dont extract or patchDavid Holsgrove1-3/+9
If custom {e}glibc is being used, no need to carry out the extract or patching phase of scripts/build/libc/glibc-eglibc.sh-common Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-09libc/eglibc: Add CUSTOM version and CUSTOM_LOCATION config options and GetCustomDavid Holsgrove1-3/+8
CUSTOM_LOCATION config options only presented in menuconfig if component CUSTOM version selected. Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-09libc/glibc: Add CUSTOM version and CUSTOM_LOCATION config options and GetCustomDavid Holsgrove1-1/+6
CUSTOM_LOCATION config options only presented in menuconfig if component CUSTOM version selected. Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-09glibc: nptl is default from 2.20, so dont add to addons_listDavid Holsgrove1-4/+6
No longer recommended practice to use --enable-add-ons=nptl, so for 2.20 and later (along with custom glibc), don't add the CT_THREADS to the addons_list https://sourceware.org/glibc/wiki/Release/2.20#Packaging_Changes Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-08scripts: Update download locationsBryan Hundven17-47/+52
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-09-11libc/musl: Add config option for extra developer warningsBryan Hundven1-0/+4
This commit adds a configuration knob for enabling extra developer warnings to be enabled during the musl-libc build. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2014-09-11libc/musl: Add config option for debugging infoBryan Hundven1-0/+4
This option enables a configuration knob for adding debugging info. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2014-09-11libc/musl: Add options for optimizationBryan Hundven1-1/+5
This commit adds configuration knobs for optimizing musl-libc. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2014-08-31cc/gcc: add option to enable/disable libsanitizerYann E. MORIN1-3/+7
libsaniotizer requires a few headers that are not in uClibc, for example. Also, it is only available for native threads (NPTL under glibc.) Finally, it is only available starting with gcc-4.8. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-08-08libc/musl: add musl-libc supportBryan Hundven2-0/+104
This patch adds initial support for musl-libc. Musl-libc versions currently supported: * 1.0.3 (Stable) * 1.1.3 (Previous Mainline) * 1.1.4 (Mainline) Futher improvements are needed. * gcc-4.9.x has issues (Might be fixed in musl-1.1.4). * Multilib support is needed. * Checks to make sure paths are correct. * Move to 2-step gcc build. 3-step build is not necessary. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> [yann.morin.1998@free.fr: removed the gcc musl patch, to be added later; removed dead code do_get_arch()] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-07-19cc/gcc: avoid passing --enable-multilib (take 2)Cody P Schafer1-3/+4
The previous patch (cset b61a1b1, cc/gcc: avoid passing --enable-multilib) only fixed the core backend, and missed the final backend. This patch does the same as b61a1b1, but for the final backend. Signed-off-by: Cody P Schafer <dev@codyps.com> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-05-11arch: use the newly introduced target_bits_64Yann E. MORIN"2-10/+2
Convert MIPS and Sparc over to using the new target_bits_64 variable. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-05-11arch/powerpc: add powerpc64le supportCody P Schafer1-4/+2
Technically, I don't forbid powerpcle support either, but I'm not sure that there is any library/compiler support for that at the moment (though the hw technically makes it possible). powerpc64le needs glibc 2.19 and gcc 4.9. I haven't looked into the support tools, but at least gdb 7.5 is too old (7.7.1 definitely has support). Also make powerpc64 non-experimental. It's practically old at this point. Signed-off-by: Cody P Schafer <dev@codyps.com> [yann.morin.1998@free.fr: use ${target_endian_le} and ${target_bits_64}] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Message-Id: <64bfbbced9dd8f62e0d6.1399801945@gun> Patchwork-Id: 347775
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-05-10cc/gcc: allow CC_EXTRA_CONFIG_ARRAY on baremetalCody Schafer1-1/+5
The final bare-metal compiler is built using the core backend. Currently the core uses the CC_CORE_EXTRA_CONFIG_ARRAY variable. While this works as supposed to, this can leave the user puzzled in the menuconfig, since all he can see is the core options, not the final options. Only show the core options if any of the core passes are needed, and use the final options in the core-backend if we're issuing the bare-metal compiler. Signed-off-by: Cody P Schafer <dev@codyps.com> [yann.morin.1998@free.fr: hide core options if no core pass needed; use final option in core backend if issuing the bare-metal compiler] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Message-Id: <22181e546ba746202489.1399688067@localhost> Patchwork-Id: 347586
2014-05-10cc/gcc: avoid passing --enable-multilibCody Schafer1-3/+3
Some versions of gcc have a broken --enable-multilib flag. As multilib is the default, only pass the --disable-multilib flag Signed-off-by: Cody P Schafer <dev@codyps.com> [yann.morin.1998@free.fr: make it an if-block; duplicate commit log as comment] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Message-Id: <5c970c1ceb22528fe28a.1399687923@localhost> Patchwork-Id: 347585
2014-02-25newlib: fix extract process for custom versionTrevor Woerner1-1/+1
newlib: fix extract process for custom version If the user specifies the use of a custom newlib version, the logic in the extract function was reversed, so this step would fail. Signed-off-by: Trevor Woerner <trevor.woerner@linaro.org> [yann.morin.1998@free.fr: keep leading indentation] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Message-Id: <c727adf1b7bd2c1e891d.1393353347@openSUSE-i7> Patchwork-Id: 324060
2014-05-05cc/gcc: only build required core passesYann E. MORIN"1-2/+2
We now know exactly what pass to build, so build only what is required. Reported-by: Trevor Woerner <trevor.woerner@linaro.org> 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
2014-01-04cc/gcc: add option to enable/disable decimal floatsYann E. MORIN"1-0/+10
Decimal floats need support form the C library, namely support for fenv, which is missing in uClibc for any architecture but x86/32. Add an option (a choice) to enable or disable decimal floats. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-01-04libc/uClibc: add option to enable fenvYann E. MORIN"1-7/+5
Support for fenv.h is a little bit more tricky that enabling it only for x86-32 is not right. Add an option for the user to choose whther to install fenv.h or not. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-01-06libc/glibc: fix downloading addonsYann E. MORIN"1-3/+3
Do to glibc what we did to eglibc in #dff359adf15c. Only (very) old versions of glibc have other external addons, and they are no longer meaningful. But for consistency, do the change nonetheless. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-01-05libc/glibc: print name of skipped addonYann E. MORIN"1-1/+1
When trying to extract an already present (aka bundled) addon, print the name of that addon, for clarity, and to help analyse the build.log post-mortem. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-01-04cc/gcc: set CXXFLAGS at configure gccDaniel Dittmann1-0/+2
Since gcc 4.8 C++ is also used as implementation language (see gcc release notes). Signed-off-by: "Daniel Dittmann" <ddittmann@gmx.net> Message-Id: <acc7d11bc77b30f21c5b.1388863298@bernalk.machteam> Patchwork-Id: 306883
2014-01-04libc-uclibc: enable fenv for x86 32-bitYann E. MORIN"1-0/+7
Without it, gcc-4.8 fails to build. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-01-04cc/gcc: diable libsanitizer without NPTLYann E. MORIN"1-0/+3
gcc-4.8 comes with a new library to sanitise memory access: - heap-, stack-, and global-buffer overflow, use-after-free - data-races between threads This library requires some _np parts of the API, which are not implemented in the (old) LinuxThreads, which is still available in uClibc. Since NPTL requires a i486 or above, i386 are stuck with using LT, which precludes building the libsanitizer. Disable libsanitizer, a bit like libatomic is. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Niels Penneman <niels@penneman.org>