blob: ee28c9dd48289304dc7de93e42fa77154fd5bd58 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
name: armv7lhf-cross-eglibc
kind: chunk
configure-commands:
- mkdir o
# Necessary for ARM port
- cd libc && ln -s ../ports ports
# Configure flag notes:
# 1. Location of linux-api-headers, needed since eglibc doesn't
# support being given a sysroot.
# 2. Location of binutils, since we build binutils for the final
# target triplet, but our gcc of our stage 1 target triplet.
# 3. Normal flags. See eglibc.morph.
# 4. Force configuration values of certain things that can't be detected
# in a cross-compile.
- |
export MORPH_ARCH=armv7lhf
export TARGET=armv7lhf-baserock-linux-gnueabi
export TARGET_STAGE1=armv7lhf-none-linux-gnueabi
export CFLAGS="-O2 $CFLAGS"
# eglibc looks for $TARGET-gcc, but not $TARGET_STAGE1-gcc even
# though --build is specified, so we have to override what gcc to
# use here.
export CC="$TARGET_STAGE1-gcc"
cd o && ../libc/configure \
$(../morph-arch-config) \
--build=$TARGET_STAGE1 --host=$TARGET \
--prefix="$PREFIX" \
`# [1]` --with-headers="$PREFIX/$TARGET/sys-root/$PREFIX/include" \
`# [2]` --with-binutils="$PREFIX/$TARGET/bin" \
`# [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
build-commands:
- cd o && make localtime=UTC
install-commands:
- |
# eglibc doesn't help with sysroots, so we need to spell out the
# full path ourselves.
export TARGET=armv7lhf-baserock-linux-gnueabi
cd o && make install_root="$DESTDIR/$PREFIX/$TARGET/sys-root/" \
localtime=UTC install
|