summaryrefslogtreecommitdiff
path: root/scripts/build/companion_libs
AgeCommit message (Collapse)AuthorFilesLines
2015-11-30PPL: Remove support for PPL and CLooG/PPLBryan Hundven2-198/+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>
2015-11-17Merge pull request #268 from bhundven/consistent_usage_of_found_appsBryan Hundven11-30/+30
consistency: Use exported variables of required tools
2015-11-17consistency: Use exported variables of required toolsBryan Hundven11-30/+30
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>
2015-11-16ncurses: bump to ncurses-6.0Bryan Hundven1-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>
2015-11-15file modes: Fix file modes... again.Bryan Hundven2-0/+0
These files are sourced, not executed, and do not need to be executable. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-13Update new companion libs with *_for_target.Alexey Neyman2-0/+2
Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-13Pass CFLAGS/LDFLAGS to backends.Alexey Neyman2-1/+11
Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-13Enable building expat/ncurses for host.Alexey Neyman2-0/+52
Then re-enable cross-gdb for nios2-spico-elf sample, previously disabled.
2015-11-13Change ncurses to a companion library.Alexey Neyman1-0/+109
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>
2015-11-13Convert expat for target into a companion lib.Alexey Neyman1-0/+67
Expat-for-host to be done. Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-13Build companion libs for target.Alexey Neyman6-3/+9
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>
2015-11-13Add gettext and libiconv as companion libsRay Donnelly2-0/+249
.. 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>
2015-11-12mpfr: Swap primary mirror to gnu.orgBryan Hundven1-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>
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-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>
2014-12-23gmp: Disable --enable-mpbsd if version is >= 5.0.2Bryan Hundven1-2/+7
closes #12 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-08scripts: Update download locationsBryan Hundven6-11/+13
This change updates the download locations to default to the official download site. For gcc and gdb, also separate out the linaro download locations so that if you are downloading the linaro variant, it skips trying to download from the official gcc mirror. This commit closes #3 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-08-01complibs/isl: add HTTP mirrorMichael Hope1-1/+2
Add well-known HTTP mirror as a fallback. This lets crosstool-ng work when behind a HTTP/HTTPS only proxy. Signed-off-by: Michael Hope <michaelh@juju.net.nz> [me: split original patch in two] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Message-Id: <aeb4a850d0786ee62dc2.1375559989@wanda> Patchwork-Id: 264436
2013-05-04complibs/cloog: add support for the ISL backendYann E. MORIN"1-22/+49
CLooG 0.18+ will use ISL instead of PPL, so we have to configure adequately depending of which backend is in use. The Kconfig entries will decide for us which is selected, so we can rely on either PPL xor ISL to be selected, not both. Reported-by: "Plotnikov Dmitry" <leitz@ispras.ru> [Dmitry did a preliminray patch to add ISL support, which this patch is inspired from] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2013-05-03complibs: add ISLYann E. MORIN"1-0/+128
ISL is used by gcc-4.8 onward for GRAPHITE, so is also used as backend for CLooG 0.18.0 onward. Reported-by: "Plotnikov Dmitry" <leitz@ispras.ru> [Dmitry did a preliminray patch to add ISL, which this one is inspired from] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2013-04-13complibs/ppl: only add -fpermissive flag to CXXFLAGSSamuel Martin1-3/+10
-fpermissive is not a valid option to gcc. Adding it to the CFLAGS make the ppl checks fail with the following error: [ALL ] Making check in tests [ALL ] cc1: warnings being treated as errors [ERROR] cc1: error: command line option "-fpermissive" is valid for C++/ObjC++ but not for C [ALL ] cc1: warnings being treated as errors [ERROR] cc1: error: command line option "-fpermissive" is valid for C++/ObjC++ but not for C [ERROR] make[7]: *** [formatted_output.o] Error 1 Signed-off-by: "Samuel Martin" <smartin@aldebaran-robotics.com> Message-Id: <bba2482a06a11415207e.1365876457@smartin-de-2.aldebaran.lan> Patchwork-Id: 236383
2013-02-15complibs/ppl: update upstream locationYann E. MORIN"1-4/+2
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-12-09complibs/ppl: fix build with newer gccYann E. MORIN"1-2/+14
ppl-0.10.x does not build with gcc-4.6+, as it uses constructs that were warnings with gcc-4.5 and before, but are now errors with gcc-4.6 and above. Fix that by passing -fpermissive in CFLAGS for ppl 0.10. Reported-by: Jeremy Rosen <jeremy.rosen@openwide.fr> Reported-by: Peter Korsgaard <jacmet@uclibc.org> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-11-16scripts: add BUILD/HOST extra cflags/ldflagsYann Diorcet6-7/+43
On some hosts, and for certain toolchains (eg. toolchain targetting the upcoming Darwin), it may be necessary to pass arbitrary CFLAGS and/or LDFLAGS when building the components. And necessary infrastructure: - EXTRA_{CFLAGS,LDFLAGS}_FOR_{BUILD,HOST} as config options - pass those extra flags to components Fix-up a slight typo in elf2flt at the same time (misnamed cflags). Signed-off-by: Yann Diorcet <diorcet.yann@gmail.com> Message-Id: <d24043276c9243a35421.1353077450@macbook-smorlat.local> Patchwork-Id: 199645
2012-11-16complibs: introduce generic multi-complibs infrastructureYann Diorcet (diorcet yann6-0/+0
Use the same method as companion tools for providing generic and extendable companion libs. Signed-off-by: Yann Diorcet <diorcet.yann@gmail.com> Message-Id: <515c5c4635d99ebe4877.1353074410@macbook-smorlat.local> Patchwork-Id: 199613
2012-07-31complibs/cloog: create missing m4 dirYann E. MORIN"1-0/+3
Because we now patch configure.in and configure, the Makefile quicks in a re-build rule as the source files are now more recent than the bundled generated files, and that fails because the m4 directory is missing, although on some systems where aclocal is not installed, the re-build rule does nothing (except a warning). Always create tht directory. Reported-by: Per Arnold Blaasmo <per-arnold.blaasmo@atmel.com> [Also thanks to Thomas De Schampheleire <patrickdepinguin@gmail.com> for some digging works on this issue] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2011-07-25complibs: fixup the host complibs install dirYann E. MORIN"6-6/+6
It's easier to have as much as possible stuff in the same place to ease backup/restore, and make things easier to follow. Move the host companion libraries install dir as a sub-dir of the build-tools install dir (but not directly in it, it would break for canadian or cross-native). Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-24complibs: add frontends for building to run on the build machineYann E. MORIN"6-0/+138
In canadian-cross, we need the companion libraries running on the build machine, to be able to build the two core gcc. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-17complibs: split companion libraries to backend/frontend, a-la cc_coreYann E. MORIN"6-103/+235
Move the actual complibs codes to backend functions that builds the required combo of build/host/target as requested by a frontend. This split is currently a no-op, but is required for the upcoming canadian-cross rework, where we'll be needing to build the complibs twice, one for build/build, and one for build/host. This applies to the six companion libraries: - GMP - MPFR - PPL - Cloog/PPL - MPC - libelf Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-03complibs/libelf: rename libelf for target functionYann E. MORIN"1-2/+2
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-27complibs/cloog: fix linking with libmBenoît Thébaudeau"1-1/+1
In Ubuntu 11.04 and 11.10, the default options for ld have changed. --no-copy-dt-needed-entries and --as-needed are now enabled by default, which causes errors like: [EXTRA] Checking CLooG/ppl [DEBUG] ==> Executing: 'make' '-j3' '-s' 'check' [ALL ] Making check in . [ALL ] config.status: creating include/cloog/cloog-config.h [ALL ] config.status: include/cloog/cloog-config.h is unchanged [ALL ] libtool: link: i686-build_pc-linux-gnu-gcc -Wall -fomit-frame-pointer -pipe -o cloog cloog.o -L/<snip>/build/static/lib ./.libs/libcloog.a -lm /<snip>/build/static/lib/libppl_c.a /<snip>/build/static/lib/libpwl.a /<snip>/build/static/lib/libppl.a /<snip>/build/static/lib/libgmpxx.a /<snip>/build/static/lib/libgmp.a -lstdc++ [ALL ] /usr/bin/ld: /<snip>/build/static/lib/libppl.a(MIP_Problem.o): undefined reference to symbol 'sqrt@@GLIBC_2.0' [ALL ] /usr/bin/ld: note: 'sqrt@@GLIBC_2.0' is defined in DSO /usr/lib/gcc/i686-linux-gnu/4.6.1/../../../i386-linux-gnu/libm.so so try adding it to the linker command line [ALL ] /usr/lib/gcc/i686-linux-gnu/4.6.1/../../../i386-linux-gnu/libm.so: could not read symbols: Invalid operation [ALL ] collect2: ld returned 1 exit status [ERROR] make[2]: *** [cloog] Error 1 [ERROR] make[1]: *** [check-recursive] Error 1 See: https://wiki.ubuntu.com/NattyNarwhal/ToolchainTransition This patch fixes these errors by placing '-lm' at the right place on the command line as libppl requires libm when linking cloog. Signed-off-by: "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
2011-10-16complibs/cloog: auto-reconf for 0.15.10 and laterYann E. MORIN"1-1/+1
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-10-16complibs/cloog: fix extractionYann E. MORIN"1-18/+9
In the early days, cloog-ppl was bizarrely packaged: the first tarball did not contain the version in the name of the extracted directory, so we had to play tricks. Nowadays, however, the first component of the path are stripped when extracting a tarball, which means that the created directory will always be properly named. So, our old tricks do no longer work, and worse, they break the build. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-10-09complibs/cloog: catch autogen.sh's outputYann E. MORIN"1-1/+1
Run autogen.sh through CT_DoExecLog to catch its output. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-21complibs/libelf: use target ranlibTitus von Boxberg"1-0/+1
For portability, the right ranlib for the target must be passed to libelf's configure. Signed-off-by: "Titus von Boxberg" <titus@v9g.de>
2011-05-19complibs/ppl: build only C and C++ interfaces for PPLAnthony Foiani1-1/+1
By default, PPL wants to build interfaces for any of a variety of langauges it finds on the local host (python, java, possibly perl, also more esoteric languages such as ocaml and prolog). These extra interfaces can double the compile time for the library. For single-process builds, I found a savings of more than 40%: default / j1: 716s total, 143.2s avg, 0.52s stdev just_c / j1: 406s total, 81.2s avg, 0.33s stdev just_c_cpp / j1: 413s total, 82.6s avg, 0.22s stdev And for multi-process builds, it approached 50%: default / j4: 625s total, 125.0s avg, 0.57s stdev just_c / j4: 338s total, 67.6s avg, 1.25s stdev just_c_cpp / j4: 327s total, 65.4s avg, 0.36s stdev Since the PPL we build within ct-ng is only used by GCC, we only need to build the C and C++ interfaces. Signed-Off-By: Anthony Foiani <anthony.foiani@gmail.com>
2011-05-19complibs/ppl: remove unnecessary (and confusing) --enable-cxx configure switch.Anthony Foiani1-1/+0
PPL does not use the "--enable-cxx" configure switch at all; it's possibly a cut-and-paste leftover from 'gmp.sh'. (PPL is written in C++ natively, so it doesn't make much sense to have to enable C++; GMP, on the other hand, is written in C with an optional C++ wrapper.) Signed-Off-By: Anthony Foiani <anthony.foiani@gmail.com>
2011-05-19complibs/ppl: update GMP location configuration argument for PPL v0.11 and laterAnthony Foiani1-0/+1
'configure' for PPL 0.11 (and later) needs "--with-gmp-prefix" to provide the location of the GMP toolkit; the previous switches were "--with-libgmp-prefix" and "--with-libgmpxx-prefix". The upstream log message is: commit 08dfb6fea094f8c5a533575a3ea2095edce99a6d Author: Roberto Bagnara <bagnara@cs.unipr.it> Date: Sun Jul 12 21:39:46 2009 +0200 New configure option --with-gmp-prefix supersedes the (now removed) options --with-libgmp-prefix and --with-libgmpxx-prefix. Link: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=08dfb6fea094f8c5a533575a3ea2095edce99a6d Since PPL's 'configure' ignores unknown switches, we use all three so we don't have to conditionalize the ppl.sh build script itself. Signed-Off-By: Anthony Foiani <anthony.foiani@gmail.com>
2011-04-06complibs: disable building shared libsYann E. MORIN"6-55/+14
Managing the shared version of the companion libraries has become cumbersome. Also, it will one day be possible to use the companion libraries from the host distribution, and then we will be able to easily use either shared or static libs. As a side note, while working on the canadian-rework series, it has become quite more complex to properly handle shared companion libraries, as they need to be built both for the build and gost systems. That's not easy to handle. At all. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-26complibs/ppl: build watchdog libraryYann E. MORIN"1-0/+2
gcc-4.6+ requires the Parma Watchdog Library (libpwl). Build it and use it. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20complibs/libelf: log even moreYann E. MORIN"1-2/+2
Also log variable assignement for single commands. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20complibs/mpc: log even moreYann E. MORIN"1-1/+1
Also log variable assignement for single commands. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20complibs/cloog: log even moreYann E. MORIN"1-1/+1
Also log variable assignement for single commands. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20complibs/ppl: log even moreYann E. MORIN"1-1/+1
Also log variable assignement for single commands. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20complibs/mpfr: log even moreYann E. MORIN"1-1/+1
Also log variable assignement for single commands. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20complibs/gmp: log even moreYann E. MORIN"1-1/+1
Also log variable assignement for single commands. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-03complibs/libelf: use log level CFG for ./configureYann E. MORIN"1-1/+1
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22scripts: PARALLELMFLAGS is evil, renameYann E. MORIN"5-10/+10
The reunification of the glibc/eglibc code paths exposed a nasty bug in the glibc build: use of PARALLELMFLAGS breaks the build. See the explanations in that bug report against FC6: https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=212111 Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-13complibs/cloog: regenerate autostuff filesYann E. MORIN"1-0/+3
Latest version of CLooG does not have properly generated autoconf files, so they need to be regenerated before the call to ./configure Signed-off-by: "Ilya A. Volynets-Evenbakh" <ilya@total-knowlege.com> [yann.morin.1998@anciens.enib.fr: make it conditional on 0.15.10 only] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-29complibs/libelf: build with -fPICYann E. MORIN"1-0/+2
libelf is used by gcc to build the lto-plugin used by binutils' gold to perform LTO. This requires that files in libelf be compiled with -fPIC to generate a proper .so. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>