summaryrefslogtreecommitdiff
path: root/scripts/build
AgeCommit message (Collapse)AuthorFilesLines
2015-11-10blackfin: Remove blackfin supportBryan Hundven3-18/+2
This commit removes blackfin support. I'm open to re-adding blackfin after crosstool-1.23.0 is released, but it is currently too difficult to port forward to newer versions of gcc and uclibc. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-03uClibc: Don't use CROSS, use CROSS_COMPILE insteadBryan Hundven1-9/+9
As per: http://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/Makefile.help?id=044843f002f666db3bc06c513ed6291a00ad1225 CROSS= is for compatibility, but we plan on dropping older uClibc versions, and adding uClibc-ng and uClibc-snapshot support. Use CROSS_COMPILE instead. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-03linux: Set CROSS_COMPILE while building/checking headersBryan Hundven1-0/+2
Some architectures, like arc and blackfin set CROSS_COMPILE to a default if it is not set on the command-line. Since we are building the cross-compiler, we need to ALWAYS set CROSS_COMPILE, since building/checking headers is done after the GCC PASS1 step. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-10-31gcc: Support only the latest branch releases of gccBryan Hundven2-32/+0
This change, as per #222, reduces the number of supported releases of gcc to the latest branch releases. I noticed while doing this work that gcc-4.5.4 was never added, so I moved patches for gcc-4.5.3 to 4.5.4 and updated the bfin-unknown-linux-uclibc example. Also, 120-siginfo.patch was fixed upstream in the 4.5.4 release, so this patch is omitted. I also bumped the avr sample to 4.9.3 from 4.9.2. With the addition of gcc-5.x, the gcc release team now releases the major.minor.0 versions, while updates to the branch are available in svn/git. We'll address that when we get to issue #219. This change just removes CC_GCC_5_1 and moves CC_GCC_5_2 to CC_GCC_5, and removes CC_GCC_5_1_or_later and moves CC_GCC_5_2_or_later to CC_GCC_5_or_later. This is the first of two part changes, as mentioned in #222. This change is slated for release in 1.22.0. The next change will be slated for 1.23.0, and will limit gcc versions to what is on https://gcc.gnu.org under "Release Series and Status", which is currently 4.9.3 and 5.2.0, although I will also support the previous supported version. In this example that would be 4.8.5. Last, but not least, this change also retires AVR32 support. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-10-27Clean up *.la after installing compiler/libraries.Alexey Neyman1-0/+19
Having *.la in the installation directory breaks ltrace: in ltrace, libtool somehow considers libsupc++ to be an "accessory library" and does not add -lsupc++ to the link flags. Neither Ubuntu, nor RedHat include *.la files into their packages for libstdc++. Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-09Using "all" and "install" targets in do_gcc_core_backend if configured.Jasmin Jessich1-9/+47
- New configurations: - CC_GCC_TARGET_FINAL: Use the default targets "all" and "install" for the final compiler for bare metal. - Adding parameter "build_step" to function do_gcc_core_backend: do_gcc_core_backend is used for the core compiler and in case of bare metal for the final compiler, too. To have better control over the parameters for the final compiler "build_step" is used. - Used for proper logging. - Use CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY or CT_CC_GCC_EXTRA_CONFIG_ARRAY. - If CT_CC_GCC_TARGET_FINAL is set and the final compiler is build then the make targets for the final compiler are used ("all", "install"). Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-10-07Merge pull request #187 from jasmin-j/sync_ltoBryan Hundven1-0/+2
Synchronize CC_GCC_USE_LTO parameter setting II
2015-10-07Merge pull request #184 from jasmin-j/add_gcc_env_arrayBryan Hundven1-2/+7
Add additional environment variables for gcc build.
2015-10-07Merge pull request #182 from jasmin-j/add_missing_lib_optsBryan Hundven1-0/+15
Adding missing if/else blocks in do_gcc_core_backend.
2015-09-24Synchronize CT_CC_GCC_USE_LTO parameter setting in do_gcc_backend with the oneJasmin Jessich1-0/+2
from do_gcc_core_backend, by adding "--enable-lto"/"--disable-lto". Signed-off-by: Jasmin Jessich <jasmin@anw.
2015-09-21Added additional environment variables for gcc build (make) with new optionJasmin Jessich1-2/+7
GCC_EXTRA_ENV_ARRAY. Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-09-21Removed doubled setting of --disable-libmudflap in do_gcc_core_backend.Jasmin Jessich1-1/+0
Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-09-21Adding missing if/else blocks in do_gcc_core_backend for CT_CC_GCC_LIBSSP,Jasmin Jessich1-0/+15
CT_CC_GCC_HAS_LIBQUADMATH and CT_CC_GCC_LIBQUADMATH (--en/disable-libssp, --en/disable-libquadmath, --en/disable-libquadmath-support) from function do_gcc_backend. Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-09-14Added additional newlib specific target flags with new optionJasmin Jessich1-1/+4
LIBC_NEWLIB_TARGET_CFLAGS. Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-09-02glibc: Fix applying addons to glibc => 2.17Bryan Hundven1-25/+27
glibc-2.17 and above no longer have external addons or ports. So if we are => 2.17, don't even think about trying to mess with ports or addons. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-09-01Merge pull request #144 from jasmin-j/fix_142Bryan Hundven1-3/+3
Fix for issue #142:
2015-09-01Fix for issue #142:Jasmin Jessich1-3/+3
Configure for for core GCC did not use Core gcc extra config. Use now config variable CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY. Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-09-01Added new config ISL_V_0_14_or_later and ISL_V_0_12_or_later to selectJasmin Jessich1-4/+11
proper configure options for isl 0.14.x and 0.12.x in 121-isl.sh. Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-06-21avr-libc: add support for avr-libc C libraryErico Nunes7-0/+95
This commit adds support for the avr-libc C library. According to the project page at http://www.nongnu.org/avr-libc , the avr-libc package provides a subset of the standard C library for Atmel AVR 8-bit RISC microcontrollers. In addition, the library provides the basic startup code needed by most applications. Support for this library in crosstool-ng is only enabled for the AVR 8-bit target. The avr-libc manual and most distributions build the AVR 8-bit gcc toolchain with the "avr" (non-canonical) target. Some experimentation also led to the conclusion that other (canonical) targets are not very well supported, so we force the "avr" target for crosstool-ng as well. The manual also recommends building avr-libc after the final gcc build. To accomplish this with crosstool-ng, a new do_libc_post_cc step is added, in which currently only avr-libc performs its build, and is a no-op for the other libc options. Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
2015-06-21avr: add support for AVR 8-bit architectureErico Nunes1-0/+5
This commit adds support for the Atmel AVR 8-bit RISC architecture. This is the first 8-bit architecture to be added to crosstool-ng so the configuration options for 8-bit architectures are added here as well. gcc has had support for AVR for quite a while, at least since the 4.3 series for the currently popular ATmega microcontroler series. The AVR architecture only supports bare-metal toolchains. gcc for the AVR 8-bit architecture, usually referred to as avr-gcc, is commonly used in conjunction with the avr-libc library which provides additional resources for the Atmel AVR 8-bit microcontrollers. avr-gcc can also be found as a supported package in some recent Linux distributions. This commit also closes #66 Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
2015-06-03gcc: Remove --enable-c99Bryan Hundven1-1/+0
This option is old. GCC 4.3.x old. It isn't supported anymore, and just confuses me. I'm not planning to support 4.3.x, or really anything older then 4.7. So this option is gone to the wind. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2015-06-01test_suite: Update gcc test_suite for multiple compilersRay Donnelly1-4/+4
This commit updates gcc's test suite to use the new config options. Signed-off-by: Ray Donnelly <mingw.android@gmail.com> Reviewed-by: Bryan Hundven <bryanhundven@gmail.com> Reviewed-by: Yann Diorcet <diorcetyann@gmail.com>
2015-06-01gdb: Update 300-gdb.sh for multiple compilersRay Donnelly1-4/+4
Update 300-gdb.sh to use the new config options. Signed-off-by: Ray Donnelly <mingw.android@gmail.com> Reviewed-by: Bryan Hundven <bryanhundven@gmail.com> Reviewed-by: Yann Diorcet <diorcetyann@gmail.com>
2015-06-01cc: Update 100-gcc.sh for multiple compilersRay Donnelly1-70/+70
Update 100-gcc.sh to use the new config option names. Signed-off-by: Ray Donnelly <mingw.android@gmail.com> Reviewed-by: Bryan Hundven <bryanhundven@gmail.com> Reviewed-by: Yann Diorcet <diorcetyann@gmail.com>
2015-06-01scripts: Update crosstool-NG internals for multiple compilers.Ray Donnelly1-26/+28
This change updates the CC.* references to CC_GCC.* in the internal scripts. Signed-off-by: Ray Donnelly <mingw.android@gmail.com> Reviewed-by: Bryan Hundven <bryanhundven@gmail.com> Reviewed-by: Yann Diorcet <diorcetyann@gmail.com>
2015-05-29multi_cc: Prepare ct-ng for multiple compilersRay Donnelly2-0/+58
This commit moves gcc.sh to 100-gcc.sh to accomodate for other cross-compilers that crosstool-ng might be able to build. The first, to come soon, is llvm/clang. Signed-off-by: Ray Donnelly <mingw.android@gmail.com> Reviewed-by: Bryan Hundven <bryanhundven@gmail.com> Reviewed-by: Yann Diorcet <diorcetyann@gmail.com>
2015-05-12mingw-w64: Add 'devel' version to use git 'master' branchRay Donnelly1-13/+23
Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-04-27Merge pull request #75 from bhundven/kernel_updatesBryan Hundven1-4/+5
kernel: Update kernel versions
2015-04-27kernel: Update kernel versionsBryan Hundven1-4/+5
This commit adds support for 4.x and updates longterm versions. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-04-26comp_libs: Fix download locations for cloog and mpcBryan Hundven2-2/+4
This change closes #62 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-04-14Merge pull request #57 from smoofra/buildflagsBryan Hundven1-0/+4
bugfix: pass extra build CFLAGS and LDFLAGS to glibc
2015-04-14Merge pull request #63 from neftedal/masterBryan Hundven1-3/+28
Updated script to support mingw versions above major 2
2015-04-08mingw.sh: added with sysroot argument to mingw configureNils Petter Eftedal1-0/+1
The argument will prevent the prefix path from being added as an include path while building mingw. Having the prefix as an include path might cause all kinds of weird issues if prefix directory also exists on the build machine. Signed-off-by: Nils Petter Eftedal <nilspetter@eftedal.org>
2015-04-08mingw.sh: updated script to support mingw versions above major 2Nils Petter Eftedal1-3/+27
Added new functions to support changes in prefix and required vendor tuple for new versions of mingw. Tested and verified with mingw version 2.0.7, 3.3.0 and 4.0-rc3. Signed-off-by: Nils Petter Eftedal <nilspetter@eftedal.org>
2015-04-08bugfix: pass extra build CFLAGS and LDFLAGS to glibcLawrence D'Anna1-0/+4
Glibc actually does create a build executable. It's under sunrpc and it's called cross-rpcgen. It uses gettext, so if that's not available in a standard place on your system (for example if you're using Mac OS X and Homebrew), then you are all out of luck. Signed-off-by: Lawrence D'Anna <larry@elder-gods.org>
2015-04-08Merge pull request #37 from bhundven/so_long_to_eglibcBryan Hundven3-739/+530
So long to eglibc
2015-04-07Only create ${CT_TARGET}-cc${ext} symlink if ${CT_TARGET}-gcc existsJohannes Pfau1-2/+6
Without this canadion cross builds create invalid symlinks: When the code in do_cc_core_backend is called there is no ${CT_TARGET}-gcc in the install directory. Therefore ext is empty and we create a link to ${CT_TARGET}-gcc. The final compiler step then installs ${CT_TARGET}-gcc.exe and creates a working ${CT_TARGET}-cc.exe symlink but we still keep the invalid link as well. Signed-off-by: Johannes Pfau <johannespfau@gmail.com>
2015-02-02scripts/*/*.sh: prioritize http downloadsBryan Hundven6-9/+14
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-28glibc: Fix pkgversion and bugurl supportBryan Hundven1-1/+6
glibc versions that don't support --with-pkgversion or --with-bugurl will cause a harmless: ==================== configure: WARNING: unrecognized options: --with-bugurl...` ==================== If it's set, use it, if it's a recognized option. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
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>