-
Notifications
You must be signed in to change notification settings - Fork 32
/
cross-compiler.sh
executable file
·30 lines (22 loc) · 1.06 KB
/
cross-compiler.sh
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
#!/bin/bash
# Build a more advanced cross compiler, including thread support and uClibc++,
# built --with-shared (which produces libgcc_s.so), statically linked
# against uClibc on the host (for portability), and including the $TARGET-ldd
# and $TARGET-ldconfig utilities.
# Building this requires two existing (simple) cross compilers: one for
# the host (to build the executables) and one for the target (to build
# the libraries).
# This is a simple wrapper for native-compiler.sh, we re-use the canadian
# cross infrastructure in there to build a very similar compiler.
. sources/include.sh || exit 1
# Unless told otherwise, create statically linked i686 host binaries (which
# should run on an x86-64 host just fine, even if it hasn't got 32-bit
# libraries installed).
BUILD_STATIC=${BUILD_STATIC:-all} HOST_ARCH="${CROSS_COMPILER_HOST:-i686}" \
TOOLCHAIN_PREFIX="${1}-" STAGE_NAME=cross-compiler \
./native-compiler.sh "$1" || exit 1
# Run the cross compiler smoke test if requested.
if [ ! -z "$CROSS_SMOKE_TEST" ]
then
more/cross-smoke-test.sh "$ARCH" || exit 1
fi