summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Brown2007-09-23 23:09:04 -0700
committerDavid Brown2007-09-23 23:09:04 -0700
commit4c90372002d18e7e7f926fff97a394342d69d9e1 (patch)
treef664ea177dd7dfa5e0c78be1a2c760849ce30902
parentc87de164eb1c24590f5803856e427cd16a11fb36 (diff)
merged in big update of glibc 2.6.1
-rwxr-xr-xlibs/glibc/BUILD25
-rwxr-xr-xlibs/glibc/DEPENDS1
-rwxr-xr-xlibs/glibc/DETAILS48
-rw-r--r--libs/glibc/HISTORY11
-rwxr-xr-xlibs/glibc/INSTALL16
-rwxr-xr-xlibs/glibc/PREPARE3
-rwxr-xr-xlibs/glibc/PRE_BUILD13
-rw-r--r--libs/glibc/as-test-x.patch10
-rw-r--r--libs/glibc/config.h.patch5
9 files changed, 88 insertions, 44 deletions
diff --git a/libs/glibc/BUILD b/libs/glibc/BUILD
index 7ffc310cf7..bdf5de6d81 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 a467a62fe1..b6091fba1a 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-08-06 Treeve Jelbert <treeve@sourcemage.org>
* BUILD: fix typo (bug #13925)
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 d39e83ddf1..71ed61aa4a 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; the variable was needlessly persistent
@@ -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/)"