summaryrefslogtreecommitdiff
path: root/scripts/build/companion_libs
AgeCommit message (Collapse)AuthorFilesLines
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
2010-04-12Revert 3ea4e6f7b85f: Force autoreconf for mpfrYann E. MORIN"1-1/+1
It breaks on my machine. Revert until we find the exact cause leading to the initial patch, and we come up with a patch that properly fixes it.
2010-04-11scripts/functions: make CT_Patch dumberYann E. MORIN"6-6/+6
It is the responsibility of the caller to split the package name from its version. It already knows that.
2010-04-09[CT-NG:patch 05/19] Force autoreconf for mpfrBart vdr. Meulen1-1/+1
In some exotic case the autoreconf step of mpfr is not executed (correctly) leaving an incorrect version number for libtool in the configure script. After extracting the sources files, force autoreconf to be executed. Signed-off-by: Bart vdr. Meulen <bartvdrmeulen@gmail.com>
2010-04-11complibs: don't install in toolchain dir when built as staticYann E. MORIN"6-13/+13
2010-04-10complibs: allow either static or shared buildYann E. MORIN"6-25/+69
2010-04-10complibs: build static librariesYann E. MORIN"5-10/+11
2010-04-10config: replace COMP_LIBS with COMPLIBSYann E. MORIN"5-5/+5
2010-04-10complibs/mpfr: fix extractYann E. MORIN"1-1/+1
With MPFR 2.4.2, autoreconf needs to be run as well.
2010-02-17comp-libs: make libelf a companion libraryYann E. MORIN"1-0/+91
When gcc-4.5 is out, it will require libelf. So better make it a companion library now rather than postponing the ineluctable.
2010-02-17complibs: hide companion libraries for target entryYann E. MORIN"2-8/+16
The companion libraries on the target are required only for internal use by binutils and gdb. The user should not have to know about this, so hide the option.
2010-02-18complibs: simplify config fileYann E. MORIN"2-4/+4
Although currently the wrapper is directly dependent on companion libraries, let's still decorelate those two.
2010-02-17complibs: split-up selection for individual libsYann E. MORIN"5-12/+12
2010-02-02comp-libs/mpfr: fix build on DarwinTitus von Boxberg1-0/+1
2010-01-12scripts/functions: change handling of nochdirYann E. MORIN"1-1/+1
- 'nochdir' must be the first option - have systematic pushd/popd, even if nochdir
2009-09-13comp-libs/cloog: fix buildingYann E. MORIN"1-10/+19
For CLooG/PPL 0.15.3, the directory name was simply cloog-ppl. For any later versions, the driectory name does have the version, such as cloog-ppl-0.15.4.
2009-09-12comp-libs/cloog: new versions have the version number in the dir nameYann E. MORIN"1-1/+10
For CLooG/PPL 0.15.3, the directory name was simply cloog-ppl. For any later versions, the driectory name does have the version, such as cloog-ppl-0.15.4.
2009-08-02[complib:mpfr] Fix building MPFR in some weird casesOron Peled1-0/+9
The tmul test uses a compiled-in input file in $(srcdir). The problem is that the Makefile passes it unquoted. The C code tries to stringify it using clever macros, which may *usually* work. In my case the source directory was named: .../toolchain-powerpc-e500v2-linux-gnuspe-1.0-2.fc10/.../tests And guess what? During testing I found out the program fails because it tries to open: .../toolchain-powerpc-e500v2-1-gnuspe-1.0-2.fc10/.../tests Yes, CPP tokenized the macro before stringifying it and not surprisingly the 'linux' part was converted to 1. [on Fedora-10: cpp (GCC) 4.3.2 20081105 (Red Hat 4.3.2-7)] So the attached patch simplify the macros and pass the path as string from the Makefile.
2009-06-23Fix MPFR build to recognise the Mingw32 case.Bart van der Meulen1-1/+2
Once we have canadian in place, Mingw32 can be a legitimate host, so we have to recognise that along with Cygwin. Also fix recognising Cygwin hosts. Signed-off-by: Bart van der Meulen <bartvdrmeulen@gmail.com>
2009-06-01/devel/gcc-4.4:Yann E. MORIN"2-4/+4
- build shared CLooG/ppl and MPC libraries, don't build static ones. -------- diffstat follows -------- /devel/gcc-4.4/scripts/build/companion_libs/mpc.sh | 4 2 2 0 ++-- /devel/gcc-4.4/scripts/build/companion_libs/cloog.sh | 4 2 2 0 ++-- 2 files changed, 4 insertions(+), 4 deletions(-)
2009-06-01/devel/gcc-4.4:Yann E. MORIN"2-0/+6
- PPL, CLooG/PPL: remove uselessly installed files. -------- diffstat follows -------- /devel/gcc-4.4/scripts/build/companion_libs/ppl.sh | 3 3 0 0 +++ /devel/gcc-4.4/scripts/build/companion_libs/cloog.sh | 3 3 0 0 +++ 2 files changed, 6 insertions(+)
2009-05-25/devel/gcc-4.4:Yann E. MORIN"5-7/+7
- commonalise the config-knobs that: - enable checking the newly built companion libraries - enable building the companion libraries for the target -------- diffstat follows -------- /devel/gcc-4.4/scripts/build/companion_libs/ppl.sh | 2 1 1 0 /devel/gcc-4.4/scripts/build/companion_libs/mpc.sh | 2 1 1 0 /devel/gcc-4.4/scripts/build/companion_libs/gmp.sh | 4 2 2 0 +- /devel/gcc-4.4/scripts/build/companion_libs/cloog.sh | 2 1 1 0 /devel/gcc-4.4/scripts/build/companion_libs/mpfr.sh | 4 2 2 0 +- /devel/gcc-4.4/config/companion_libs/ppl.in | 14 0 14 0 ---------- /devel/gcc-4.4/config/companion_libs/mpc.in | 13 0 13 0 ---------- /devel/gcc-4.4/config/companion_libs/gmp.in | 13 0 13 0 ---------- /devel/gcc-4.4/config/companion_libs/cloog.in | 13 0 13 0 ---------- /devel/gcc-4.4/config/companion_libs/mpfr.in | 14 0 14 0 ---------- /devel/gcc-4.4/config/companion_libs.in | 46 35 11 0 ++++++++++++++++++++++++++-------- 11 files changed, 42 insertions(+), 85 deletions(-)