summaryrefslogtreecommitdiff
path: root/scripts/build/arch
AgeCommit message (Collapse)AuthorFilesLines
2015-11-13xtensa: add support for the configurable Xtensa architecture.Chris Zankel1-0/+78
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-11-10blackfin: Remove blackfin supportBryan Hundven1-14/+0
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-10-31gcc: Support only the latest branch releases of gccBryan Hundven1-13/+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-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-01-26arch/nios2:add nios2Daniel Zimmermann1-0/+13
add the nios2 architecture to crosstool-ng. Signed-off-by: Daniel Zimmermann <netzimme@gmail.com>
2014-08-08libc/musl: add musl-libc supportBryan Hundven1-0/+1
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-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
2013-12-30arch/arm: add support for AArch64Yann E. MORIN"1-1/+10
AArch64 id the 64-bit variant for ARM. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Zhenqiang Chen <zhenqiang.chen@linaro.org> Cc: Michael Hope <michael.hope@linaro.org>
2013-01-20arch: allow adding a suffix to the arch-part of a tupleYann E. MORIN"11-17/+14
For some architectures, it is legit to have an alternate value in the 'architecture' part of the tuple. For example: armv5te-* armv7a8-* Besides, some packages expect the tuple to reflect the arch variant (eg. openMPI) to detect the variant's capabilities (eg. atomic primitives). This patch adds an option for the user to specify a suffix to be added to the arch-part of the tuple. Signed-off-by: Willy Tarreau <w@1wt.eu> Message-ID: <20130120225822.GS6838@1wt.eu> Patch-Id: 213994 [yann.morin.1998@free.fr: make it a suffix, not an override] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2013-01-09arch/arm: add option to use *eabihf tuplesYann E. MORIN"1-0/+4
Toolchains that use the hard-float ABI now are to be denoted by a tuple ending in *eabihf, while the prevbious *eabi is now an indication that the toolchain uses the softfloat ABI. This is purely a cosmetic thing, for distros to differentiate their hardfloat-ABI ports from their softfloat-ABI ports. (note: softfloat ABI does not mean that it is using softfloats; it can be using hardfloat instructions, but using the softfloat ABI). Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-09-20arch/microblaze: add new architectureDavid Holsgrove1-0/+21
Add Microblaze architecture support. This depends on EXPERIMENTAL, as upstream projects do not yet include full support to build a modern microblaze compiler. This is in the process of being updated, but is not currently publicly accessible. Signed-off-by: "David Holsgrove" <david.holsgrove@xilinx.com> Message-Id: <9c93e18b3d68b19303f3.1348113870@localhost.localdomain> PatchWork-ID: 185305
2011-11-20arch/sh: use endian string in testsYann E. MORIN"1-3/+3
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-11-20arch/mips: use endian string in testsYann E. MORIN"1-3/+3
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-11-14arch/sh: use the floating-point string option in testsYann E. MORIN"1-3/+8
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-11-17arch/x86: prescott is an i686Titus von Boxberg1-0/+1
let CT_ARCH_ARCH=prescott result in a i686 tuple prefix Signed-off-by: Titus von Boxberg <titus@v9g.de>
2011-10-16arch/powerpc: fix tuple for uClibcYann E. MORIN"1-5/+8
Changeset #7c288c777455 broke the tuple for uClibc-based powerpc toolchains, by unconditionally forcing CT_TARGET_SYS to "gnu". Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-09-17gcc: add support for the PowerPC EABIYann E. MORIN"1-5/+11
Signed-off-by: Mircea Gherzan <mgherzan@gmail.com> [yann.morin.1998@anciens.enib.fr: rm trailing space] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-17misc: fix typosYann E. MORIN"2-2/+2
Reported-by: "Antony N. Pavlov" <antony@niisi.msk.ru> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-03arch/sparc: add absic supportYann E. MORIN"1-0/+8
Add support for building SPARC targeted toolchain. With this patch I have built a working sparc V8 (32 toolchain). Testing shows that not all gcc versions works well: 4.4.1 OK (kernel builds and the final kernel can boot) 4.4.2 Not tested 4.4.3 Not tested 4.4.4 BAD (Kernel can build but fails during boot) 4.4.5 BAD (Kernel can build but fails during boot) 4.5.1 BAD (Build fails with a spill related ICE - http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35664) 4.5.2 OK (kernel builds and boots) I have successfully been using the 4.5.2 version for a few months. This patch does not add support for the LEON variant. That may come later. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> [yann.morin.1998@anciens.enib.fr: for 32-bit, default CT_TARGET_ARCH is OK] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-03arch: remove ia64Yann E. MORIN"1-6/+0
ia64 is broken in every gcc/glibc combinations I tested (except for the existing sample that used very old versions). Nobody complained on the list about not being able to build recent versions. So the only way forward I can see is to remove the architecture altogether. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-09-12arch/mips: add option for MIPS ABIsYann E. MORIN"1-0/+4
This adds selection for one of the o32, n32 and n64 ABIs. Later, we can easily use those boolean options, rather than relying on a user-supplied string option. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-04-25arch/sh: fix type in variant handlingYann E. MORIN"1-1/+1
2010-04-07Add basic support for the Blackfin architectureThomas Petazzoni1-0/+14
For uClibc, the name of the Blackfin architecture is 'bfin'. Actually, the naming of the architecture is quite messy: for toolchain tuples and uClibc, it's bfin, but for the kernel, it's blackfin. We've arbitraly choosen to name it "blackfin" in Crosstool-NG. Add Blackfin-related uClibc patch to fix a build failure related to fork() being used in unistd/daemon.c. Yann E. MORIN: Apply the patch to the kernel/linux build script to use 'linux' in the noMMU tuples. See: http://sourceware.org/ml/crossgcc/2010-04/msg00010.html
2010-02-20arch: add mips64Zhuang Yuyao1-2/+7
This adds initial mips64 config option and build script.
2010-01-29arch: add basic m68k supportYann E. MORIN1-0/+5
Signed-off-by: Remy Bohmer <linux@bohmer.net> [yann.morin.1998@anciens.enib.fr: use defaults for CT_TARGET_ARCH] Signed-off-by: "Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
2010-01-09arch/alpha: cleanup Alpha codeYann E. MORIN"1-3/+0
2009-11-17arch/s390: commonalise the 32- and 64-bit s390 archYann E. MORIN"2-8/+4
2009-11-17arch/x86: commonalise the 32- and 64-bit x86 archYann E. MORIN"2-22/+16
2009-11-17arch/ppc: commonalise the 32- and 64-bit PowerPC archYann E. MORIN"3-26/+19
2009-11-16arch/s390: cleanupsYann E. MORIN"2-8/+3
Don't select unneeded config knobs. Don't select non-existing config knobs. Use the "no patch" config knob, instead of pointing to an non-exiting local patch dir. Simplify the tuple-related scripts. Update the samples.
2009-11-14arch: add s390 and s390x architectures and samplesharold2-0/+17
2009-10-26arch/arm: add THUMB interworking supportYann E. MORIN"1-0/+4
Add config option to build wtarget code with THUMB interworking. This is used to build the C library as well as all other code that runs on the target.
2009-10-26arch/arm: add THUMB mode config optionYann E. MORIN"1-0/+10
2009-10-21arch/arm: no need to check for the ABI optionYann E. MORIN"1-4/+0
The ABI option can not be set if EABI was selected, so no need to check for it.
2009-10-21libc/newlib: allow using newlib with archs other than avr32Yann E. MORIN"1-1/+1
2009-05-22Added initial AVR32 support (bare-metal,newlib)Martin Lund"1-0/+16
2009-01-31Add support for powerpc64, along with an EXPERIMENTAL sample.Yann E. MORIN"3-20/+26
/trunk/scripts/build/arch/powerpc64.sh | 21 1 20 0 - /trunk/scripts/build/arch/powerpc.sh | 21 1 20 0 - /trunk/samples/powerpc64-unknown-linux-gnu/crosstool.config | 388 388 0 0 +++++++++++++++++++ /trunk/samples/powerpc64-unknown-linux-gnu/reported.by | 3 3 0 0 + /trunk/config/arch/powerpc-powerpc64.in-common | 12 4 8 0 - /trunk/config/arch/powerpc.in | 15 0 15 0 - /trunk/config/arch/powerpc64.in | 19 3 16 0 - 7 files changed, 400 insertions(+), 79 deletions(-)
2008-10-23Architecture API change:Yann E. MORIN"8-8/+8
- rename the tuple function /trunk/scripts/build/arch/mips.sh | 2 1 1 0 +- /trunk/scripts/build/arch/sh.sh | 2 1 1 0 +- /trunk/scripts/build/arch/x86_64.sh | 2 1 1 0 +- /trunk/scripts/build/arch/arm.sh | 2 1 1 0 +- /trunk/scripts/build/arch/powerpc.sh | 2 1 1 0 +- /trunk/scripts/build/arch/ia64.sh | 2 1 1 0 +- /trunk/scripts/build/arch/alpha.sh | 2 1 1 0 +- /trunk/scripts/build/arch/x86.sh | 2 1 1 0 +- /trunk/scripts/functions | 12 7 5 0 +++++++----- 9 files changed, 15 insertions(+), 13 deletions(-)
2008-10-05Separate the architecture config file and function script.Yann E. MORIN"8-0/+126
/trunk/kconfig/kconfig.mk | 46 23 23 0 +++++++++++++++++++++++----------------------- /trunk/scripts/crosstool.sh | 2 1 1 0 +- /trunk/docs/overview.txt | 28 11 17 0 +++++++++++----------------- 3 files changed, 35 insertions(+), 41 deletions(-)