summaryrefslogtreecommitdiff
path: root/scripts/build/libc/glibc-eglibc.sh-common
AgeCommit message (Collapse)AuthorFilesLines
2011-10-11libc/glibc: run ./configure in CONFIG_SHELLYann E. MORIN"1-0/+3
Tremendously helps when running on at least Ubuntu, with dash as the system shell (ie. /bin/sh points to dash). Reported by a few people, of which: leming, ccct and ccole on IRC Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> (transplanted from 30c89d1f74a4fee73517b4ed67e843be6885447e)
2011-07-28scripts/libc: do not build add-ons by defaultBenoît THÉBAUDEAU"1-1/+1
Currently, no --enable-add-ons option is passed to libc configure when "$(do_libc_add_ons_list ,)" is empty, which makes configure automatically search for present add-ons. In that case, all present add-ons are built, although no add-on was selected by the user in the config. Moreover, this can make the configure fail if some non-standard add-ons like eglibc-localedef are present. This behavior also leads to an inconsistency from a user point of view between the following cases: - LIBC_ADDONS_LIST="", LIBC_GLIBC_USE_PORTS=n and THREADS="none" in the config, which makes "$(do_libc_add_ons_list ,)" return "", so all present add-ons are built. - LIBC_ADDONS_LIST="", LIBC_GLIBC_USE_PORTS=n and THREADS!="none" in the config, which makes "$(do_libc_add_ons_list ,)" return the add-on supporting the chosen threading implementation, e.g. "nptl", so only this add-on is built. This patch disables the building of all add-ons in that case. It is still possible to build all present add-ons by adding --enable-add-ons to LIBC_GLIBC_EXTRA_CONFIG_ARRAY. Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
2011-07-09libc/glibc: fix passing args with spaces when calling backendYann E. MORIN"1-1/+1
Spaces in arguments to the glibc backend were not handled. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-06-26glibc: Refactor startfiles/headers into do_libc_backend()Bryan Hundven1-123/+92
Refactor the contents of 'do_libc_start_files()' and 'do_libc()' into a parameterized 'do_libc_backend()'. 'do_libc_start_files()' and 'do_libc()' call 'do_libc_backend()' with either 'libc_mode=startfiles' or 'libc_mode=final' (respectively) so that the startfiles/headers and the final libc builds are configured and built with the same options. One example of where this is needed is when building a mips toolchain. Previously, if you were building an n32 toolchain, you wouldn't have noticed an issue, because if '-mabi' is not in CFLAGS, n32 is the default: http://sourceware.org/git/?p=glibc-ports.git;a=blob;f=sysdeps/mips/preconfigure;hb=HEAD But when trying to build an o32 or n64 toolchain the build would have failed. This is because (e)glibc expects "-mabi={o32,n32,n64}" to be in CFLAGS, but was not previously provided in 'do_libc_start_files()'. The build failure would happen in the shared-core gcc when it tries to configure an n64 or o32 gcc with an n32 libc. A simpler solution would have been to just add TARGET_CFLAGS to configure in 'do_libc_start_files()', but this way makes configure and make consistent for both steps. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2011-06-03kconfig: prepend CT-NG's version tag to PKGVERSIONBenoît THÉBAUDEAU"1-2/+2
"crosstool-NG-${CT_VERSION}" is currently the default for TOOLCHAIN_PKGVERSION, and this options is passed as is to --with-pkgversion. This patch prepends "crosstool-NG ${CT_VERSION}" to TOOLCHAIN_PKGVERSION before passing it to --with-pkgversion. Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
2011-05-30glibc: properly handle internal addonsYann E. MORIN"1-2/+7
Some addons are bundled with glibc/eglibc, so we should not try to download and extract them. This is done as thus: - at download time: - if the add-on download fails, keep going; - at extract time: - if the addon is present in the source tree, ignore it; - if the addon is missing in the source tree: - if the archive is present, extract it; - if the archive is missing, bail out. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-31eglibc: use the PKGVERSION and BUGURL optionsBenoît THÉBAUDEAU"1-2/+7
This patch makes eglibc benefit from the TOOLCHAIN_PKGVERSION and TOOLCHAIN_BUGURL options. Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
2011-05-29libc/glibc: commonalise extraction btw glibc and eglibcYann E. MORIN"1-0/+44
glibc and eglibc have a very similar extraction process, so it makes sense to commonalise it. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-18config: rename variables that are arraysYann E. MORIN"1-5/+6
Make it explicit that a variable is an array bu the name of the variable. It will be used later when .config gets munged to allow both multiple arguments and arguments with spaces at the same time to be passed from the configuration down to the build scripts. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-15scripts: interpret *_EXTRA_CONFIG config variables arraysYann E. MORIN"1-3/+3
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-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-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"1-6/+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"1-8/+8
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"1-19/+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-22libc/glibc: commonalise assembling the list of addonsYann E. MORIN"1-3/+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"1-1/+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"1-0/+22
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"1-0/+215
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>