aboutsummaryrefslogtreecommitdiff
path: root/scripts/build
Commit message (Collapse)AuthorAgeFilesLines
...
* expat: Tidy up and correct configure flagsRay Donnelly2016-01-031-9/+24
| | | | | | | | | | | Build shared builds for host unless CT_STATIC_TOOLCHAIN. In all other situations, build statically, as before. It is necessary that the static/shared-ness of expat matches that of gettext on Cygwin/MinGW-w64 as they can't be linked together if they don't match, so we follow the same logic. Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
* gcc: Add new linaro download pathBryan Hundven2016-01-021-3/+4
| | | | | | It seems that linaro is changing where they release, again. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* binutils: Fix installing libiberty for targetBryan Hundven2016-01-021-0/+4
| | | | | | | | | | If CT_BINUTILS_FOR_TARGET_IBERTY is set, then it seems that we also must set `--enable-install-libiberty` for configure to pickup that it needs to be installed. This closes #302 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* Whitespace: We don't use tabs in shell or kconfig filesBryan Hundven2015-12-084-35/+35
| | | | | | | We indent by multiples of 4. This change cleans up whitespace in offending files. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* scripts: Update usage of CT_GetCustomBryan Hundven2015-12-089-89/+29
| | | | | | | This commit updates the build scripts to match the new usage of CT_GetCustom from the previous change. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* Linux: Remove obsolete Linux custom headersBryan Hundven2015-12-081-47/+3
| | | | | | | | | | | This option allowed you to use a custom headers directory/tarball to use in your sysroot. Not to be confused with using a custom source, that option is the preferred method. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
* xtensa: Remove support for CT_CUSTOM_LOCATION_ROOT_DIRBryan Hundven2015-12-081-7/+1
| | | | | | | | | Since CUSTOM_LOCATION_ROOT_DIR was removed from config/global/paths.in in commit c499ccb, xtensa should depend only on it's ARCH_XTENSA_CUSTOM_OVERLAY_LOCATION. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
* Merge pull request #282 from bhundven/less_gcc_versions_part2Bryan Hundven2015-12-073-239/+32
|\ | | | | Less gcc versions part2
| * gcc: Gnu OpenMP support depends on threadingBryan Hundven2015-11-291-1/+0
| | | | | | | | | | | | | | | | Instead of checking if thread support is enabled during the build, move the check to kconfig-time. Since if threading support is not availble, libgomp should not be available either. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
| * gcc: CLooG should be optional for configureBryan Hundven2015-11-291-2/+6
| | | | | | | | | | | | | | | | | | Because >= gcc-5.x does not require cloog, it should not be forced on the command line arguments for configure if graphite is enabled. Make CLooG optionally added, if it is needed (aka: <= gcc-4.9). Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
| * PPL: Remove support for PPL and CLooG/PPLBryan Hundven2015-11-293-216/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that versions of gcc that required PPL are no longer supported ( >= gcc-4.5.x AND <= gcc-4.7.x ) ...we no longer require PPL or CLooG/PPL. This commit: * Removes PPL * Removes CLooG/PPL * Updates the documentation * Updates build script for CLooG and GCC * Removes PPL and CLooG/PPL from scripts/addToolVersion.sh and scripts/showSamples.sh * Adds ISL to scripts/addToolVersion.sh and scripts/showSamples.sh I know that sounds like a lot for one commit, but it was all kind of inter-tangled. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
| * gcc: Remove gcc <= 4.7.xBryan Hundven2015-11-291-21/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per #222, in crosstool-NG >= 1.23.0, we will only support: [upstream supported gcc versions] - 1 As of this writing, these versions are: * 5.2.0 * 4.9.3 * 4.8.5 (the -1, since development on 4.8.x is now closed) I plan to keep 4.8.5 around because of some architectures having issues with over-optimization or just faulty optimization in the 4.9.x and possibly newer versions. I also cleaned up a requirement for glibc to depend on >= gcc-4.6.x for >= glibc-2.20, but since the lowest gcc we support after this change is >= 4.8.5, this condition can go away. Patches for older gcc versions are removed in the next commit. This closes #222 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* | binutils: Fix LDFLAGS for static toolchainBryan Hundven2015-12-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | If building a static toolchain, the ldflags option passed to do_binutils_backend is overridden when we set `LDFLAGS=-all-static`. We should pass `LDFLAGS=${ldflags} -all-static` in this case. This fixes #297 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* | binutils: Fix binutils manuals_install variableBryan Hundven2015-12-051-2/+2
|/ | | | | | | | | In commit: 74d555b2 A regex in a parameter subsitution replaces a '#' hash symbol, but it is not made literal '\#', so from the hash to the end of the line is a comment. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* binutils/gdb: Fix configure options when building from binutils-gdb repoBryan Hundven2015-11-242-0/+19
| | | | | | | | | | | | When building from: {git,http}://sourceware.org/git/binutils-gdb.git and setting BINUTILS_CUSTOM or GDB_CUSTOM, they could be the same source. These config options should not affect normal released versions. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* uClibc: Add kconfig option to enable IPv6 supportBryan Hundven2015-11-221-0/+7
| | | | | | This commit adds a kconfig option to enable IPv6 support. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* Clang: Use {C,CXX}FLAG -fbracket-depth=512 for GCC buildRay Donnelly2015-11-221-0/+13
| | | | | | | https://llvm.org/bugs/show_bug.cgi?id=19650 https://gcc.gnu.org/ml/gcc/2014-05/msg00014.html Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
* uClibc: remove references to sh64*Bryan Hundven2015-11-211-1/+0
| | | | | | | | | | | As per the change notes of GCC-6: https://gcc.gnu.org/gcc-6/changes.html and conversations I've had with the buildroot folks, there is no need to support sh5/sh64. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* Merge pull request #268 from bhundven/consistent_usage_of_found_appsBryan Hundven2015-11-1733-173/+173
|\ | | | | consistency: Use exported variables of required tools
| * consistency: Use exported variables of required toolsBryan Hundven2015-11-1733-173/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We check for apps: * make * sed * grep * awk * libtool/libtoolize * install * patch * and more ...during configure. Our scripts should be consistent about using the variables that define where the found tool was found. Of course, we do hard-link these tools in buildtools, but that should be a backup for the components we are building. Our scripts should always use the tools we find. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* | ncurses: bump to ncurses-6.0Bryan Hundven2015-11-161-0/+4
|/ | | | | | | | | This commit removes ncurses-5.9 and adds 6.0. I also provide the stable patch updates in patches/ncurses/6.0. I have also added an experimental toggle for enabling the new ABI support. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* file modes: Fix file modes... again.Bryan Hundven2015-11-143-0/+0
| | | | | | These files are sourced, not executed, and do not need to be executable. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* Update new companion libs with *_for_target.Alexey Neyman2015-11-132-0/+2
| | | | Signed-off-by: Alexey Neyman <stilor@att.net>
* Pass CFLAGS/LDFLAGS to backends.Alexey Neyman2015-11-132-1/+11
| | | | Signed-off-by: Alexey Neyman <stilor@att.net>
* Clean up 300-gdb.sh a bit.Alexey Neyman2015-11-131-52/+31
| | | | | | | Now that expat/curses have migrated into separate script, no need for do_debug_gdb_parts() and need_gdb_src checks. Signed-off-by: Alexey Neyman <stilor@att.net>
* Enable building expat/ncurses for host.Alexey Neyman2015-11-133-2/+54
| | | | | Then re-enable cross-gdb for nios2-spico-elf sample, previously disabled.
* Change ncurses to a companion library.Alexey Neyman2015-11-132-112/+110
| | | | | | | | | | | Currently, builds for build and target (matching the current implementation). Need to add building for host for canadian crosses. TIC_PATH is removed - configure in ncurses searches $PATH, so it finds 'tic' in buildtools anyway. Arguably unneeded code for MacOS also removed, with a FIXME comment for validation by someone using MacOS. Signed-off-by: Alexey Neyman <stilor@att.net>
* Convert expat for target into a companion lib.Alexey Neyman2015-11-132-53/+67
| | | | | | Expat-for-host to be done. Signed-off-by: Alexey Neyman <stilor@att.net>
* Build companion libs for target.Alexey Neyman2015-11-137-3/+16
| | | | | | | Currently, only libelf has a for-target step - but it generalizes the step to hook other libraries into this step. Signed-off-by: Alexey Neyman <stilor@att.net>
* xtensa: add support for the configurable Xtensa architecture.Chris Zankel2015-11-135-0/+99
| | | | | | | | | | | | | | | 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>
* Merge pull request #239 from diorcety-ctng/cc-cygwin-mingw-linuxBryan Hundven2015-11-124-1/+264
|\ | | | | Canadian cross build = x86_64 Cygwin host = x86_64 MinGW_W64 target = x86_64 GNU/Linux
| * libtool: Update to 2.4.6 and patch for CygwinRay Donnelly2015-11-131-1/+1
| | | | | | | | Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
| * Add gettext and libiconv as companion libsRay Donnelly2015-11-133-0/+263
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | .. they're needed for the RPC generation in glibc on both Cygwin and MinGW-w64. Neither are built on GNU/Linux and iconv is not built on Darwin. Two patches for gettext are needed, one so that -O0 works and one so that static builds can be made. They can take a good while to build, so if not needed for_host or for_build then they are not built. Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
* | Merge pull request #245 from villytiger/install-stripBryan Hundven2015-11-122-2/+6
|\ \ | | | | | | Use install-strip target for gcc optionally
| * | Use install-strip target for gcc optionallyIlya Lyubimov2015-11-112-2/+6
| | |
* | | Merge pull request #221 from bhundven/uclibc-ngBryan Hundven2015-11-121-238/+199
|\ \ \ | |_|/ |/| | Add support for uClibc-ng
| * | uClibc: Fall back to default configs if not providedBryan Hundven2015-11-121-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I've added the .config files to contrib/uClibc-defconfigs from buildroot to use as default configs if they are not provided in the sample. If a particular architecture really needs an option set, it should be either updated in the manange_uClibc_config function in scripts/build/libc/uClibc.sh or a custom ${uclibc_name}.config should be added to the sample (usually via `ct-ng saveconfig`). Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
| * | uClibc: Add support for uClibc-ngBryan Hundven2015-11-121-10/+17
| | | | | | | | | | | | | | | | | | This commit adds uClibc-ng 1.0.8. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
| * | uClibc: rewrite mungeuClibcConfig to manage_uClibc_configBryan Hundven2015-11-121-219/+177
| | | | | | | | | | | | | | | | | | | | | | | | This commit updates uClibc to use the new CT_Kconfig options from the previous commit. The older sed method of sanity checking the uClibc .config was error prone and clumsy. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
| * | uClibc: Reduce supported versionsBryan Hundven2015-11-111-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This commit reduces the number of supported versions to: * 0.9.33.2 * custom location Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* | | mpfr: Swap primary mirror to gnu.orgBryan Hundven2015-11-111-2/+2
|/ / | | | | | | | | | | | | | | | | mpfr.org has been less then reliable, so lets make gnu.org the primary instead of the secondary source. This closes #250 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* / Disable parallel build of mingw-w64-crt.Alexey Neyman2015-11-101-1/+4
|/ | | | | | | Unfortunately, parallel build issue is not yet fixed in current mingw-w64 sources. Signed-off-by: Alexey Neyman <stilor@att.net>
* blackfin: Remove blackfin supportBryan Hundven2015-11-093-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>
* uClibc: Don't use CROSS, use CROSS_COMPILE insteadBryan Hundven2015-11-021-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>
* linux: Set CROSS_COMPILE while building/checking headersBryan Hundven2015-11-021-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>
* gcc: Support only the latest branch releases of gccBryan Hundven2015-10-312-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>
* Clean up *.la after installing compiler/libraries.Alexey Neyman2015-10-261-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>
* Using "all" and "install" targets in do_gcc_core_backend if configured.Jasmin Jessich2015-10-101-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>
* Merge pull request #187 from jasmin-j/sync_ltoBryan Hundven2015-10-071-0/+2
|\ | | | | Synchronize CC_GCC_USE_LTO parameter setting II
| * Synchronize CT_CC_GCC_USE_LTO parameter setting in do_gcc_backend with the oneJasmin Jessich2015-09-251-0/+2
| | | | | | | | | | | | from do_gcc_core_backend, by adding "--enable-lto"/"--disable-lto". Signed-off-by: Jasmin Jessich <jasmin@anw.