A versatile (cross-)toolchain generator.
Go to file
Alexey Neyman 34ecc718d9 arch/all: Add common function to return multilib target
This code was abstracted out of Cody P Schafer's multilib patch.
It doesn't seem right having architecture dependent code in a
specific libc implementation script. So this patch breaks it out into
scripts/build/arch/<arch>.sh in a function:

  multilib_target_to_build="$(CT_DoArchMultilibTarget 'multi_flags'
'target-in')"

Note that this function gets called on each multilib variant with
different sets of compiler flags supplied in 'multi_flags'. The caller
will first filter the flags so that there is no conflicting flags (e.g.,
no '-m32 -m64') supplied.

Changed by Alexey Neyman:
- make option analysis check specific option rather than match global
  options string as a whole. Moreover, old code did not handle multiple
  options in the same multilib, e.g. '-m64 -mlittle'.
- fixed substitutions in powerpc.sh (*le variants did not match the
  pattern in the shell parameter expansion)
- make s390.sh actually apply the flags it gathered from the options.
- straighten the spaghetti in x86.sh by setting two flags, arch & abi.
  Also, do not depend on "gnu" being the last part - we can have
  '*-uclibcx32', for example.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
Signed-off-by: Ray Donnelly <ray.donnelly@gmail.com>
Signed-off-by: Alexey Neyman <stilor@att.net>
2016-06-09 17:12:49 -07:00
config gcc: Add --with-multilib-list option 2016-06-09 17:12:49 -07:00
contrib uClibc: Fall back to default configs if not provided 2015-11-12 16:15:41 -08:00
debian Add initial debian packaging info 2015-12-18 15:15:06 +03:00
docs PPL: Remove support for PPL and CLooG/PPL 2015-11-29 17:36:58 -08:00
kconfig configure: Correctly search for tinfo for kconfig 2015-11-14 23:14:44 -08:00
licenses.d Rename directory "licenses" to "licenses.d" for those filesystems unable to handle lower/upper case. 2007-03-11 09:46:22 +00:00
patches patches/gcc: Backport fix for building gcc-5 with gcc-6 2016-05-13 11:54:54 -07:00
samples Mark x86_64-w64-mingw32,x86_64-pc-linux-gnu broken. 2016-04-01 18:15:39 -07:00
scripts arch/all: Add common function to return multilib target 2016-06-09 17:12:49 -07:00
.gitignore Add new temp directory to .gitignore. 2015-10-30 16:24:52 -07:00
.travis.sh Whitespace: We don't use tabs in shell or kconfig files 2015-12-08 10:55:17 -08:00
.travis.yml travis-ci: Add aarch64-unknown-linux-gnueabi 2016-03-03 09:33:26 -08:00
bootstrap configure: use autoconf to generate configure 2011-11-07 22:28:40 +01:00
configure.ac configure: Don't write a.out on static compiler check 2016-03-03 09:51:32 -08:00
COPYING Update and clarify COPYING (plus a typo). 2008-09-14 18:20:03 +00:00
ct-ng.comp kconfig: Update kconfig. Sync with Linux-4.2 2015-09-03 19:00:28 -07:00
ct-ng.in Merge pull request #233 from stilor/fix-build-all 2015-11-04 02:50:05 -08:00
LICENSES Add the full crosstool-NG sources to the new repository of its own. 2007-02-24 11:00:05 +00:00
Makefile.in Makefile.in: Fix uninstall target 2015-11-19 14:30:20 -08:00
README.md Update README.md 2016-02-15 01:17:24 -08:00
steps.mk Build companion libs for target. 2015-11-13 10:24:22 -08:00
TODO gcc: Support only the latest branch releases of gcc 2015-10-31 12:17:35 -07:00

Crosstool-NG Build Status

Crosstool-NG follows the autoconf dance. So, to get you kick-started, just run:

./configure --help

If you are using a development snapshot, you'll have to create the configure script, first. Just run:

./bootstrap

You will find the documentation in the directory docs. Here is a quick overview of what you'll find there:

  1. Table of content
  2. Introduction
  3. Installing crosstool-NG
  4. Configuring a toolchain
  5. Building the toolchain
  6. Using the toolchain
  7. Toolchain types
  8. Contributing
  9. Internals
  1. Credits
  2. Known issues
  3. Misc. tutorials

You can also point your browser at: http://crosstool-ng.org

Aloha!

irc: irc.freenode.net #crosstool-ng

mailing list