12 export SOURCES
="${TOP}/sources"
13 export SCRIPTS
="${SOURCES}/scripts"
14 export SRCDIR
="${TOP}/packages"
15 export ROOT_DIR
="${TOP}/rootfs"
16 export ROOT_OVERLAY
="${TOP}/rootfs-overlay"
17 export BUILD
="${TOP}/build"
18 export CONFIG_DIR
="${TOP}/sources/configs"
19 export WORK
="${BUILD}/temp-${ARCH}"
20 export STAGING_DIR
="${TOP}/staging-dir"
22 # Default flags to point the compiler to the right libraries and
23 # include files. In the case of cross compiling this assumes that
24 # the compiler doesn't add system directories to it's search paths.
25 # This is taken care of by a gcc wrapper script which passes things
26 # like -nostdinc -nostdlibs -nodefaultlibs to gcc.
28 CFLAGS_HEADERS
="-I$STAGING_DIR/usr/include"
30 CFLAGS
="$CFLAGS_HEADERS -pipe -march=armv4t -mtune=arm920t"
32 if [ -z "$DEBUG" ]; then
35 CFLAGS
="$CFLAGS -O0 -g -ggdb"
38 CFLAGS
="$CFLAGS -ffunction-sections -fdata-sections"
40 LDFLAGS
="-Wl,--gc-section"
42 # Make sure that pkg-config uses the right paths and doesn't pull
43 # in depencies from the host system.
44 export PKG_CONFIG_PATH
="${STAGING_DIR}/usr/lib/pkgconfig"
45 export PKG_CONFIG_LIBDIR
="${STAGING_DIR}/usr/lib/pkgconfig"
46 export PKG_CONFIG_SYSROOT_DIR
="${STAGING_DIR}"
48 # check if we are building natively or if we are cross compiling
50 if [[ ! $
(uname
-m) == arm
* ]]
53 CROSS_CONFIGURE_FLAGS
="--build=`$SCRIPTS/config.guess` \
54 --target=armv4tl-unknown-linux-gnueabi \
55 --host=armv4tl-unknown-linux-gnueabi"
56 # cross compiler prefix used by kernel, uclibc and busybox
58 [ -z "$CROSS" ] && CROSS
="armv4tl-"
62 [ -z "$CC" ] && export CC
="${CROSS}gcc"
64 # tell the compiler wrapper to link against the libc from
65 # $STAGING_DIR and not against the one from the toolchain
67 export CCWRAP_TOPDIR
="$STAGING_DIR/usr"
71 # Tell bash not to cache the $PATH because we modify it. Without
72 # this, bash won't find new executables added after startup.
75 [ -e config
] && source config
76 source sources
/functions-fwl.sh
77 source sources
/functions.sh
79 # How many processors should make -j use?
83 export CPUS
=$
(echo /sys
/devices
/system
/cpu
/cpu
[0-9]* |
wc -w)
84 [ "$CPUS" -lt 1 ] && CPUS
=1
87 export MAKEFLAGS
="-j $CPUS"
89 # This is an if instead of && so the exit code of include.sh is reliably 0
90 if [ ! -z "$BUILD_VERBOSE" ]