summaryrefslogtreecommitdiff
path: root/strata/build-essential
diff options
context:
space:
mode:
Diffstat (limited to 'strata/build-essential')
-rw-r--r--strata/build-essential/glibc.morph (renamed from strata/build-essential/eglibc.morph)49
-rw-r--r--strata/build-essential/stage2-glibc.morph (renamed from strata/build-essential/stage2-eglibc.morph)19
2 files changed, 43 insertions, 25 deletions
diff --git a/strata/build-essential/eglibc.morph b/strata/build-essential/glibc.morph
index cc827ef9..6869737d 100644
--- a/strata/build-essential/eglibc.morph
+++ b/strata/build-essential/glibc.morph
@@ -1,55 +1,56 @@
-name: eglibc
+name: glibc
kind: chunk
products:
-- artifact: eglibc-nss
+- artifact: glibc-nss
include:
- etc/nsswitch.conf
- (usr/)?lib/libnss.*
-- artifact: eglibc-gconv
+- artifact: glibc-gconv
include:
- (usr/)?lib/gconv/.*
-- artifact: eglibc-libs
+- artifact: glibc-libs
include:
- sbin/ldconfig
- lib(32|64)?/ld-.*
- (usr/)?lib(exec)?/pt_chown
-- artifact: eglibc-bins
+- artifact: glibc-bins
include:
- (usr/)?s?bin/.*
- (usr/)?libexec/getconf/.*
- (usr/)?lib/libSegFault\.so(\.\d+)*$
-- artifact: eglibc-libs
+- artifact: glibc-libs
include:
- (usr/)?lib(32|64)?/lib[^/]*\.so(\.\d+)*$
-- artifact: eglibc-devel
+- artifact: glibc-devel
include:
- (usr/)?include/.*
- (usr/)?lib(32|64)?/lib.*\.a
- (usr/)?lib(32|64)?/lib.*\.la
- (usr/)?(lib(32|64)?|share)/pkgconfig/.*\.pc
- (usr/)?lib(32|64)?/.*\.o
-- artifact: eglibc-locale
+- artifact: glibc-locale
include:
- (usr/)?share/locale/.*
- (usr/)?share/i18n/.*
- (usr/)?share/zoneinfo/.*
-- artifact: eglibc-misc
+- artifact: glibc-misc
include:
- .*
configure-commands:
- mkdir o
-# Necessary for ARM port
-- cd libc && ln -s ../ports ports
-
- |
- export CFLAGS="-O2 $CFLAGS"; cd o &&
- ../libc/configure \
- $(../morph-arch-config) \
+ case "$MORPH_ARCH" in
+ armv7*)
+ ARCH_FLAGS="--without-fp" ;;
+ esac
+ export PATH="/usr/bin:/sbin:/bin";
+ export CFLAGS="-O2 $CFLAGS";
+ cd o && ../configure \
+ $ARCH_FLAGS \
--prefix="$PREFIX" \
--disable-profile \
--enable-kernel=2.6.25 \
- --enable-add-ons=nptl,ports \
--without-cvs \
--without-selinux
@@ -59,4 +60,20 @@ build-commands:
install-commands:
- cd o && make install_root="$DESTDIR" localtime=UTC install
- mkdir -p "$DESTDIR/etc"
+- |
+ cat <<EOF > nsswitch.conf
+ passwd: compat
+ group: compat
+ shadow: compat
+
+ hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 myhostname
+ networks: files
+
+ protocols: db files
+ services: db files
+ ethers: db files
+ rpc: db files
+
+ netgroup: nis
+ EOF
- install -m 644 -o root -g root nsswitch.conf "$DESTDIR/etc/nsswitch.conf"
diff --git a/strata/build-essential/stage2-eglibc.morph b/strata/build-essential/stage2-glibc.morph
index 3a7277ac..7393e91b 100644
--- a/strata/build-essential/stage2-eglibc.morph
+++ b/strata/build-essential/stage2-glibc.morph
@@ -1,28 +1,29 @@
-name: stage2-eglibc
+name: stage2-glibc
kind: chunk
configure-commands:
- mkdir o
-# Necessary for ARM port
-- cd libc && ln -s ../ports ports
-
# Configure flag notes:
# 1. Avoid installing to PREFIX/lib64 on x86_64.
# 2. Location of linux-api-headers.
-# 3. Normal flags. See eglibc.morph.
+# 3. Normal flags. See glibc.morph.
# 4. Force configuration values of certain things that can't be detected
# in a cross-compile.
- |
+ case "$MORPH_ARCH" in
+ armv7*)
+ ARCH_FLAGS="--without-fp" ;;
+ esac
+
export CFLAGS="-O2 $CFLAGS"; export CXX=false; \
- cd o && ../libc/configure \
- $(../morph-arch-config) \
- --build=$(../libc/scripts/config.guess) --host=$TARGET_STAGE1 \
+ cd o && ../configure \
+ $ARCH_FLAGS \
+ --build=$(../scripts/config.guess) --host=$TARGET_STAGE1 \
--prefix="$PREFIX" \
`# [1]` --libdir="$PREFIX/lib" \
`# [2]` --with-headers="$(pwd)/../../$PREFIX/include" \
`# [3]` --disable-profile --enable-kernel=2.6.25 \
- --enable-add-ons=nptl,ports --without-cvs --without-selinux \
`# [4]` libc_cv_c_cleanup=yes libc_cv_ctors_header=yes \
libc_cv_forced_unwind=yes libc_cv_ssp=no