rob@399: # Setup rob@399: rob@1620: # This file is sourced, not run. It provides a place for you to persistently rob@1061: # set configuration variables. rob@399: rob@1061: # Feel free to replace this file with your own version, or to set these rob@1620: # environment variables on the command line. By default all the variables rob@1620: # listed in this file are left blank. rob@1620: rob@1620: # This file is used by the whitelist logic to determine which variables to rob@1620: # pass through when sanitizing the environment. Don't delete the commented rob@1620: # out variables or they won't be passed through if you set them in the rob@1620: # environment. rob@1061: rob@1061: ############################################################################# rob@1061: rob@1620: # Set this if you don't want to drop all unrecognized environment variables. rob@1620: rob@1620: # export NO_SANITIZE_ENVIRONMENT=1 rob@1620: rob@1128: # Setting this tells build.sh to use the existing $PATH commands to build rob@1620: # everything, which probably won't work out of the box. Cross compiling is rob@1128: # an insanely delicate process which requires a carefully configured host rob@1620: # environment. If we don't set up our own, you'll have to supply one. rob@1128: rob@1128: # export NO_HOST_TOOLS=1 rob@1128: rob@1083: # Set this to a comma separated list of packages to build statically, rob@1620: # or "none" to build all packages dynamically. Set to "all" to build all rob@1083: # packages statically (and not install static libraries on the target). rob@399: rob@1083: # By default, busybox and the native compiler are built statically. rob@1083: # (Using a static busybox on the target provides a 20% performance boost to rob@1083: # autoconf under qemu, and building the native compiler static makes it much rob@1083: # more portable to other target root filesystems.) rob@865: rob@1800: # export BUILD_STATIC=busybox,toybox,binutils,gcc-core,gcc-g++,make rob@399: rob@944: # If this is set, build.sh will build a cross compiler statically linked rob@1620: # against uClibc. This indicates which host that compiler should run on. rob@783: # Note that most x86_64 systems can run a statically linked i686 binary even rob@944: # if they don't have the 32-bit libraries installed, so that's a good default. rob@783: rob@1350: # export CROSS_COMPILER_HOST=i686 rob@783: rob@1130: # If this is set, only build a C compiler and not C++ rob@1130: rob@1130: # export NO_CPLUSPLUS=1 rob@1130: rob@1728: # What kind of root filesystem to create: ext2, rootfs (combined initramfs), rob@1728: # cpio (separate initramfs), or squashfs. It defaults to cpio if blank. rob@585: rob@1728: # export SYSIMAGE_TYPE=cpio rob@585: rob@1553: # Size of writeable (ext2) HDA image. Does not apply to squashfs or initramfs rob@616: rob@1347: # export SYSIMAGE_HDA_MEGS=2048 rob@616: rob@1620: # Comma separated list of packages to build from stable tarballs instead rob@1620: # of source control repositories. rob@623: rob@1553: # export IGNORE_REPOS=all rob@623: rob@1061: # Use qemu to run "hello world" built by the cross compiler. Note that this rob@1553: # requires working qemu application emulation for your target, which rob@1620: # is significantly more brittle than system emulation. (To unbreak qemu-arm, rob@1061: # "echo 0 > /proc/sys/vm/mmap_min_addr" as root.) You probably don't need rob@1061: # to do this. rob@654: rob@654: # export CROSS_SMOKE_TEST=1 rob@654: rob@1061: # If set, try downloading packages from this location first. rob@399: rob@1620: # export PREFERRED_MIRROR=http://landley.net/aboriginal/mirror rob@1175: rob@567: # Debugging option to leave source in build/temp-$ARCH after build. rob@907: rob@567: # export NO_CLEANUP=1 rob@485: rob@675: # Don't create tarballs at the end of each stage. rob@907: rob@988: # export NO_STAGE_TARBALLS=1 rob@675: rob@709: # Tell the linux kernel, uClibc, and busybox to show the actual build commands rob@709: # instead of pretty-print output. rob@709: rob@709: # export BUILD_VERBOSE=1 rob@762: rob@762: # Don't update the title bar in the display rob@762: rob@762: # export NO_TITLE_BAR=1 rob@815: rob@815: # Create a tarball with the files installed by each individual package at rob@815: # each stage of the build. rob@815: rob@815: # export BINARY_PACKAGE_TARBALLS=1 mark@837: rob@856: # Set this if you want debug symbols in your binaries. rob@854: rob@854: # export SKIP_STRIP=1 rob@854: rob@962: # Set this to tell download.sh to extract all the tarballs up-front right rob@1620: # after downloading them. (Otherwise the tarball is extracted by setupfor rob@962: # the first time the build tries to use it.) rob@962: # rob@962: # Extracting tarballs early is useful in order to run multiple build.sh rob@962: # instances in parallel when building multiple targets, or to test that rob@962: # new patches added to the sources/patches directory apply cleanly. rob@962: rob@962: # export EXTRACT_ALL=1 rob@962: rob@1137: # If you build strange things (such as gcc 3.4 with binutils 2.14), you rob@1620: # may need extra host binaries added to build/host. This lets you add them. rob@1137: # In general, you don't want to do this. rob@1137: rob@1137: # export HOST_EXTRA="lex yacc" rob@1137: rob@1544: # Build with busybox defconfig instead of toybox. rob@1477: rob@1544: # export BUSYBOX=1 rob@1477: rob@1098: # Set this to continue despite failed patches. rob@1098: rob@1098: # export ALLOW_PATCH_FAILURE=1 rob@1098: rob@1181: # Build more things in parallel. rob@1181: rob@1181: # export FORK=1 rob@1181: rob@1181: # Force a specific number of CPUs instead of autodetecting. rob@1181: rob@1181: # export CPUS=1 rob@1181: rob@1620: # If set, list of packages to build with CPUS=1. (Faster than setting CPUS=1 rob@1200: # for the whole build if you know ahead of time which package is going to rob@1620: # break.) Non-parallel builds give a more intelligent log output. rob@1200: rob@1200: # export DEBUG_PACKAGE=bash,busybox rob@1200: rob@856: # This isn't actually one of our variables, but a number of packages listen rob@1620: # to this to add extra debug info to their binaries. (Use with SKIP_STRIP) rob@856: rob@1045: # export CFLAGS="-g -pipe" rob@1812: rob@1816: # The following paths supplement the build with additional site-specific data. rob@1816: # Each path is either absolute or relative to the aboriginal topdir. gsalmon@1814: gsalmon@1814: # If you have patches you want patch files outside the aboriginal gsalmon@1814: # patch directory to be applied, supply the path here. Paths to the rob@1816: # patches are built using the pattern ${MY_PATCH_DIR}/${PACKAGE}/*.patch rob@1816: # so one or more patches to apply to linux could be in the gsalmon@1814: # ${EXTERNAL_PATCH_DIR}/linux directory and will be applied in sorted rob@1816: # order (after the builtin sources/patches/${PACKAGE}-*.patch files). rob@1816: rob@1816: # export MY_PATCH_DIR=/path/to/external/patches rob@1816: rob@1816: # If this is set, it's points to a directory containing additional files to rob@1816: # copy into the root-filesystem. (This overwrites existing conflicting files.) rob@1816: rob@1816: # export MY_ROOT_OVERLAY="overlay" gsalmon@1814: rob@1816: # If you don't want to build cross compilers, supply path to existing one. rob@1816: # Setting these tells build.sh not to build host or native compilers rob@1816: # (the native compiler is very sensitive to libgcc build version skew). rob@1816: rob@1816: # export MY_CROSS_PATH=/path/to/cross-compiler/bin rob@1816: # export MY_CROSS_PREFIX=thingy- rob@1816: rob@1816: