new package:

- adding eglibc as default libc, with this some bugs are fixed. We also can use binary drivers and can have vdpau support (will be included later).
This commit is contained in:
Stephan Raue 2009-11-29 05:53:05 +01:00
parent ec4b14b74c
commit de292dea92
12 changed files with 389 additions and 65 deletions

View File

@ -39,8 +39,8 @@ esac
# Build optimizations (size/speed) # Build optimizations (size/speed)
OPTIMIZATIONS=size OPTIMIZATIONS=size
# Target system library C (uClibc/glibc) # Target system library C (uClibc/eglibc)
TARGET_LIBC=uClibc TARGET_LIBC=eglibc
# Library strip # Library strip
LIBSTRIP=yes LIBSTRIP=yes
@ -56,9 +56,6 @@ LOCAL_CXX=`which g++`
# Support C++ in toolchain # Support C++ in toolchain
TOOLCHAIN_CXX=yes TOOLCHAIN_CXX=yes
# Mediacenter to use (elisa, entertainer)
MEDIACENTER=elisa
# Menu language (ar/bg/br/ca/cs/de/en/es/et/fi/fr/gr/he/hu/it/nl/no/pl/ro/ru/sk/sr/sv/vn) # Menu language (ar/bg/br/ca/cs/de/en/es/et/fi/fr/gr/he/hu/it/nl/no/pl/ro/ru/sk/sr/sv/vn)
MENU_LANG=de MENU_LANG=de
@ -85,35 +82,6 @@ REMOTE=atiusb
# hauppauge/homemade/irman/leadtek/leadtek-pvr2000/logitech/pctv/realmagic/ # hauppauge/homemade/irman/leadtek/leadtek-pvr2000/logitech/pctv/realmagic/
# digimatrix/mceusb/mceusb2/streamzap/cx88/imonknob/ultrax/dvico/MCE-X10) # digimatrix/mceusb/mceusb2/streamzap/cx88/imonknob/ultrax/dvico/MCE-X10)
RECEIVER=atiusb RECEIVER=atiusb
# Use Extra Binary Firmwares - WiFi/DVB cards (yes/no)
EXTRAFIRMWARES=no
# Support for emulators (yes/no)
EMULATORS=no
# Support for games (yes/no)
GAMES=no
# Network Support (Samba shares and FTP Server) (yes/no)
NETWORK=yes
# Start network services ? (Anonymous Telnet and FTP server as root) (yes/no)
SERVICES=yes
# enable bootchart (yes/no)
BOOTCHART=yes
# Wireless network support (yes/no)
WIFI=yes
# Use NdisWrapper for Windows network driver support (yes/no)
NDISWRAPPER=no
# Allow use of WPA_Supplicant for WPA-PSK secured wireless networks (yes/no)
WPA_SUPPLICANT=yes
# X.org drivers to use (all/ati/geode/glint/i740/intel/mga/nv/openchrome/ # X.org drivers to use (all/ati/geode/glint/i740/intel/mga/nv/openchrome/
# radeonhd/s3/s3virge/savage/sis/tdfx/trident/vesa/vmware) # radeonhd/s3/s3virge/savage/sis/tdfx/trident/vesa/vmware)
# Space separated list is supported, e.g. XORG_DRIVERS="ati s3" # Space separated list is supported, e.g. XORG_DRIVERS="ati s3"
@ -154,3 +122,4 @@ DEBUG=no
DEVTOOLS=no DEVTOOLS=no
. config/path . config/path

View File

@ -3,10 +3,38 @@ set -e
test -f config/target-$TARGET_PLATFORM && . config/target-$TARGET_PLATFORM test -f config/target-$TARGET_PLATFORM && . config/target-$TARGET_PLATFORM
# determine architecture's family # determine architecture's family
case $TARGET_ARCH in
i386)
TARGET_FAMILY=i686 TARGET_FAMILY=i686
TARGET_NAME=$TARGET_FAMILY-linux-uclibc ;;
x86_64)
TARGET_FAMILY=x86_64
;;
esac
case $TARGET_LIBC in
uClibc)
TARGET_NAME=$TARGET_FAMILY-openelec-linux-uclibc
;;
eglibc)
TARGET_NAME=$TARGET_FAMILY-openelec-linux-gnu
;;
esac
# determines TARGET_CPU, if not forced by user # determines TARGET_CPU, if not forced by user
if [ -z "$TARGET_CPU" ]; then
case $TARGET_ARCH in
i386)
TARGET_CPU=generic TARGET_CPU=generic
;;
x86_64)
TARGET_CPU=generic
;;
esac
fi
OPENELEC_VERSION=`cat VERSION` OPENELEC_VERSION=`cat VERSION`
CONFIG=config CONFIG=config
@ -72,10 +100,21 @@ TARGET_RANLIB=${TARGET_PREFIX}ranlib
TARGET_OBJCOPY=${TARGET_PREFIX}objcopy TARGET_OBJCOPY=${TARGET_PREFIX}objcopy
TARGET_STRIP=${TARGET_PREFIX}strip TARGET_STRIP=${TARGET_PREFIX}strip
TARGET_CPPFLAGS= TARGET_CPPFLAGS=
TARGET_CFLAGS="$GCC_OPTIM -Wall -pipe -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -march=$TARGET_FAMILY -mtune=$TARGET_CPU" TARGET_CFLAGS="$GCC_OPTIM -Wall -pipe -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -mtune=$TARGET_CPU"
TARGET_CXXFLAGS="$TARGET_CFLAGS" TARGET_CXXFLAGS="$TARGET_CFLAGS"
TARGET_LDFLAGS= TARGET_LDFLAGS=
case $TARGET_ARCH in
i386)
TARGET_CFLAGS="$TARGET_CFLAGS -march=$TARGET_FAMILY"
TARGET_CXXFLAGS="$TARGET_CXXFLAGS -march=$TARGET_FAMILY"
;;
powerpc|powerpc64|x86_64)
TARGET_CFLAGS="$TARGET_CFLAGS -fPIC"
TARGET_CXXFLAGS="$TARGET_CXXFLAGS -fPIC"
;;
esac
if [ "$DEBUG" = yes ]; then if [ "$DEBUG" = yes ]; then
TARGET_CFLAGS="$TARGET_CFLAGS -ggdb" TARGET_CFLAGS="$TARGET_CFLAGS -ggdb"
TARGET_CXXFLAGS="$TARGET_CXXFLAGS -ggdb" TARGET_CXXFLAGS="$TARGET_CXXFLAGS -ggdb"
@ -180,9 +219,9 @@ kernel_path() {
ls -d $ROOT/$BUILD/linux* ls -d $ROOT/$BUILD/linux*
} }
require_glibc() { require_eglibc() {
if [ "$TARGET_LIBC" != glibc ]; then if [ "$TARGET_LIBC" != eglibc ]; then
echo "$1 requires glibc, aborting." echo "$1 requires eglibc, aborting."
exit 1 exit 1
fi fi
} }

View File

@ -45,13 +45,11 @@ case "$2" in
ln -sf /var/media $INSTALL/media ln -sf /var/media $INSTALL/media
# Basissystem... # Basissystem...
$SCRIPTS/install uClibc $SCRIPTS/install $TARGET_LIBC
$SCRIPTS/install gcc-final $SCRIPTS/install gcc-final
$SCRIPTS/install linux $2 $SCRIPTS/install linux $2
$SCRIPTS/install busybox $SCRIPTS/install busybox
$SCRIPTS/install util-linux-ng
# $SCRIPTS/install ConsoleKit
# $SCRIPTS/install DeviceKit-disks
echo $TARGET_ARCH > $INSTALL/etc/arch echo $TARGET_ARCH > $INSTALL/etc/arch
echo "$OPENELEC_VERSION" > $INSTALL/etc/version echo "$OPENELEC_VERSION" > $INSTALL/etc/version
@ -82,13 +80,13 @@ case "$2" in
echo "127.0.0.1 mobile.openelec.tv localhost" > $INSTALL/etc/hosts echo "127.0.0.1 mobile.openelec.tv localhost" > $INSTALL/etc/hosts
mkdir -p $ROOT/target mkdir -p $ROOT/target
rm -rf $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION.kernel rm -rf $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.kernel
cp -PR $BUILD/linux-*/arch/x86/boot/bzImage $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION.kernel cp -PR $BUILD/linux-*/arch/x86/boot/bzImage $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.kernel
echo "rm -rf $ROOT/target/OpenELEC-$PROJECT-$MEDIACENTER-$OPENELEC_VERSION.system" >> $ROOT/.fakeroot echo "rm -rf $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.system" >> $ROOT/.fakeroot
echo "$ROOT/$TOOLCHAIN/bin/mksquashfs $INSTALL $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION.system -noappend" >> $ROOT/.fakeroot # -all-root echo "$ROOT/$TOOLCHAIN/bin/mksquashfs $INSTALL $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.system -noappend" >> $ROOT/.fakeroot
$ROOT/$TOOLCHAIN/bin/fakeroot -- $ROOT/.fakeroot $ROOT/$TOOLCHAIN/bin/fakeroot -- $ROOT/.fakeroot
chmod 0644 $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION.system chmod 0644 $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.system
rm -rf $ROOT/.fakeroot rm -rf $ROOT/.fakeroot
;; ;;
@ -97,18 +95,18 @@ case "$2" in
$SCRIPTS/install image system $SCRIPTS/install image system
mkdir -p $ROOT/target mkdir -p $ROOT/target
rm -rf $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.flash rm -rf $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.flash
qemu-img create -f raw $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.flash 128M qemu-img create -f raw $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.flash 128M
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.flash /sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.flash
mkdir -p $ROOT/.tmp mkdir -p $ROOT/.tmp
sudo mount -o loop $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.flash $ROOT/.tmp sudo mount -o loop $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.flash $ROOT/.tmp
cp -R $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION.system $ROOT/.tmp/openelec.system cp -R $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.system $ROOT/.tmp/openelec.system
sudo umount $ROOT/.tmp sudo umount $ROOT/.tmp
rm -rf $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.store rm -rf $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.store
qemu-img create -f raw $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.store 40M qemu-img create -f raw $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.store 40M
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.store /sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.store
;; ;;
esac esac

View File

@ -10,9 +10,9 @@ $SCRIPTS/install lzma
$SCRIPTS/install pkg-config $SCRIPTS/install pkg-config
$SCRIPTS/build intltool $SCRIPTS/build intltool
$SCRIPTS/install binutils toolchain $SCRIPTS/install binutils
$SCRIPTS/install gcc-core toolchain $SCRIPTS/install gcc-core
$SCRIPTS/install uClibc toolchain $SCRIPTS/install $TARGET_LIBC toolchain
if [ "c" != "$TOOLCHAIN_LANGUAGES" ]; then if [ "c" != "$TOOLCHAIN_LANGUAGES" ]; then
$SCRIPTS/install gcc-final toolchain $SCRIPTS/install gcc-final toolchain

View File

@ -0,0 +1,81 @@
#!/bin/sh
. config/options
$SCRIPTS/install gcc-core
export BUILD_CC=$HOST_CC
export OBJDUMP_FOR_HOST=objdump
if [ "$TARGET_ARCH" = i386 ]; then
CFLAGS="-march=$(echo $TARGET_NAME | cut -d- -f 1) -mtune=generic"
else
CFLAGS="-mtune=generic"
fi
CFLAGS="$CFLAGS -g -O2 -fno-stack-protector"
#CFLAGS="$CFLAGS -g -Os"
if [ "$DEBUG" = yes ]; then
DEBUG_CONFIG="--enable-debug"
else
DEBUG_CONFIG="--disable-debug"
DEBUG_OPTIONS="OPTION_EGLIBC_BACKTRACE = n
OPTION_EGLIBC_MEMUSAGE = n"
fi
NSS_CONF_DIR=`ls -d $ROOT/$BUILD/eglibc*/nss`
cd $PKG_BUILD
autoconf
mkdir -p objdir-$1
cd objdir-$1
cat >config.cache <<EOF
libc_cv_forced_unwind=yes
libc_cv_c_cleanup=yes
libc_cv_gnu89_inline=yes
libc_cv_ssp=no
EOF
# needed by glib: OPTION_EGLIBC_LOCALE_CODE = y
# needed by PAM: OPTION_EGLIBC_GETLOGIN = y
# needed by PAM: OPTION_EGLIBC_UTMP = y
cat >options-groups.conf <<EOF
OPTION_EGLIBC_ADVANCED_INET6 = n
OPTION_EGLIBC_BIG_MACROS = n
OPTION_EGLIBC_BSD = n
OPTION_EGLIBC_CATGETS = n
OPTION_EGLIBC_CHARSETS = n
OPTION_EGLIBC_DB_ALIASES = n
OPTION_EGLIBC_LOCALES = n
OPTION_EGLIBC_NIS = n
OPTION_EGLIBC_NSSWITCH = n
OPTION_EGLIBC_NSSWITCH_FIXED_CONFIG = $NSS_CONF_DIR/fixed-nsswitch.conf
OPTION_EGLIBC_NSSWITCH_FIXED_FUNCTIONS = $NSS_CONF_DIR/fixed-nsswitch.functions
OPTION_EGLIBC_RCMD = n
OPTION_EGLIBC_UTMPX = n
OPTION_POSIX_REGEXP_GLIBC = n
$DEBUG_OPTIONS
EOF
../configure --host=$TARGET_NAME \
--build=$HOST_NAME \
--prefix=/usr \
--libexecdir=/usr/lib/eglibc \
--disable-profile \
--disable-sanity-checks \
--enable-add-ons=nptl \
--with-tls \
--enable-kernel=2.6.32 \
--with-__thread \
--with-binutils=$BUILD/toolchain/bin \
--with-headers=$SYSROOT_PREFIX/usr/include \
--cache-file=config.cache \
--without-cvs \
--without-gd \
$DEBUG_CONFIG \
make

View File

@ -0,0 +1,19 @@
# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.
passwd: compat
group: compat
shadow: compat
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis

View File

@ -0,0 +1,66 @@
# This file sets default values for all option group variables
# mentioned in option-groups.def; see that file for a description of
# each option group.
#
# Subdirectory makefiles include this file before including the user's
# settings from option-groups.config at the top of the build tree;
# that file need only refer to those options whose default settings
# are to be changed.
#
# By default, all option groups are enabled.
OPTION_EGLIBC_ADVANCED_INET6 = n
#+++
OPTION_EGLIBC_BACKTRACE = n
OPTION_EGLIBC_BIG_MACROS = n
OPTION_EGLIBC_BSD = n
OPTION_EGLIBC_CXX_TESTS = y
OPTION_EGLIBC_CATGETS = n
OPTION_EGLIBC_CHARSETS = n
#+++
OPTION_EGLIBC_DB_ALIASES = n
OPTION_EGLIBC_ENVZ = y
OPTION_EGLIBC_FCVT = y
OPTION_EGLIBC_FMTMSG = y
OPTION_EGLIBC_FSTAB = y
OPTION_EGLIBC_FTRAVERSE = y
# needed by PAM
OPTION_EGLIBC_GETLOGIN = y
OPTION_EGLIBC_INET = y
OPTION_EGLIBC_LIBM = y
OPTION_EGLIBC_LOCALES = n
# needed by glib
OPTION_EGLIBC_LOCALE_CODE = y
OPTION_EGLIBC_MEMUSAGE = y
#+++
OPTION_EGLIBC_NIS = y
OPTION_EGLIBC_NSSWITCH = y
OPTION_EGLIBC_RCMD = n
OPTION_EGLIBC_SPAWN = y
OPTION_EGLIBC_STREAMS = y
OPTION_EGLIBC_SUNRPC = y
# needed by PAM
OPTION_EGLIBC_UTMP = y
OPTION_EGLIBC_UTMPX = n
OPTION_EGLIBC_WORDEXP = y
OPTION_POSIX_C_LANG_WIDE_CHAR = y
# needed by busyboxs sed:
OPTION_POSIX_REGEXP = y
#---
OPTION_POSIX_REGEXP_GLIBC = n
OPTION_POSIX_WIDE_CHAR_DEVICE_IO = y

View File

@ -0,0 +1,47 @@
#!/bin/sh
. config/options
PKG_DIR=`find $PACKAGES -type d -name $1`
if [ "$2" = toolchain ]; then
rm -rf "$SYSROOT_PREFIX/lib" "$SYSROOT_PREFIX/usr/lib" "$SYSROOT_PREFIX/usr/include"
$SCRIPTS/install linux-headers
cd $PKG_BUILD/objdir-$1
cat >configparms <<EOF
install_root=$SYSROOT_PREFIX
EOF
make install
exit 0
fi
mkdir -p $INSTALL/lib $INSTALL/bin
cp $PKG_BUILD/objdir-$1/elf/ld*.so.* $INSTALL/lib
cp $PKG_BUILD/objdir-$1/libc.so.6 $INSTALL/lib
cp $PKG_BUILD/objdir-$1/dlfcn/libdl.so.2 $INSTALL/lib
cp $PKG_BUILD/objdir-$1/nptl/libpthread.so.0 $INSTALL/lib
[ "$GDB" = yes ] && cp $PKG_BUILD/objdir-$1/nptl_db/libthread_db.so.1 $INSTALL/lib
if [ "$DEVTOOLS" = yes ]; then
cp $PKG_BUILD/objdir-$1/elf/ldd $INSTALL/bin
sed -i 's%bash%sh%g' $INSTALL/bin/ldd
fi
cp $PKG_BUILD/objdir-$1/math/libm.so.6 $INSTALL/lib
cp $PKG_BUILD/objdir-$1/login/libutil.so.1 $INSTALL/lib # e.g. for utmp support, needed by PAM_filter
cp $PKG_BUILD/objdir-$1/rt/librt.so.1 $INSTALL/lib
cp $PKG_BUILD/objdir-$1/resolv/libnss_dns.so.2 $INSTALL/lib
cp $PKG_BUILD/objdir-$1/nis/libnsl.so.1 $INSTALL/lib
cp $PKG_BUILD/objdir-$1/nis/libnss_compat.so.2 $INSTALL/lib
cp $PKG_BUILD/objdir-$1/nss/libnss_files.so.2 $INSTALL/lib
if [ "$NETWORK" = yes ]; then
cp $PKG_BUILD/objdir-$1/crypt/libcrypt.so.1 $INSTALL/lib
cp $PKG_BUILD/objdir-$1/resolv/libresolv.so.2 $INSTALL/lib
fi
#$SCRIPTS/install timezone-data
#mkdir -p $INSTALL/etc
#cp $PKG_DIR/config/nsswitch.conf $INSTALL/etc
exit 0

View File

@ -0,0 +1,64 @@
diff -Naur glibc-2.11.orig/Makeconfig glibc-2.11/Makeconfig
--- glibc-2.11.orig/Makeconfig 2009-10-30 13:17:08.000000000 -0400
+++ glibc-2.11/Makeconfig 2009-11-13 12:14:18.000000000 -0500
@@ -538,12 +538,20 @@
libunwind = -lunwind
endif
ifneq ($(have-as-needed),yes)
- libgcc_eh := -lgcc_eh $(libunwind)
+ ifneq ($(have-cc-with-libgcc_eh),yes)
+ libgcc_eh := $(libunwind)
+ else
+ libgcc_eh := -lgcc_eh $(libunwind)
+ endif
else
libgcc_eh := -Wl,--as-needed -lgcc_s$(libgcc_s_suffix) $(libunwind) -Wl,--no-as-needed
endif
gnulib := -lgcc $(libgcc_eh)
-static-gnulib := -lgcc -lgcc_eh $(libunwind)
+ifneq ($(have-cc-with-libgcc_eh),yes)
+ static-gnulib := -lgcc $(libunwind)
+else
+ static-gnulib := -lgcc -lgcc_eh $(libunwind)
+endif
libc.so-gnulib := -lgcc
endif
ifeq ($(elf),yes)
diff -Naur glibc-2.11.orig/config.make.in glibc-2.11/config.make.in
--- glibc-2.11.orig/config.make.in 2009-10-30 13:17:08.000000000 -0400
+++ glibc-2.11/config.make.in 2009-11-13 12:14:18.000000000 -0500
@@ -64,6 +64,7 @@
have-libaudit = @have_libaudit@
have-libcap = @have_libcap@
have-cc-with-libunwind = @libc_cv_cc_with_libunwind@
+have-cc-with-libgcc_eh = @libc_cv_cc_with_libgcc_eh@
fno-unit-at-a-time = @fno_unit_at_a_time@
bind-now = @bindnow@
have-hash-style = @libc_cv_hashstyle@
diff -Naur glibc-2.11.orig/configure.in glibc-2.11/configure.in
--- glibc-2.11.orig/configure.in 2009-10-30 13:17:08.000000000 -0400
+++ glibc-2.11/configure.in 2009-11-13 12:14:18.000000000 -0500
@@ -1505,6 +1505,23 @@
AC_DEFINE(HAVE_CC_WITH_LIBUNWIND)
fi
+ AC_CACHE_CHECK(whether to link against libgcc_eh,
+ libc_cv_cc_with_libgcc_eh, [
+ cat > conftest.c <<EOF
+int main (void) { return 0; }
+EOF
+ if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -static -o conftest \
+ conftest.c -v 2>&1 >/dev/null | grep -q " -lgcc_eh "; then
+ libc_cv_cc_with_libgcc_eh=yes
+ else
+ libc_cv_cc_with_libgcc_eh=no
+ fi
+ rm -f conftest*])
+ AC_SUBST(libc_cv_cc_with_libgcc_eh)
+ if test $libc_cv_cc_with_libgcc_eh = yes; then
+ AC_DEFINE(HAVE_CC_WITH_LIBGCC_EH)
+ fi
+
AC_CACHE_CHECK(for -z nodelete option,
libc_cv_z_nodelete, [dnl
cat > conftest.c <<EOF

View File

@ -0,0 +1,12 @@
--- glibc-2.9/configure.in~ 2008-11-14 21:25:46.000000000 +0200
+++ glibc-2.9/configure.in 2009-01-05 18:03:46.169335285 +0200
@@ -1664,7 +1664,7 @@
libc_cv_gnu89_inline=no
fi
rm -f conftest*])
-if test $libc_cv_gnu89_inline = yes; then
+if test "$libc_cv_gnu89_inline" != no; then
libc_cv_gnu89_inline=-fgnu89-inline
else
libc_cv_gnu89_inline=

View File

@ -0,0 +1,28 @@
#!/bin/sh
. config/options
EGLIBC=`ls -d $PKG_BUILD`
PKG_DIR=`find $PACKAGES -type d -name $1`
cp $PKG_DIR/config/option-groups.defaults $EGLIBC
echo "OPTION_EGLIBC_ADVANCED_INET6 = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_BACKTRACE = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_BIG_MACROS = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_BSD = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_CXX_TESTS = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_CATGETS = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_CHARSETS = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_CRYPT = y" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_CRYPT_UFC = y" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_DB_ALIASES = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_ENVZ = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_FCVT = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_FMTMSG = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_FSTAB = y" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_LIBM_BIG = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_LOCALES = n" >> $EGLIBC/eglibc.config
echo "OPTION_EGLIBC_LOCALE_CODE = n" >> $EGLIBC/eglibc.config

View File

@ -0,0 +1 @@
http://sources.openelec.tv/svn/eglibc-2.11-r2934.tar.bz2