aboutsummaryrefslogtreecommitdiff
path: root/scripts
Commit message (Collapse)AuthorAgeFilesLines
...
* functions: add support for arch-specific patchErico Nunes2015-06-211-3/+4
| | | | | | | | | | | | | | | Add support for applying arch-specific patches found in "patches/${pkgname}/${version}/${CT_ARCH}". This is needed for applying a popular binutils patch specific for the AVR architecture but which isn't isolated for AVR in binutils' code. In this case, applying it for every architecture would end up bloating binutils' "size" options with AVR specifics. This feels like a bit of a hack but it is easy enough to support with current crosstool-ng infrastructure, seems like worth it for this case. Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
* avr-libc: add support for avr-libc C libraryErico Nunes2015-06-218-1/+104
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* avr: add support for AVR 8-bit architectureErico Nunes2015-06-211-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>
* gcc: Remove --enable-c99Bryan Hundven2015-06-031-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>
* Merge pull request #107 from bhundven/remove_experimental_musl_patchesBryan Hundven2015-06-021-10/+4
|\ | | | | Remove support for experimental patches and musl patches
| * Remove support for experimental patches and musl patchesBryan Hundven2015-06-021-10/+4
| | | | | | | | | | | | | | | | | | | | | | | | This functionality was provided so that crosstool-ng could have a further set of patches considered experimental and unsupported. Now that musl-libc support is making it's way upstream in gcc, I'm removing this support and the experimental musl patches. In later commits, backports from gcc upstream will be added to the supported patch sets to support musl-libc. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* | Merge pull request #58 from dirkhusemann/masterBryan Hundven2015-06-021-1/+1
|\ \ | |/ |/| Update functions to grok symlinks
| * Update functions to grok symlinksDirk Husemann2015-06-021-1/+1
| | | | | | | | | | | | when specifying a custom kernel provided as a tar ball, the tar ball gets symlinked. the -e test will fail. Signed-off-by: Dirk Husemann <dirk@d2h.net>
* | Merge pull request #103 from bhundven/update_addtoolversionBryan Hundven2015-06-021-1/+1
|\ \ | | | | | | addToolVersion: multi_cc: update addToolVersion
| * | addToolVersion: multi_cc: update addToolVersionBryan Hundven2015-06-021-1/+1
| | | | | | | | | | | | | | | | | | | | | Since gcc moved from CC_ to CC_GCC_, addToolVersion neeeded to be updated. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* | | Merge pull request #102 from yann-morin-1998/yem/populateBryan Hundven2015-06-011-2/+2
|\ \ \ | |/ / |/| | populate: also search for gconv modules
| * | populate: also search for gconv modulesYann E. MORIN2015-05-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The gconv modules are present in the (e)glibc toolchains, and some applications directly link with one or more of those modules (even though the classic way of using them is by dlopen()ing them). So, also look in /usr/lib/gconv when searching for libraries. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
* | | test_suite: Update gcc test_suite for multiple compilersRay Donnelly2015-06-021-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>
* | | gdb: Update 300-gdb.sh for multiple compilersRay Donnelly2015-06-021-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>
* | | cc: Update 100-gcc.sh for multiple compilersRay Donnelly2015-06-021-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>
* | | scripts: Update crosstool-NG internals for multiple compilers.Ray Donnelly2015-06-022-30/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | showSamples: Update showSamples.sh for multiple compilersRay Donnelly2015-06-021-4/+18
| | | | | | | | | | | | | | | | | | | | | | | | This change adds support to show samples for multiple compilers. Signed-off-by: Ray Donnelly <mingw.android@gmail.com> Reviewed-by: Bryan Hundven <bryanhundven@gmail.com> Reviewed-by: Yann Diorcet <diorcetyann@gmail.com>
* | | config: Add config support for multiple compilersRay Donnelly2015-05-291-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change updates the config to support multiple compilers by moving CC_.* to CC_GCC_.* to make room for other compilers. We also update gen_in_frags.sh to check for a default cc. Signed-off-by: Ray Donnelly <mingw.android@gmail.com> Reviewed-by: Yann Diorcet <diorcetyann@gmail.com> Reviewed-by: Bryan Hundven <bryanhundven@gmail.com>
* | | multi_cc: Prepare ct-ng for multiple compilersRay Donnelly2015-05-293-1/+59
|/ / | | | | | | | | | | | | | | | | | | | | 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>
* | mingw-w64: Add 'devel' version to use git 'master' branchRay Donnelly2015-05-121-13/+23
| | | | | | | | Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
* | CT_GetGit: Allow cset to be a ref (branch or tag)Ray Donnelly2015-05-121-4/+31
| | | | | | | | | | | | | | | | Pass cset as ref=somename to use this feature. CT_GetGit echos the cset sha1 on exit since the caller will need to know that information as it forms part of the downloaded tarball name. Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
* | scripts: If paths.sh is included, use the variablesBryan Hundven2015-05-093-6/+6
| | | | | | | | | | | | | | This commit changes sed, awk, and grep to use the ones we found during configure time. This helps make the build more consistent. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* | showSamples: Update to use variables from paths.shBryan Hundven2015-05-091-2/+2
| | | | | | | | | | | | | | This change modifies the use of sed and awk to use the variables set by paths.sh during the installation process of crosstool-NG. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* | Merge pull request #75 from bhundven/kernel_updatesBryan Hundven2015-04-261-4/+5
|\ \ | | | | | | kernel: Update kernel versions
| * | kernel: Update kernel versionsBryan Hundven2015-04-261-4/+5
| | | | | | | | | | | | | | | | | | This commit adds support for 4.x and updates longterm versions. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* | | comp_libs: Fix download locations for cloog and mpcBryan Hundven2015-04-262-2/+4
|/ / | | | | | | | | | | This change closes #62 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* | Merge pull request #57 from smoofra/buildflagsBryan Hundven2015-04-141-0/+4
|\ \ | | | | | | bugfix: pass extra build CFLAGS and LDFLAGS to glibc
| * | bugfix: pass extra build CFLAGS and LDFLAGS to glibcLawrence D'Anna2015-04-071-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>
* | | Merge pull request #63 from neftedal/masterBryan Hundven2015-04-141-3/+28
|\ \ \ | |/ / |/| | Updated script to support mingw versions above major 2
| * | mingw.sh: added with sysroot argument to mingw configureNils Petter Eftedal2015-04-081-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>
| * | mingw.sh: updated script to support mingw versions above major 2Nils Petter Eftedal2015-04-081-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>
* | Merge pull request #37 from bhundven/so_long_to_eglibcBryan Hundven2015-04-075-750/+532
|\ \ | | | | | | So long to eglibc
| * | glibc: Fix pkgversion and bugurl supportBryan Hundven2015-01-271-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>
| * | eglibc: Remove eglibc supportBryan Hundven2015-01-275-750/+527
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | Only create ${CT_TARGET}-cc${ext} symlink if ${CT_TARGET}-gcc existsJohannes Pfau2015-04-071-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>
* | scripts/*/*.sh: prioritize http downloadsBryan Hundven2015-02-016-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>
* arch/nios2:add nios2Daniel Zimmermann2015-01-261-0/+13
| | | | | | add the nios2 architecture to crosstool-ng. Signed-off-by: Daniel Zimmermann <netzimme@gmail.com>
* Merge pull request #24 from Christopher83/masterBryan Hundven2015-01-266-34/+68
|\ | | | | Add the support to choose, download and build latest Linaro toolchain components
| * libc: newlib: Add NewLib 2.2.0, Linaro NewLib 2.2.0-2015.01 and 2.1.0-2014.09Cristoforo Cataldo2015-01-161-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>
| * libc: glibc: Add Linaro GLibc 2.20-2014.11Cristoforo Cataldo2015-01-161-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>
| * libc: eglibc: Add Linaro EGLibc 2.19-2014.08Cristoforo Cataldo2015-01-161-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>
| * debug: gdb: Add Linaro GDB 7.8-2014.09 and Linaro GDB 7.6.1-2013.10Cristoforo Cataldo2015-01-161-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>
| * gcc: Add Linaro GCC 4.9-2015.01 and GCC 4.8-2014.11Cristoforo Cataldo2015-01-161-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>
| * binutils: Add Linaro Binutils 2.25-2015.01 and 2.24-2014.11Cristoforo Cataldo2015-01-161-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>
* | Merge pull request #22 from Ledest/masterBryan Hundven2015-01-261-6/+8
|\ \ | |/ |/| fix bashisms in patch-rework.sh script
| * Fix bashisms in patch-rework.sh scriptLed2015-01-111-6/+8
| | | | | | | | | | | | | | | | This script has a '#!/bin/sh' shabang and might be running on a POSIX shell. So replace bash-specific constructions (pushd/popd, for((...)), read with '-u' option) to POSIX-shell equivalents. Signed-off-by: Led ledest@gmail.com
* | Merge pull request #25 from bhundven/patchworks-bernhard_walleBryan Hundven2015-01-101-0/+3
|\ \ | | | | | | Patchwork bernhard walle
| * | comptools/make: Install 'gmake' symlinkBernhard Walle2015-01-081-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>
* | | config.{sub,guess}: Update to latestRay Donnelly2015-01-102-13/+27
|/ / | | | | | | | | | | From http://git.savannah.gnu.org/gitweb/?p=config.git Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
* | Merge pull request #19 from davidholsgrove/newlib_headersBryan Hundven2015-01-072-12/+6
|\ \ | | | | | | Newlib headers for Canadian Crosses