diff options
author | David Brown | 2007-09-16 00:45:07 +0000 |
---|---|---|
committer | David Brown | 2007-09-16 00:45:07 +0000 |
commit | 199874422bbb17772cb0257187151007ab398463 (patch) | |
tree | 79e48477b5cff2b24b86be71852161e2816b303d | |
parent | 0b919e39d838ddf6fd747c668cdb332db25ac524 (diff) |
glibc did big update to new headers and new version 2.6.1
-rwxr-xr-x | libs/glibc/BUILD | 25 | ||||
-rwxr-xr-x | libs/glibc/DEPENDS | 1 | ||||
-rwxr-xr-x | libs/glibc/DETAILS | 48 | ||||
-rw-r--r-- | libs/glibc/HISTORY | 11 | ||||
-rwxr-xr-x | libs/glibc/INSTALL | 16 | ||||
-rwxr-xr-x | libs/glibc/PREPARE | 3 | ||||
-rwxr-xr-x | libs/glibc/PRE_BUILD | 13 | ||||
-rw-r--r-- | libs/glibc/as-test-x.patch | 10 | ||||
-rw-r--r-- | libs/glibc/config.h.patch | 5 |
9 files changed, 88 insertions, 44 deletions
diff --git a/libs/glibc/BUILD b/libs/glibc/BUILD index 1b94e5f784..3a07e588f1 100755 --- a/libs/glibc/BUILD +++ b/libs/glibc/BUILD @@ -62,14 +62,7 @@ unset LD_LIBRARY_PATH && # Setup sanitised glibc-kernel-headers for the glibc compile # ...as well as other arch-dependend specialties # -persistent_add GLIBC_ARCH && -if [[ ${SMGL_COMPAT_ARCHS[1]} == x86_64 ]]; then - GLIBC_ARCH=x86_64 -elif [[ ${SMGL_COMPAT_ARCHS[1]} == ppc ]]; then - GLIBC_ARCH=ppc -elif [[ ${SMGL_COMPAT_ARCHS[1]} == ia32 ]]; then - GLIBC_ARCH=i386 -elif [[ ${SMGL_COMPAT_ARCHS[0]} == 64 && ${SMGL_COMPAT_ARCHS[1]} == sparc ]]; then +if [[ ${SMGL_COMPAT_ARCHS[0]} == 64 && ${SMGL_COMPAT_ARCHS[1]} == sparc ]]; then # # If we're not compiling for 64-bit SPARC then we need to use the sparc # headers, not sparc64 @@ -113,22 +106,20 @@ elif [[ ${SMGL_COMPAT_ARCHS[1]} == alpha ]]; then # glibc knows itself what flags to choose export CFLAGS="" && GLIBC_ARCH=alpha -else - message "Glibc spell doesn't know your architecture!" && - false fi && -# set the asm headers to point to the correct architecture -cd $GLIBC_HEADERS_DIR/include && -ln -sf asm-$GLIBC_ARCH asm && - # CPPFLAGS setting is needed so the check for cpp works on boxes that don't # have any kernel headers in /usr/include yet -export CPPFLAGS="$CPPFLAGS -I$GLIBC_HEADERS_DIR/include" && +export CPPFLAGS="$CPPFLAGS -I$GLIBC_HEADERS_DIR/usr/include" && # # End sanitised glibc-kernel-headers setup # +# this is weird but nscd needs this header from libcap but not the rest of +# the standard includes so doing this will make nscd pick it up +mkdir -p $SOURCE_DIRECTORY/nscd/sys && +ln -s /usr/include/sys/capability.h $SOURCE_DIRECTORY/nscd/sys/capability.h && + # # Change to where we're going to actually build # @@ -147,6 +138,6 @@ $SOURCE_DIRECTORY/configure --host=$HOST \ --with-elf \ --enable-shared \ --disable-profile \ - --with-headers=$GLIBC_HEADERS_DIR/include \ + --with-headers=$GLIBC_HEADERS_DIR/usr/include \ $OPTS && make diff --git a/libs/glibc/DEPENDS b/libs/glibc/DEPENDS index b6e22145f0..7d79478265 100755 --- a/libs/glibc/DEPENDS +++ b/libs/glibc/DEPENDS @@ -4,6 +4,7 @@ depends gnupg && depends perl && depends smgl-fhs && depends smgl-archspecs && +optional_depends libselinux '--with-selinux' '--without-selinux' 'for selinux support' && if [ "$GLIBC_USEIDN" = "y" ]; then depends libidn diff --git a/libs/glibc/DETAILS b/libs/glibc/DETAILS index 225c87bd9c..496601855e 100755 --- a/libs/glibc/DETAILS +++ b/libs/glibc/DETAILS @@ -1,13 +1,52 @@ SPELL=glibc if [ "$GLIBC_NPTL" = "y" ]; then - VERSION=2.5 - HEADERS_VERSION=2.6.12.0 + VERSION=2.6.1 + HEADERS_VERSION=2.6.22.6 SOURCE=$SPELL-$VERSION.tar.bz2 SOURCE2=$SOURCE.sig - SOURCE3=linux-libc-headers-$HEADERS_VERSION.tar.bz2 +case "${SMGL_COMPAT_ARCHS[1]}" in + ia32) + GLIBC_ARCH=i386 + SOURCE3=linux-headers-${HEADERS_VERSION}-i386.tar.bz2 + SOURCE3_HASH=sha512:e328abe55c7d3c239ec3dbede78ce405a662d3159382a2cb3db8dbf5b7783d230a237d44c23280171893c9213b55c4f9bf8963f193fc50158803078e3875ecef + ;; + x86_64) + GLIBC_ARCH=x86_64 + SOURCE3=linux-headers-${HEADERS_VERSION}-x86_64.tar.bz2 + SOURCE3_HASH=sha512:1d032b35eee2593896cdffd779ed3f695f5abb552c83f96fcabec46d5977b649db0741690be5dd40d712779b0f3816c6e04e7840991dad4e0a6881adee097852 + ;; + ppc) + GLIBC_ARCH=ppc + SOURCE3=linux-headers-${HEADERS_VERSION}-powerpc.tar.bz2 + SOURCE3_HASH=sha512:06c5ff0fdbe39367df6538000358058fb6a804bc3711ad621fd825fa2887b2cb13b6992c32fe64da3381402b681b9ac526ac2b7eb2320966fcb9a6f6b1830737 + ;; + alpha) + GLIBC_ARCH=alpha + SOURCE3=linux-headers-${HEADERS_VERSION}-alpha.tar.bz2 + SOURCE3_HASH=sha512:a462e6ee9c446a71181e189d36b430fbdbf7070f2499d06e234b50f91ec3f0172a3428ecd37e7dad85bb153bfc985cea39e33785b7cffa9ac371a579412e6361 + ;; + sparc) + if [[ ${SMGL_COMPAT_ARCHS[0]} == 64 ]] + then + GLIBC_ARCH=sparc + SOURCE3=linux-headers-${HEADERS_VERSION}-sparc64.tar.bz2 + SOURCE3_HASH=sha512:45665ceb4c8622615c3e9bbcbe57e8f9bd96d1cfd7d50aa7269ca8be9f6400c35feddc4b93251e56a7e0d5fbb48cf1b1e0f81bd9ca2853dc154cd38c1bd5ebe8 + else + GLIBC_ARCH=sparc64 + SOURCE3=linux-headers-${HEADERS_VERSION}-sparc.tar.bz2 + SOURCE3_HASH=sha512:264bf8f30dcfd72b8fcdb8e9486c8ffe59ec20bbb5f7379b9e300510d761128f636f2d6945ba97f7672fae878a0976e0dabf500a0c53702d67bf7790562a9484 + fi + ;; + *) + GLIBC_ARCH=UNKNOWN + SOURCE3=UNKNOWN + message "${PROBLEM_COLOR}You have an unknown architecture, you should file a bug for this${DEFAULT_COLOR}" + return -1 + ;; +esac SOURCE_URL[0]=$GNU_URL/$SPELL/$SOURCE SOURCE2_URL[0]=${SOURCE_URL[0]}.sig - SOURCE3_URL[0]=http://ep09.pld-linux.org/~mmazur/linux-libc-headers/$SOURCE3 + SOURCE3_URL[0]=http://dmlb2000.homelinux.org/pub/kernel-headers/$SOURCE3 if [ "$GLIBC_USEIDN" = "y" ]; then SOURCE4=$SPELL-libidn-$VERSION.tar.bz2 SOURCE5=$SOURCE4.sig @@ -18,7 +57,6 @@ if [ "$GLIBC_NPTL" = "y" ]; then fi SOURCE_GPG=gnu.gpg:$SOURCE.sig:UPSTREAM_KEY SOURCE2_IGNORE=signature - SOURCE3_HASH=sha512:e7ee7a09880d19dea3d2c0d498631ee9d269738e7acdeba0a346da3b8bd0629628582973de33e6ac0c913e8c691806a50e07d520d6f6d078b76a3e74b9b61fd7 else VERSION=2.3.6 HEADERS_VERSION=2.4.24 diff --git a/libs/glibc/HISTORY b/libs/glibc/HISTORY index 0b49faaa7d..b3e686979a 100644 --- a/libs/glibc/HISTORY +++ b/libs/glibc/HISTORY @@ -1,3 +1,14 @@ +2007-09-15 David Brown <dmlb2000@gmail.com> + * BUILD: changed out old headers for new headers and removed GLIBC_ARCH + * DEPENDS: optionally on selinux some of the apps glibc builds use it + * DETAILS: updated to 2.6.1 and moved checks for GLIBC_ARCH to here + * INSTALL: install all the headers not just asm and linux + * PREPARE: add GLIBC_ARCH as persistant here so it gets tracked before + details sets it + * PRE_BUILD: added a patch for autoconf not setting as_test_x for egrep + * as-test-x.patch: added to add as_text_x to the appropriate configure + * config.h.patch: changed file to patch so p stays the same + 2007-04-16 Jaka Kranjc <lynxlynxlynx@sourcemage.org> * DETAILS: updated GLIBC_NPTL=y to 2.5 * glibc-2.4-iconv_open.patch, nisplus_fix.diff: deleted, added upstream diff --git a/libs/glibc/INSTALL b/libs/glibc/INSTALL index 35d8accf53..ce2d9483e7 100755 --- a/libs/glibc/INSTALL +++ b/libs/glibc/INSTALL @@ -3,7 +3,7 @@ # glibc decides to compile stuff during 'make install', which it does in 2.4 # install -d ${INSTALL_ROOT}/usr/include && -cd $GLIBC_HEADERS_DIR/include && +cd $GLIBC_HEADERS_DIR/usr/include && if [ ! "$GLIBC_NPTL" = "y" ]; then echo "installing asm-generic headers" && @@ -12,15 +12,11 @@ if [ ! "$GLIBC_NPTL" = "y" ]; then fi && echo "installing glibc linux headers" && -install -d ${INSTALL_ROOT}/usr/include/linux && -cp -fa linux/* ${INSTALL_ROOT}/usr/include/linux && - -echo "installing asm-$GLIBC_ARCH headers to /usr/include/asm" && -# -# asm is a symlink to asm-$GLIBC-ARCH -# -install -d ${INSTALL_ROOT}/usr/include/asm && -cp -fa asm/* ${INSTALL_ROOT}/usr/include/asm && +for dir in * +do + install -d ${INSTALL_ROOT}/usr/include/$dir && + cp -fa $dir/* ${INSTALL_ROOT}/usr/include/$dir +done cd $SOURCE_DIRECTORY.bld && diff --git a/libs/glibc/PREPARE b/libs/glibc/PREPARE index aba6486cbb..ed07e7cf2b 100755 --- a/libs/glibc/PREPARE +++ b/libs/glibc/PREPARE @@ -10,4 +10,5 @@ fi && if [[ ${SMGL_COMPAT_ARCHS[1]} == x86_64 ]]; then config_query GLIBC_NOLIB64 "Shall the dynamic linker install to /lib (not /lib64) (lib64 purge part 2 of 2)?" n -fi +fi && +persistent_add GLIBC_ARCH diff --git a/libs/glibc/PRE_BUILD b/libs/glibc/PRE_BUILD index 21c5945df6..4a76e9c7e4 100755 --- a/libs/glibc/PRE_BUILD +++ b/libs/glibc/PRE_BUILD @@ -4,7 +4,7 @@ default_pre_build && # Set GLIBC_HEADERS_DIR for use later # persistent_add GLIBC_HEADERS_DIR && -GLIBC_HEADERS_DIR=$SOURCE_DIRECTORY/linux-libc-headers-$HEADERS_VERSION && +GLIBC_HEADERS_DIR=$SOURCE_DIRECTORY/linux-headers-${HEADERS_VERSION}-${GLIBC_ARCH} && # # Set GLIBC_LIBIDN_DIR for use later @@ -27,11 +27,7 @@ if [ "$GLIBC_NPTL" = "y" ]; then # Unpack glibc-kernel-headers # unpack_file 3 && - cd $GLIBC_HEADERS_DIR && - patch -p1 < $SCRIPT_DIRECTORY/config.h.patch && - cd $GLIBC_HEADERS_DIR/include && - # fix the agpgart.h header, this is needed for at least xorg 6.9.0 - sedit '53i#include <asm/types.h>' linux/agpgart.h && + cd $GLIBC_HEADERS_DIR/usr/include && chmod -R +r * && find . -type d -exec chmod +x '{}' ';' else @@ -43,8 +39,8 @@ else # # Unpack glibc-kernel-headers # - mkdir -p $GLIBC_HEADERS_DIR/include && - cd $GLIBC_HEADERS_DIR/include && + mkdir -p $GLIBC_HEADERS_DIR/usr/include && + cd $GLIBC_HEADERS_DIR/usr/include && unpack_file 5 fi && @@ -56,6 +52,7 @@ if [[ $GLIBC_NPTL == n ]]; then patch -p1 < $SCRIPT_DIRECTORY/glibcshared.patch fi && patch -p0 < $SCRIPT_DIRECTORY/Makefile.patch && +patch -p1 < $SCRIPT_DIRECTORY/as-test-x.patch && # disabled libgd detection/building memusagestat for now until a better # fix has been found, bug #8277 diff --git a/libs/glibc/as-test-x.patch b/libs/glibc/as-test-x.patch new file mode 100644 index 0000000000..b0f299ccdb --- /dev/null +++ b/libs/glibc/as-test-x.patch @@ -0,0 +1,10 @@ +--- a/sysdeps/unix/sysv/linux/configure.in 2007-09-13 17:56:51.519950207 -0700 ++++ b/sysdeps/unix/sysv/linux/configure.in 2007-09-13 17:40:35.186895935 -0700 +@@ -24,6 +24,7 @@ + CPPFLAGS="$CPPFLAGS $SYSINCLUDES" + fi + define([libc_cv_linuxVER], [libc_cv_linux]patsubst(LIBC_LINUX_VERSION,[\.]))dnl ++as_test_x="test -x" + AC_CACHE_CHECK(installed Linux kernel header files, libc_cv_linuxVER, [dnl + AC_EGREP_CPP([eat flaming death], [#include <linux/version.h> + #if !defined LINUX_VERSION_CODE || LINUX_VERSION_CODE < ]dnl diff --git a/libs/glibc/config.h.patch b/libs/glibc/config.h.patch index 98b61279ab..2055042079 100644 --- a/libs/glibc/config.h.patch +++ b/libs/glibc/config.h.patch @@ -1,6 +1,5 @@ -diff -urpN linux-libc-headers-2.6.8.1.orig/include/linux/config.h linux-libc-headers-2.6.8.1/include/linux/config.h ---- linux-libc-headers-2.6.8.1.orig/include/linux/config.h 2004-11-29 21:24:16.893466608 -0800 -+++ linux-libc-headers-2.6.8.1/include/linux/config.h 2004-11-29 21:24:46.574954336 -0800 +--- a/usr/include/linux/config.h 2004-11-29 21:24:16.893466608 -0800 ++++ b/usr/include/linux/config.h 2004-11-29 21:24:46.574954336 -0800 @@ -1,3 +1,3 @@ -#error "Compilation aborted. Please read the FAQ for linux-libc-headers package." -#error "(can be found at http://ep09.pld-linux.org/~mmazur/linux-libc-headers/doc/)" |