summaryrefslogtreecommitdiff
path: root/scripts/build/libc
AgeCommit message (Collapse)AuthorFilesLines
2011-04-24libc/uClibc: use MMU settingsYann E. MORIN"1-0/+13
Enforce the MMU settings from the crosstool-NG configuration. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20libc/mingw: log even moreYann E. MORIN"1-3/+3
Also log variable assignement for single commands. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20libc/glibc-common: 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-20libc/newlib: 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-02-21libc/glibc: fix dubious construct when installing headersYann E. MORIN"1-1/+6
This is dubious because if the copy fails, then we'll miss the error. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-21libc/glibc: only install start files for NPTLYann E. MORIN"1-18/+20
Building the start files requires a shared-capable compiler, which we do not have when the threading implementation is LinuxThreads. So, only build the start files when the threading implementations is NPTL. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-21libc/glibc: add fortify optionYann E. MORIN"1-1/+8
By default, recent versions of glibc and eglibc will build some functions that take format strings (eg. printf, syslog...) with run-time checks against some format string attacks. This is called a fortified build. Unfortunately, this fails somehow while building the instrumented version of syslog, with some kind of circular dependency... Disable fortified builds by default, and hide the enabling option behind EXPERIMENTAL for daring users... Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-31libc/glibc: add option to force unwindYann E. MORIN"1-2/+18
We make it an option, as not all combinations of architectures vs. compiler vs. glibc/eglibc exhibit the issue. Mostly visible on old glibc versions, it seems... This is a missing part from the glibc/eglibc merger... :-/ Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-25libc/mingw: do not remove support symlinkYann E. MORIN"1-3/+4
Under mingw, it seems that there is a mix between the traditional /usr directory, and a similar-purposed /mingw directory (both in the sysroot). Currently, we create /mingw as a symlink to /usr, and we removed it in the libc-finish step. Unfortunately, this prevents the pre-processor to find the headers. Keeping the symlink makes it magically work... Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-25config: add an option to name the sysroot directoryYann E. MORIN"1-1/+1
Depending on local policies, some users have expressed a need to have the sysroot be named differently than the hard-coded name. Add an option for that. Default to 'sysroot' to match the existing literature. While at it, replace 'sys-root' with 'sysroot' everywhere we reference the sysroot. Reported-by: Alexey Kuznetsov <Alexey.KUZNETSOV@youtransactor.com> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22libc: remove now unneeded do_libc_headersYann E. MORIN"7-24/+0
do_libc_headers is now a noop, and is no longer used, so remove that step. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-19libc/glibc-eglibc: misc janitorial cleanups.Yann E. MORIN"2-8/+12
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22libc/glibc: add glibc specifics to the shared code, and use itYann E. MORIN"2-203/+36
Final step at sharing code between glibc and eglibc. Fall, wall of shame, fall!... :-) Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22scripts: PARALLELMFLAGS is evil, renameYann E. MORIN"4-9/+7
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-22libc/glibc: commonalise assembling the list of addonsYann E. MORIN"2-16/+5
glibc and eglibc each have two very similar ways of building this list. This can, and should definitetly, be shared. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22libc/glibc: commonalise setting of the minimum supported kernel versionYann E. MORIN"2-30/+35
It will be possible to use that also with eglibc, so this hunk belongs to the common code. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22libc/glibc: use the common start_files procedureYann E. MORIN"2-238/+27
Use the common procedure, shared between glibc and eglibc. This requires that glibc-specific bits be included in the shared procedure. But still build the full libc with the glibc-specific procedure. This will be commonalised in a future commit. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-17libc/eglibc: cleanup common code for sharing with glibcYann E. MORIN"1-31/+48
Some stuff is eglibc-specific, so needs to be conditonal. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-17libc/eglibc: move generic code to a common fileYann E. MORIN"2-215/+223
The build procedure for eglibc is generic enough to be shared between glibc and eglibc. This includes: - headers install (empty!) - start files build - complete libc build - libc finish (empty!) - add-ons list Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22libc/mingw: move content of do_libc_headers into do_libc_start_filesYann E. MORIN"1-4/+4
It is unnecessary to split C library preparation into two steps, as only one really makes sense. So, do_libc_headers is bound to be withdrawn short-term, in favor of do_libc_start_files. mingw already had all its start files installation in do_libc_headers, and do_libc_start_files was empty, just migrate the content of the former into the latter. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22libc/uClibc: move content of do_libc_headers into do_libc_start_filesYann E. MORIN"1-6/+5
It is unnecessary to split C library preparation into two steps, as only one really makes sense. So, do_libc_headers is bound to be withdrawn short-term, in favor of do_libc_start_files. uClibc already had all its start files installation in do_libc_headers, and do_libc_start_files was empty, just migrate the content of the former into the latter. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-03libc-glibc: remove 2.3.6Yann E. MORIN"1-80/+3
This is an obsolete version which is no longer used by any sample (the only user, the ia64 sample, has been removed). It also makes the code path a bit complex, with twists just to accomodate that version. Removing the version will make those twists go away, and will ease commonalisation of glibc and eglibc in the future (hopefully!). Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-03libc/uClibc: normalize uclibc hidden version namesBryan Hundven1-4/+4
Hidden version names for uClibc conflicted: LIBC_UCLIBC_V_0_9_30_2 LIBC_V_0_9_30_1 name them constantly as: LIBC_UCLIBC_V_<version> Also update the build script where we use snapshots by version or snapshots by date. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2010-12-22libc/eglibc: fix installed scriptsBryan Hundven1-0/+14
Like rev 2002, eglibc installs some bash scripts, but use the path to the buildtool bash as the interpreter (on the shebang line). This is only a symlink to the real bash, and thus is not available at runtime. Fix that by assuming that shell on the target *will* be /bin/bash. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2010-11-16scripts: remove aria2c as downloader, retain only curl and wgetYann E. MORIN"1-6/+0
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-11libc/*glibc: enable selection of the oldest supported ABIYann E. MORIN"2-0/+8
[Yann E. MORIN: split the original patch] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-10libc/*glibc: add option to disable symbols versioningYann E. MORIN"2-0/+8
[Yann E. MORIN: split the original patch] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-09libc/eglibc: fix downloadingBob Dunlop1-1/+1
Since Subversion 1.6.13 was released, it is no longer possible to checkout/export to the current working directory using '.' (eg. "svn co bla://blabla/foo/bar ." no longer extracts the content of bar into ./ but into ./bar). Fix this by luring Subversion to extract into "$(pwd)", which has the advantage of working both with all known versions so far. At the same time, remove the useless redirection.
2010-10-22libc/newlib: add option to compile support for IOs on C99 formatsYann E. MORIN"1-0/+5
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-22libc/newlib: add option to compile support for long long IOsYann E. MORIN"1-0/+5
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-22libc/newlib: add option to compile support for float IOsYann E. MORIN"1-1/+16
Adds support to enable/disable IOs of floating point values (float, double, and long double). Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-22scripts: add "FILE" and "CFG" debug levels.Anthony Foiani5-10/+10
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-09-12libc/uClibc: use the MIPS ABI selectionYann E. MORIN"1-0/+34
Use the MIPS ABI selection to properly munge the uClibc config file. This has the side effect to force the ISA: - n32 ABI -> MIPS-III ISA - n64 ABI -> MIPS64 ISA Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-09-10libc/uClibc: change munging code based on target archYann E. MORIN"1-14/+16
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-17libc/mingw: fix space-damageYann E. MORIN"1-8/+8
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-14mingw32: enable sysrooted toolchainsEsben Haabendal1-1/+8
When targeting mingw32, gcc expects to find its include files in "mingw/include" instead of the traditional "usr/include". [Yann E. MORIN: split the original patch]
2010-08-14libc/mingw: use pre-set headers dirEsben Haabendal1-6/+6
There is a variable that contains the headers directory, so there's no need to re-compute it again. [Yann E. MORIN: split the original patch]
2010-08-11libc/uClibc: fix downloading pregen localesYann E. MORIN"1-1/+1
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-07-27libc/uClibc: fix space damageYann E. MORIN"1-37/+37
2010-07-27libc/uClibc: fix using pre-generated locale dataYann E. MORIN"1-4/+19
Some time, someone updated the locale Makefile to use newer pre-generated locales data, but did not upload those. So we just force using the existing, ageing archive, dating back 20030818. Sigh...
2010-07-27libc/uClibc: do not systematically use pre-generated locale dataYann E. MORIN"1-12/+27
It seems that using pre-generated locale data can be more problematic than usefull in some circumstances. Offer a config knob to enable/disable use of the pregen locale data. Also, do not extract pregen locales data ourselves, it's broken.
2010-07-22libc/uClibc: do not install cross-lddYann E. MORIN"1-11/+0
I was unable to make the cross-ldd from uClibc to work, and it is not possible to build it on non-POSIX system. Besides, we have a generic script that is in the starting-blocks to replace it, that will work for any C library, and also will work on non-POSIX systems. Bonus!
2010-07-11kernel/mingw: add target librariesYann E. MORIN"1-1/+79
Add several development libraries to the build of the mingw cross-compiler to be used on target Libraries: PDCurses (port of the ncurses library) GnuRX (the regex library) DirectX OpenGL Signed-off-by: Bart vdr. Meulen <bartvdrmeulen@gmail.com> [yann.morin.1998@anciens.enib.fr: don't show DX and RX versions if disabled] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-07-11kernel: add mingwYann E. MORIN"1-0/+74
Add the option to build a cross-compiler for kernel type 'mingw'. The resulting cross-compiler can be used to build applications on a Linux host that can be run on a Windows target. Compiler is build using the mingwrt and w32-api packages aviable from the MinGW project (http://sourceforge.net/projects/mingw). The windows headers (w32-api package) are extracting with the kernel_headers step The libraries and other headers from both packages are build and installed in the various steps of libc Signed-off-by: Bart vdr Meulen <bartvdrmeulen@gmail.com> [yann.morin.1998@anciens.enib.fr: fix kernel headers comment, don't "return 0"] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-07-02libc/uClibc: enable NPTL for snapshotsYann E. MORIN"1-5/+73
Recently, NPTL has matured a lot in uClibc, and more and more people are interested to at least give it a try. So enable it.
2010-07-02libc/uClibc: fix snapshotsYann E. MORIN"1-4/+19
Snapshots are in a subdir named uClibc, not uClibc-snapshot (or uClibc-YYYYMMDD either).
2010-07-02libc/uClibc: fix munging .config for LT old/newYann E. MORIN"1-7/+4
2010-06-30libc/glibc: fix installed scriptsYann E. MORIN"1-0/+13
glibc installs some bash-scripts, but uses the path to the buildtool bash as interpreter (on the shebang line). This is only a symlink to the real bash, and thus is not available at runtime. Fix that by assuming that bash on the target *will* be /bin/bash.
2010-06-13libc/newlib: build in the 'start files' passYann E. MORIN"1-8/+6
A few facts: - building the C library requires a proper core compiler - core compiler is issued from one of the core passes - the C library is required to build libstdc++ - newlib is only built for baremetal - in bare metal, the final compiler is issued from one of the core passes So we need to build the C library between core pass 1 and core pass 2. The only place is eithe libc_headers() or libc_start_files(). The most pertinent seems to be libc_start_files(). So we build newlib from libc_start_files(), and leave libc() empty.
2010-06-08libc/uClibc: apply the threading model to the configurationYann E. MORIN"1-0/+30
The threading model shall be be set in the .config file. Also, offer the choice between 'old/stable' and 'new' linuxthreads.