summaryrefslogtreecommitdiff
path: root/scripts/build/libc/eglibc.sh
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2009-01-05 23:02:43 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2009-01-05 23:02:43 (GMT)
commitebf01acb41f0f6bb0e0d5629aac9f98733730329 (patch)
tree31636a16f970ae3eb86b0c098224ac92b49bf647 /scripts/build/libc/eglibc.sh
parent4bcd72fb1604341116621e7e7655520779592103 (diff)
Split CT_ExtractAndPatch in two: CT_Extract and CT_Patch:
- it is unworkable to have CT_ExtactAndPAtch cope with all those silly glibc addons: - they can have 'short' (as 'ports') or 'long' (as glibc-ports-2.7) names - patches are against eithe the short or long name, but non-uniformly use one or the other - it is the reposibility of the component (glibc in this case) to handle corner cases such as those - update all components to use the new functions /trunk/scripts/build/tools/000-template.sh | 3 2 1 0 +- /trunk/scripts/build/tools/100-libelf.sh | 3 2 1 0 +- /trunk/scripts/build/tools/200-sstrip.sh | 3 2 1 0 +- /trunk/scripts/build/kernel/linux.sh | 3 2 1 0 +- /trunk/scripts/build/binutils.sh | 3 2 1 0 +- /trunk/scripts/build/cc/gcc.sh | 3 2 1 0 +- /trunk/scripts/build/debug/000-template.sh | 3 2 1 0 +- /trunk/scripts/build/debug/100-dmalloc.sh | 3 2 1 0 +- /trunk/scripts/build/debug/400-ltrace.sh | 3 2 1 0 +- /trunk/scripts/build/debug/300-gdb.sh | 9 6 3 0 +++-- /trunk/scripts/build/debug/500-strace.sh | 7 3 4 0 ++-- /trunk/scripts/build/debug/200-duma.sh | 19 8 11 0 ++++------ /trunk/scripts/build/libc/glibc.sh | 14 12 2 0 ++++++- /trunk/scripts/build/libc/uClibc.sh | 13 9 4 0 +++++-- /trunk/scripts/build/libc/eglibc.sh | 14 12 2 0 ++++++- /trunk/scripts/build/gmp.sh | 3 2 1 0 +- /trunk/scripts/build/mpfr.sh | 3 2 1 0 +- /trunk/scripts/functions | 68 36 32 0 +++++++++++++++++++----------------- 18 files changed, 108 insertions(+), 69 deletions(-)
Diffstat (limited to 'scripts/build/libc/eglibc.sh')
-rw-r--r--scripts/build/libc/eglibc.sh14
1 files changed, 12 insertions, 2 deletions
diff --git a/scripts/build/libc/eglibc.sh b/scripts/build/libc/eglibc.sh
index 1d5608a..478a230 100644
--- a/scripts/build/libc/eglibc.sh
+++ b/scripts/build/libc/eglibc.sh
@@ -92,14 +92,24 @@ do_libc_get() {
# Extract eglibc
do_libc_extract() {
- CT_ExtractAndPatch "eglibc-${CT_LIBC_VERSION}"
+ CT_Extract "eglibc-${CT_LIBC_VERSION}"
+ CT_Patch "eglibc-${CT_LIBC_VERSION}"
# C library addons
for addon in $(do_libc_add_ons_list " "); do
# NPTL addon is not to be extracted, in any case
[ "${addon}" = "nptl" ] && continue || true
CT_Pushd "${CT_SRC_DIR}/eglibc-${CT_LIBC_VERSION}"
- CT_ExtractAndPatch "${CT_LIBC}-${addon}-${CT_LIBC_VERSION}" nochdir
+ CT_Extract "eglibc-${addon}-${CT_LIBC_VERSION}" nochdir
+ # Some addons have the 'long' name, while others have the
+ # 'short' name, but patches are non-uniformly built with
+ # either the 'long' or 'short' name, whatever the addons name
+ # so we have to make symlinks from the existing to the missing
+ # Fortunately for us, [ -d foo ], when foo is a symlink to a
+ # directory, returns true!
+ [ -d "${addon}" ] || ln -s "eglibc-${addon}-${CT_LIBC_VERSION}" "${addon}"
+ [ -d "eglibc-${addon}-${CT_LIBC_VERSION}" ] || ln -s "${addon}" "eglibc-${addon}-${CT_LIBC_VERSION}"
+ CT_Patch "eglibc-${addon}-${CT_LIBC_VERSION}" nochdir
CT_Popd
done