# Setup # This file is sourced, not run. It provides a place for you to persisently # set configuration variables. # Feel free to replace this file with your own version, or to set these # environment variables on the command line. This entire file is optional; # by default all the variables listed in this file are left blank. ############################################################################# # Seting this tells build.sh not to build a native toolchain. (This yields # a much smaller root-filesystem tarball.) # export NO_NATIVE_COMPILER=1 # Setting this tells root-filesystem.sh not to create the normal directory # hierarchy of /usr, /tmp, /etc, and so on. # export ROOT_NODIRS=1 # Setting this tells build.sh to use the existing $PATH commands to build # everything, which probably won't work out of the box. Cross compiling is # an insanely delicate process which requires a carefully configured host # environment. If we don't set up our own, you'll have to supply one. # export NO_HOST_TOOLS=1 # Set this to a comma separated list of packages to build statically, # or "none" to build all packages dynamically. Set to "all" to build all # packages statically (and not install static libraries on the target). # By default, busybox and the native compiler are built statically. # (Using a static busybox on the target provides a 20% performance boost to # autoconf under qemu, and building the native compiler static makes it much # more portable to other target root filesystems.) # export BUILD_STATIC=busybox,binutils,gcc-core,gcc-g++,make # If this is set, build.sh will build a cross compiler statically linked # against uClibc. This indicates which host that compiler should run on. # Note that most x86_64 systems can run a statically linked i686 binary even # if they don't have the 32-bit libraries installed, so that's a good default. # export CROSS_HOST_ARCH=i686 # If this is set, only build a C compiler and not C++ # export NO_CPLUSPLUS=1 # This may be set by the target's "details" file, but you can override it here. # You can set it to ext2, initramfs, or squashfs. It defaults to squashfs # if blank. # export SYSIMAGE_TYPE=squashfs # Size of writeable HDA image (if any), defaults to 64 megs # export SYSIMAGE_HDA_MEGS=64 # Set this to use symlinks instead of hard links when creating temporary copies # of the source packages (in setupfor). This is slower and uses more inodes, # but allows the extracted source packages to live in a different filesystem # than the build directory. # export SNAPSHOT_SYMLINK=1 # Use qemu to run "hello world" built by the cross compiler. Note that this # requires working qemu application emulation for your target to do this, which # is significantly more brittle than system emulation. (To unbreak qemu-arm, # "echo 0 > /proc/sys/vm/mmap_min_addr" as root.) You probably don't need # to do this. # export CROSS_SMOKE_TEST=1 # If set, try downloading packages from this location first. # export PREFERRED_MIRROR=http://impactlinux.com/fml/mirror # Set this if you don't want to drop all unrecognized environment variables. # NO_SANITIZE_ENVIRONMENT=1 # Try development versions of these packages. (Know what you're doing if # you select these, it's quite possible the result won't work.) # export USE_UNSTABLE=uClibc,busybox,toybox,linux,binutils,make,gcc-core,gcc-g++ # Debugging option to leave source in build/temp-$ARCH after build. # export NO_CLEANUP=1 # Don't create tarballs at the end of each stage. # export NO_STAGE_TARBALLS=1 # Tell the linux kernel, uClibc, and busybox to show the actual build commands # instead of pretty-print output. # export BUILD_VERBOSE=1 # Don't update the title bar in the display # export NO_TITLE_BAR=1 # Create a tarball with the files installed by each individual package at # each stage of the build. # export BINARY_PACKAGE_TARBALLS=1 # Set this if you want debug symbols in your binaries. # export SKIP_STRIP=1 # Set this to tell download.sh to extract all the tarballs up-front right # after downloading them. (Otherwise the tarball is extracted by setupfor # the first time the build tries to use it.) # # Extracting tarballs early is useful in order to run multiple build.sh # instances in parallel when building multiple targets, or to test that # new patches added to the sources/patches directory apply cleanly. # export EXTRACT_ALL=1 # If you build strange things (such as gcc 3.4 with binutils 2.14), you # may need extra host binaries added to build/host. This lets you add them. # In general, you don't want to do this. # export HOST_EXTRA="lex yacc" # Set this to continue despite failed patches. # export ALLOW_PATCH_FAILURE=1 # If this is set, it's points to a directory containing additional files to # copy into the simple-root-filesystem. The path is either absolute or # relavitve to the aboriginal topdir. # export SIMPLE_ROOT_OVERLAY="overlay" # Build more things in parallel. # export FORK=1 # Force a specific number of CPUs instead of autodetecting. # export CPUS=1 # If set, list of packages to build with CPUS=1. (Faster than setting CPUS=1 # for the whole build if you know ahead of time which package is going to # break.) # export DEBUG_PACKAGE=bash,busybox # This isn't actually one of our variables, but a number of packages listen # to this to add extra debug info to their binaries. (Use with SKIP_STRIP) # export CFLAGS="-g -pipe"