summaryrefslogtreecommitdiff
path: root/scripts/build/companion_libs
AgeCommit message (Collapse)AuthorFilesLines
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>
2010-12-03complibs/libelf: use host compilerKalle Kankare1-0/+1
It appears, that the configure scripts of libelf versions 0.8.13 and 0.8.12 do not honour the --host option. The compiler must be given as an environment variable or the process will use the command "gcc" as the compiler. It seems that this is already done in the function do_libelf_target in scripts/build/companion_libs/libelf.sh, but not in function do_libelf.
2010-11-28complibs/cloog: fix linking with libstdc++Yann E. MORIN"1-1/+2
This rules out 0.15.5 and previous versions, that did not have this option, so remove them from the list. Anyway, they were marked 'OBSOLETE', so it's not a big loss... [Yann E. MORIN: remove obsolete versions] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-18complibs/CLooG: only install the librariesYann E. MORIN"1-5/+2
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-22scripts: add "FILE" and "CFG" debug levels.Anthony Foiani6-6/+6
I ran into some minor difficulties looking through the build log for a particular file: I wasn't interested in seeing it unpacked, but only when it is built or installed. Adding these two levels allows me to differentiate between those cases. [Yann E. MORIN: Those are blind log levels, and are used only to search in the build-log afterward.] Signed-off-by: Anthony Foiani <anthony.foiani@gmail.com>
2010-08-23complibs: noone is using companion libs on the target; nuke themYann E. MORIN"5-89/+2
As there's no longer any user of the companion libraries on the target, nuke the build for the target. Well, at least, there's libelf that's still needed by ltrace, so we keep it. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-05complibs/cloog: with static ppl, correctly link with libmYann E. MORIN"1-1/+1
On some Fedora boxen (at least FC13), it is also required to link with libm when static ppl is used. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-04-15complibs/libelf: enable the host buildYann E. MORIN"1-37/+33
Host libelf is required by gcc-4.5.0
2010-04-15complibs/libelf: build target libelf in its own directoryYann E. MORIN"1-2/+2
2010-04-12Merge.Yann E. MORIN"1-1/+1