Files
poky/meta/conf/bitbake.conf
Mark Hatle 30f5eead40 bitbake.conf: Fix missing NM definition
The definition of NM was missing, causing certain configure calls to revert
to using the host system's version of NM.  This can cause problems on some
MIPS based targets, but is theoretically wrong everywhere.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-03 08:49:22 -08:00

744 lines
31 KiB
Plaintext

##################################################################
# Standard target filesystem paths.
##################################################################
# Path prefixes
export base_prefix = ""
export prefix = "/usr"
export exec_prefix = "/usr"
# Base paths
export base_bindir = "${base_prefix}/bin"
export base_sbindir = "${base_prefix}/sbin"
export base_libdir = "${base_prefix}/lib"
# Architecture independent paths
export datadir = "${prefix}/share"
export sysconfdir = "${base_prefix}/etc"
export servicedir = "${base_prefix}/srv"
export sharedstatedir = "${base_prefix}/com"
export localstatedir = "${base_prefix}/var"
export infodir = "${datadir}/info"
export mandir = "${datadir}/man"
export docdir = "${datadir}/doc"
# Architecture dependent paths
export bindir = "${exec_prefix}/bin"
export sbindir = "${exec_prefix}/sbin"
export libexecdir = "${exec_prefix}/libexec"
export libdir = "${exec_prefix}/lib"
export includedir = "${exec_prefix}/include"
export oldincludedir = "${exec_prefix}/include"
#
# These must match the various bbclass layout definitions
#
base_bindir_native = "/bin"
base_sbindir_native = "/sbin"
sysconfdir_native = "/etc"
prefix_native = "/usr"
bindir_native = "${prefix_native}/bin"
sbindir_native = "${prefix_native}/sbin"
includedir_native = "${prefix_native}/include"
libdir_native = "${prefix_native}/lib"
datadir_native = "${prefix_native}/share"
bindir_cross = "/bin"
bindir_crossscripts = "${bindir}/crossscripts"
prefix_nativesdk = "/usr"
bindir_nativesdk = "${prefix_nativesdk}/bin"
libdir_nativesdk = "${prefix_nativesdk}/lib"
base_libdir_nativesdk = "/lib"
localstatedir_nativesdk = "/var"
#
# Cross recipes need to know about the target layout
# := is used carefully here
#
target_datadir := "${datadir}"
##################################################################
# Architecture-dependent build variables.
##################################################################
BUILD_ARCH = "${@os.uname()[4]}"
BUILD_OS = "${@os.uname()[0].lower()}"
BUILD_VENDOR = ""
BUILD_SYS = "${BUILD_ARCH}${BUILD_VENDOR}-${BUILD_OS}"
BUILD_PREFIX = ""
BUILD_CC_ARCH = ""
BUILD_EXEEXT = ""
HOST_ARCH = "${TARGET_ARCH}"
HOST_OS = "${TARGET_OS}"
HOST_VENDOR = "${TARGET_VENDOR}"
HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
HOST_PREFIX = "${TARGET_PREFIX}"
HOST_CC_ARCH = "${TARGET_CC_ARCH}"
HOST_EXEEXT = ""
TARGET_ARCH = "INVALID"
TARGET_OS = "INVALID"
TARGET_VENDOR = "${BUILD_VENDOR}"
TARGET_SYS = "${TARGET_ARCH}${TARGET_VENDOR}${@['-' + bb.data.getVar('TARGET_OS', d, 1), ''][bb.data.getVar('TARGET_OS', d, 1) == ('' or 'custom')]}"
TARGET_PREFIX = "${TARGET_SYS}-"
TARGET_CC_ARCH = ""
SDK_ARCH = "${BUILD_ARCH}"
SDK_OS = "${BUILD_OS}"
SDK_VENDOR = "-pokysdk"
SDK_SYS = "${SDK_ARCH}${SDK_VENDOR}${@['-' + bb.data.getVar('SDK_OS', d, 1), ''][bb.data.getVar('SDK_OS', d, 1) == ('' or 'custom')]}"
SDK_PREFIX = "${SDK_SYS}-"
SDK_CC_ARCH = "${BUILD_CC_ARCH}"
BASE_PACKAGE_ARCH = "${HOST_ARCH}"
PACKAGE_ARCH = "${BASE_PACKAGE_ARCH}"
MACHINE_ARCH = "${@[bb.data.getVar('BASE_PACKAGE_ARCH', d, 1), bb.data.getVar('MACHINE', d, 1)][bool(bb.data.getVar('MACHINE', d, 1))]}"
PACKAGE_ARCHS = "all any noarch ${TARGET_ARCH} ${PACKAGE_EXTRA_ARCHS} ${MACHINE}"
# MACHINE shouldn't be included here as a variable dependency since machine specific
# packages are handled using multimachine
PACKAGE_ARCHS[vardepsexclude] = "MACHINE"
MULTIMACH_ARCH = "${PACKAGE_ARCH}"
MULTIMACH_TARGET_SYS = "${MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
MULTIMACH_HOST_SYS = "${MULTIMACH_ARCH}${HOST_VENDOR}-${HOST_OS}"
BASEPKG_HOST_SYS = "${BASE_PACKAGE_ARCH}${HOST_VENDOR}-${HOST_OS}"
BASEPKG_TARGET_SYS = "${BASE_PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
# select proper CPU to get binary locales generated
QEMU_OPTIONS = ""
QEMU_OPTIONS_iwmmxt = "-cpu pxa270-c5"
QEMU_OPTIONS_armv6 = "-cpu arm1136"
QEMU_OPTIONS_armv7a = "-cpu cortex-a8"
##################################################################
# Date/time variables.
##################################################################
DATE := "${@time.strftime('%Y%m%d',time.gmtime())}"
TIME := "${@time.strftime('%H%M%S',time.gmtime())}"
DATETIME = "${DATE}${TIME}"
##################################################################
# Openembedded Software Prerequisites.
##################################################################
# python-native should be here but python relies on building
# its own in staging
# mercurial-native is required to pull mercurial repositories (hg://...)
# we don't have it yet in the recipies so let's assume it's provided by
# the underlying OS
ASSUME_PROVIDED = "\
bzip2-native \
cvs-native \
grep-native \
diffstat-native \
mercurial-native \
patch-native \
perl-native-runtime \
python-native-runtime \
svn-native \
tar-native \
texinfo-native \
virtual/libintl-native \
"
##################################################################
# Package default variables.
##################################################################
PN = "${@bb.parse.BBHandler.vars_from_file(bb.data.getVar('FILE',d),d)[0] or 'defaultpkgname'}"
PV = "${@bb.parse.BBHandler.vars_from_file(bb.data.getVar('FILE',d),d)[1] or '1.0'}"
PR = "${@bb.parse.BBHandler.vars_from_file(bb.data.getVar('FILE',d),d)[2] or 'r0'}"
PF = "${PN}-${EXTENDPE}${PV}-${PR}"
EXTENDPE = "${@['','${PE\x7d_'][bb.data.getVar('PE',d,1) > 0]}"
EXTENDPEVER = "${@['','${PE\x7d:'][bb.data.getVar('PE',d,1) > 0]}"
EXTENDPV = "${EXTENDPEVER}${PV}-${PR}"
P = "${PN}-${PV}"
# Base package name
# Automatically derives "foo" from "foo-native", "foo-cross" or "foo-initial"
# otherwise it is the same as PN and P
SPECIAL_PKGSUFFIX = "-native -cross -initial -intermediate -nativesdk -crosssdk -cross-canadian"
BPN = "${@base_prune_suffix(bb.data.getVar('PN', d, True), bb.data.getVar('SPECIAL_PKGSUFFIX', d, True).split(), d)}"
BP = "${BPN}-${PV}"
# Package info.
SECTION = "base"
PRIORITY = "optional"
SUMMARY_${PN} ?= "${PN} version ${PV}-${PR}"
SUMMARY_${PN}-dbg ?= "Debugging files for ${PN}"
SUMMARY_${PN}-dev ?= "Development files for ${PN}"
SUMMARY_${PN}-doc ?= "Documentation files for ${PN}"
DESCRIPTION_${PN} ?= "${SUMMARY_${PN}}"
DESCRIPTION_${PN}-dbg ?= "${SUMMARY_${PN}-dbg}"
DESCRIPTION_${PN}-dev ?= "${SUMMARY_${PN}-dev}"
DESCRIPTION_${PN}-doc ?= "${SUMMARY_${PN}-doc}"
LICENSE = "INVALID"
MAINTAINER = "Yocto Project Team <poky@yoctoproject.org>"
HOMEPAGE = "unknown"
# Package dependencies and provides.
# Ensure that -dev packages recommend the corresponding -dev packages of their
# deps, and the same for -dbg.
DEPCHAIN_PRE = ""
DEPCHAIN_POST = "-dev -dbg"
DEPENDS = ""
RDEPENDS = ""
PROVIDES = ""
PROVIDES_prepend = "${P} ${PF} ${PN} "
RPROVIDES = ""
MULTI_PROVIDER_WHITELIST = "virtual/libintl virtual/libintl-native virtual/libintl-nativesdk virtual/xserver"
SOLIBS = ".so.*"
SOLIBS_darwin = ".*.dylib"
SOLIBS_darwin8 = ".*.dylib"
SOLIBS_darwin9 = ".*.dylib"
SOLIBSDEV = ".so"
SOLIBSDEV_darwin = ".dylib"
SOLIBSDEV_darwin8 = ".dylib"
SOLIBSDEV_darwin9 = ".dylib"
PACKAGES = "${PN}-dbg ${PN} ${PN}-doc ${PN}-dev ${PN}-locale"
PACKAGES_DYNAMIC = "${PN}-locale-*"
FILES = ""
FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*${SOLIBS} \
${sysconfdir} ${sharedstatedir} ${localstatedir} \
${base_bindir}/* ${base_sbindir}/* \
${base_libdir}/*${SOLIBS} \
${datadir}/${PN} ${libdir}/${PN}/* \
${datadir}/pixmaps ${datadir}/applications \
${datadir}/idl ${datadir}/omf ${datadir}/sounds \
${libdir}/bonobo/servers"
FILES_${PN}-doc = "${docdir} ${mandir} ${infodir} ${datadir}/gtk-doc \
${datadir}/gnome/help"
SECTION_${PN}-doc = "doc"
FILES_${PN}-dev = "${includedir} ${libdir}/lib*${SOLIBSDEV} ${libdir}/*.la \
${libdir}/*.a ${libdir}/*.o ${libdir}/pkgconfig \
${datadir}/pkgconfig ${datadir}/aclocal \
${base_libdir}/*.a ${base_libdir}/*.o"
SECTION_${PN}-dev = "devel"
ALLOW_EMPTY_${PN}-dev = "1"
RDEPENDS_${PN}-dev = "${PN} (= ${EXTENDPV})"
FILES_${PN}-dbg = "${bindir}/.debug ${sbindir}/.debug ${libexecdir}/.debug ${libdir}/.debug \
${base_bindir}/.debug ${base_sbindir}/.debug ${base_libdir}/.debug ${libdir}/${PN}/.debug \
${libdir}/matchbox-panel/.debug"
SECTION_${PN}-dbg = "devel"
ALLOW_EMPTY_${PN}-dbg = "1"
RRECOMMENDS_${PN}-dbg = "${PN} (= ${EXTENDPV})"
FILES_${PN}-locale = "${datadir}/locale"
# File manifest
FILE_DIRNAME = "${@os.path.dirname(bb.data.getVar('FILE', d))}"
# FILESPATH is set in base.bbclass
#FILESPATH = "${FILE_DIRNAME}/${PF}:${FILE_DIRNAME}/${P}:${FILE_DIRNAME}/${PN}:${FILE_DIRNAME}/${BP}:${FILE_DIRNAME}/${BPN}:${FILE_DIRNAME}/files:${FILE_DIRNAME}"
FILESDIR = "${@bb.which(bb.data.getVar('FILESPATH', d, 1), '.')}"
##################################################################
# General work and output directories for the build system.
##################################################################
TMPDIR ?= "${TOPDIR}/tmp"
CACHE = "${TMPDIR}/cache${@['', '/' + str(bb.data.getVar('MACHINE', d, 1))][bool(bb.data.getVar('MACHINE', d, 1))]}${@['', '/' + str(bb.data.getVar('SDKMACHINE', d, 1))][bool(bb.data.getVar('SDKMACHINE', d, 1))]}"
# The persistent cache should be shared by all builds
PERSISTENT_DIR = "${TMPDIR}/cache"
LOG_DIR = "${TMPDIR}/log"
CO_DIR = "${DL_DIR}"
CVSDIR = "${CO_DIR}/cvs"
SVNDIR = "${CO_DIR}/svn"
GITDIR = "${CO_DIR}/git"
BZRDIR = "${CO_DIR}/bzr"
HGDIR = "${CO_DIR}/hg"
STAMP = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PF}"
WORKDIR = "${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PF}"
T = "${WORKDIR}/temp"
D = "${WORKDIR}/image"
S = "${WORKDIR}/${BP}"
B = "${S}"
STAGING_DIR = "${TMPDIR}/sysroots"
STAGING_DIR_NATIVE = "${STAGING_DIR}/${BUILD_SYS}"
STAGING_BINDIR_NATIVE = "${STAGING_DIR_NATIVE}${bindir_native}"
STAGING_BINDIR_CROSS = "${STAGING_BINDIR}/crossscripts"
STAGING_BINDIR_TOOLCHAIN = "${STAGING_DIR_NATIVE}${bindir_native}/${BASEPKG_TARGET_SYS}"
STAGING_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${libdir_native}"
STAGING_INCDIR_NATIVE = "${STAGING_DIR_NATIVE}${includedir_native}"
STAGING_ETCDIR_NATIVE = "${STAGING_DIR_NATIVE}${sysconfdir_native}"
STAGING_DATADIR_NATIVE = "${STAGING_DIR_NATIVE}${datadir_native}"
# This should really be MULTIMACH_HOST_SYS but that breaks "all" and machine
# specific packages - hack around it for now.
STAGING_DIR_HOST = "${STAGING_DIR}/${MACHINE}"
STAGING_BINDIR = "${STAGING_DIR_HOST}${bindir}"
STAGING_LIBDIR = "${STAGING_DIR_HOST}${libdir}"
STAGING_INCDIR = "${STAGING_DIR_HOST}${includedir}"
STAGING_DATADIR = "${STAGING_DIR_HOST}${datadir}"
STAGING_EXECPREFIXDIR = "${STAGING_DIR_HOST}${exec_prefix}"
STAGING_LOADER_DIR = "${STAGING_DIR_HOST}/loader"
STAGING_FIRMWARE_DIR = "${STAGING_DIR_HOST}/firmware"
STAGING_PYDIR = "${STAGING_DIR}/lib/python2.4"
# This should really be MULTIMACH_TARGET_SYS but that breaks "all" and machine
# specific packages - hack around it for now.
STAGING_DIR_TARGET = "${STAGING_DIR}/${MACHINE}"
STAGING_DIR_TCBOOTSTRAP = "${STAGING_DIR_TARGET}-tcbootstrap"
# Setting DEPLOY_DIR outside of TMPDIR is helpful, when you are using
# packaged staging and/or multimachine.
DEPLOY_DIR ?= "${TMPDIR}/deploy"
DEPLOY_DIR_TAR = "${DEPLOY_DIR}/tar"
DEPLOY_DIR_IPK = "${DEPLOY_DIR}/ipk"
DEPLOY_DIR_RPM = "${DEPLOY_DIR}/rpm"
DEPLOY_DIR_DEB = "${DEPLOY_DIR}/deb"
DEPLOY_DIR_IMAGE ?= "${DEPLOY_DIR}/images"
DEPLOY_DIR_TOOLS = "${DEPLOY_DIR}/tools"
PKGDATA_DIR = "${TMPDIR}/pkgdata/${MULTIMACH_TARGET_SYS}"
SDK_NAME = "${DISTRO}/${TARGET_ARCH}"
SDKPATH = "/usr/local/${SDK_NAME}"
SDKPATHNATIVE = "${SDKPATH}/sysroots/${SDK_SYS}"
##################################################################
# Kernel info.
##################################################################
OLDEST_KERNEL = "2.4.0"
STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/kernel"
##################################################################
# Specific image creation and rootfs population info.
##################################################################
IMAGE_ROOTFS = "${WORKDIR}/rootfs"
IMAGE_BASENAME = "${PN}"
IMAGE_NAME = "${IMAGE_BASENAME}-${MACHINE}-${DATETIME}"
IMAGE_LINK_NAME = "${IMAGE_BASENAME}-${MACHINE}"
# This option allows for a precentage overage of the actaul image size rather than a
# fixed extra space
IMAGE_OVERHEAD_FACTOR ?= 1.2
# Comment this option if you want default genext2fs behavior (i.e. create minimal inode number)
IMAGE_EXTRA_OPTION ?= "-i 8192"
IMAGE_CMD = ""
IMAGE_CMD_jffs2 = "mkfs.jffs2 --root=${IMAGE_ROOTFS} --faketime --output=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 ${EXTRA_IMAGECMD}"
IMAGE_CMD_yaffs2 = "mkyaffs2image ${EXTRA_IMAGECMD} ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.yaffs2"
IMAGE_CMD_cramfs = "mkcramfs ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.cramfs ${EXTRA_IMAGECMD}"
IMAGE_CMD_ext2 = "genext2fs -b $ROOTFS_SIZE -d ${IMAGE_ROOTFS} ${IMAGE_EXTRA_OPTION} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext2 ${EXTRA_IMAGECMD}"
IMAGE_CMD_ext2.gz = "rm -rf ${DEPLOY_DIR_IMAGE}/tmp.gz && mkdir ${DEPLOY_DIR_IMAGE}/tmp.gz; genext2fs -b ${IMAGE_ROOTFS_SIZE} -d ${IMAGE_ROOTFS} ${IMAGE_EXTRA_OPTION} ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext2 ${EXTRA_IMAGECMD}; gzip -f -9 ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext2; mv ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext2.gz ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext2.gz; rmdir ${DEPLOY_DIR_IMAGE}/tmp.gz"
IMAGE_CMD_ext3 = "genext2fs -b $ROOTFS_SIZE -d ${IMAGE_ROOTFS} ${IMAGE_EXTRA_OPTION} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext3 ${EXTRA_IMAGECMD}; tune2fs -j ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext3"
IMAGE_CMD_ext3.gz = "rm -rf ${DEPLOY_DIR_IMAGE}/tmp.gz && mkdir ${DEPLOY_DIR_IMAGE}/tmp.gz; genext2fs -b ${IMAGE_ROOTFS_SIZE} -d ${IMAGE_ROOTFS} ${IMAGE_EXTRA_OPTION} ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext3 ${EXTRA_IMAGECMD}; tune2fs -j ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext3; gzip -f -9 ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext3; mv ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext3.gz ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext3.gz; rmdir ${DEPLOY_DIR_IMAGE}/tmp.gz"
IMAGE_CMD_squashfs = "mksquashfs ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.squashfs ${EXTRA_IMAGECMD} -noappend"
IMAGE_CMD_squashfs-lzma = "mksquashfs-lzma ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.squashfs-lzma ${EXTRA_IMAGECMD} -noappend"
IMAGE_CMD_tar = "cd ${IMAGE_ROOTFS} && tar -cvf ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.tar ."
IMAGE_CMD_tar.gz = "cd ${IMAGE_ROOTFS} && tar -zcvf ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.tar.gz ."
IMAGE_CMD_tar.bz2 = "cd ${IMAGE_ROOTFS} && tar -jcvf ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.tar.bz2 ."
IMAGE_CMD_cpio = "cd ${IMAGE_ROOTFS} && (find . | cpio -o -H newc >${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.cpio)"
IMAGE_CMD_cpio.gz = "cd ${IMAGE_ROOTFS} && (find . | cpio -o -H newc | gzip -c -9 >${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.cpio.gz)"
IMAGE_CMD_ubi = "echo \[ubifs\] > ubinize.cfg ; echo mode=ubi >> ubinize.cfg ; echo image=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ubifs >> ubinize.cfg ; echo vol_id=0 >> ubinize.cfg ; echo vol_type=dynamic >> ubinize.cfg ; echo vol_name=${UBI_VOLNAME} >> ubinize.cfg ; echo vol_flags=autoresize >> ubinize.cfg;mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ubifs ${MKUBIFS_ARGS} && ubinize -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ubi ${UBINIZE_ARGS} ubinize.cfg"
IMAGE_CMD_ubifs = "mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.ubifs.img ${MKUBIFS_ARGS}"
EXTRA_IMAGECMD = ""
EXTRA_IMAGECMD_jffs2 = "--pad --little-endian --eraseblock=0x40000"
EXTRA_IMAGECMD_yaffs2 = "1"
EXTRA_IMAGECMD_squashfs = ""
EXTRA_IMAGECMD_squashfs-lzma = ""
EXTRA_IMAGECMD_cpio = ""
EXTRA_IMAGECMD_cpio.gz = ""
EXTRA_IMAGECMD_ubi = ""
EXTRA_IMAGECMD_ubifs = ""
IMAGE_DEPENDS = ""
IMAGE_DEPENDS_jffs2 = "mtd-utils-native"
IMAGE_DEPENDS_yaffs2 = "yaffs2-utils-native"
IMAGE_DEPENDS_cramfs = "cramfs-native"
IMAGE_DEPENDS_ext2 = "genext2fs-native"
IMAGE_DEPENDS_ext2.gz = "genext2fs-native"
IMAGE_DEPENDS_ext3 = "genext2fs-native e2fsprogs-native"
IMAGE_DEPENDS_ext3.gz = "genext2fs-native e2fsprogs-native"
IMAGE_DEPENDS_squashfs = "squashfs-tools-native"
IMAGE_DEPENDS_squashfs-lzma = "squashfs-lzma-tools-native"
IMAGE_DEPENDS_ubi = "mtd-utils-native"
IMAGE_DEPENDS_ubifs = "mtd-utils-native"
EXTRA_IMAGEDEPENDS = ""
##################################################################
# Toolchain info.
##################################################################
PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}:${STAGING_BINDIR_CROSS}:${STAGING_DIR_NATIVE}${sbindir_native}:${STAGING_BINDIR_NATIVE}:${STAGING_DIR_NATIVE}${base_sbindir_native}:${STAGING_DIR_NATIVE}/${base_bindir_native}:"
export PATH
##################################################################
# Build utility info.
##################################################################
CCACHE = "${@bb.which(bb.data.getVar('PATH', d, 1), 'ccache') and 'ccache '}"
TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TARGET}"
export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
export CXX = "${CCACHE}${HOST_PREFIX}g++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
export F77 = "${CCACHE}${HOST_PREFIX}g77 ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
export CPP = "${HOST_PREFIX}gcc -E${TOOLCHAIN_OPTIONS}"
export LD = "${HOST_PREFIX}ld${TOOLCHAIN_OPTIONS}"
export CCLD = "${CC}"
export AR = "${HOST_PREFIX}ar"
export AS = "${HOST_PREFIX}as"
export RANLIB = "${HOST_PREFIX}ranlib"
export STRIP = "${HOST_PREFIX}strip"
export OBJCOPY = "${HOST_PREFIX}objcopy"
export OBJDUMP = "${HOST_PREFIX}objdump"
export NM = "${HOST_PREFIX}nm"
PYTHON = "${@sys.executable}"
export BUILD_CC = "${CCACHE}${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}"
export BUILD_CXX = "${CCACHE}${BUILD_PREFIX}g++ ${BUILD_CC_ARCH}"
export BUILD_F77 = "${CCACHE}${BUILD_PREFIX}g77 ${BUILD_CC_ARCH}"
export BUILD_CPP = "${BUILD_PREFIX}cpp"
export BUILD_LD = "${BUILD_PREFIX}ld"
export BUILD_CCLD = "${BUILD_PREFIX}gcc"
export BUILD_AR = "${BUILD_PREFIX}ar"
export BUILD_RANLIB = "${BUILD_PREFIX}ranlib"
export BUILD_STRIP = "${BUILD_PREFIX}strip"
export BUILD_NM = "${BUILD_PREFIX}nm"
export MAKE = "make"
EXTRA_OEMAKE = "-e MAKEFLAGS="
export LC_ALL = "C"
##################################################################
# Patch handling.
##################################################################
PATCHTOOL = 'quilt'
PATCHRESOLVE = 'user'
##################################################################
# Build flags and options.
##################################################################
export BUILD_CPPFLAGS = "-isystem${STAGING_INCDIR_NATIVE}"
BUILDSDK_CPPFLAGS = "-isystem${STAGING_INCDIR}"
export CPPFLAGS = "${TARGET_CPPFLAGS}"
export TARGET_CPPFLAGS = ""
#export TARGET_CPPFLAGS = "-isystem${STAGING_DIR_TARGET}${includedir}"
export BUILD_CFLAGS = "${BUILD_CPPFLAGS} ${BUILD_OPTIMIZATION}"
BUILDSDK_CFLAGS = "${BUILDSDK_CPPFLAGS} ${BUILD_OPTIMIZATION}"
export CFLAGS = "${TARGET_CFLAGS}"
export TARGET_CFLAGS = "${TARGET_CPPFLAGS} ${SELECTED_OPTIMIZATION}"
export BUILD_CXXFLAGS = "${BUILD_CFLAGS} -fpermissive"
export CXXFLAGS = "${TARGET_CXXFLAGS}"
export TARGET_CXXFLAGS = "${TARGET_CFLAGS} -fpermissive"
export BUILD_LDFLAGS = "-L${STAGING_LIBDIR_NATIVE} \
-Wl,-rpath-link,${STAGING_LIBDIR_NATIVE} \
-Wl,-rpath,${STAGING_LIBDIR_NATIVE} -Wl,-O1"
BUILDSDK_LDFLAGS = "-L${STAGING_LIBDIR} \
-Wl,-rpath-link,${STAGING_LIBDIR} \
-Wl,-rpath,${libdir} -Wl,-O1 \
-L${STAGING_DIR_HOST}${base_libdir} \
-Wl,-rpath-link,${STAGING_DIR_HOST}${base_libdir} \
-Wl,-rpath,${base_libdir} -Wl,-O1"
TARGET_LINK_HASH_STYLE ??= ""
export LDFLAGS = "${TARGET_LDFLAGS}"
export TARGET_LDFLAGS = "-Wl,-O1 ${TARGET_LINK_HASH_STYLE}"
#export TARGET_LDFLAGS = "-L${STAGING_DIR_TARGET}${libdir} \
# -Wl,-rpath-link,${STAGING_DIR_TARGET}${libdir} \
# -Wl,-O1"
# Which flags to leave by strip-flags() in bin/build/oebuild.sh ?
ALLOWED_FLAGS = "-O -mcpu -march -pipe"
# Pass parallel make options to the compile task only
EXTRA_OEMAKE_prepend_task-compile = "${PARALLEL_MAKE} "
##################################################################
# Optimization flags.
##################################################################
FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2 -ggdb -feliminate-unused-debug-types"
DEBUG_OPTIMIZATION = "-O -fno-omit-frame-pointer -g"
SELECTED_OPTIMIZATION = "${@bb.data.getVar(['FULL_OPTIMIZATION', 'DEBUG_OPTIMIZATION'][bb.data.getVar('DEBUG_BUILD', d, 1) == '1'], d, 1)}"
BUILD_OPTIMIZATION = "-O2"
##################################################################
# Bootstrap stuff.
##################################################################
BOOTSTRAP_EXTRA_RDEPENDS = ""
BOOTSTRAP_EXTRA_RRECOMMENDS = ""
##################################################################
# Palmtop stuff.
##################################################################
export QTDIR = "${STAGING_DIR_HOST}/qt2"
export QPEDIR = "${STAGING_DIR_HOST}"
export OPIEDIR = "${STAGING_DIR_HOST}"
export palmtopdir = "${libdir}/opie"
export palmqtdir = "${palmtopdir}"
##################################################################
# Download locations and utilities.
##################################################################
ADOBE_MIRROR = "http://fpdownload.macromedia.com/get/flashplayer/current/"
APACHE_MIRROR = "http://www.apache.org/dist"
DEBIAN_MIRROR = "ftp://ftp.debian.org/debian/pool"
E_CVS = "cvs://anonymous@anoncvs.enlightenment.org/var/cvs/e"
E_URI = "http://enlightenment.freedesktop.org/files"
FREEBSD_MIRROR = "ftp://ftp.freebsd.org/pub/FreeBSD/"
FREEDESKTOP_CVS = "cvs://anoncvs:anoncvs@anoncvs.freedesktop.org/cvs"
FREESMARTPHONE_GIT = "git://git.freesmartphone.org"
GENTOO_MIRROR = "http://distfiles.gentoo.org/distfiles"
GNOME_GIT = "git://git.gnome.org"
GNOME_MIRROR = "http://ftp.gnome.org/pub/GNOME/sources"
GNU_MIRROR = "ftp://ftp.gnu.org/gnu"
GPE_MIRROR = "http://gpe.linuxtogo.org/download/source"
GPE_EXTRA_SVN = "svn://projects.linuxtogo.org/svn/gpe/trunk/extra;module=${PN}"
GPE_SVN = "svn://projects.linuxtogo.org/svn/gpe/trunk/base;module=${PN}"
GPEPHONE_MIRROR = "http://gpephone.linuxtogo.org/download/gpephone"
GPEPHONE_SVN = "svn://projects.linuxtogo.org/svn/gpephone/trunk/source;module=${PN}"
HANDHELDS_CVS = "cvs://anoncvs:anoncvs@anoncvs.handhelds.org/cvs"
KERNELORG_MIRROR = "http://kernel.org"
SOURCEFORGE_MIRROR = "http://downloads.sourceforge.net"
XLIBS_MIRROR = "http://xlibs.freedesktop.org/release"
XORG_MIRROR = "http://xorg.freedesktop.org/releases"
# You can use the mirror of your country to get faster downloads by putting
# export DEBIAN_MIRROR = "ftp://ftp.de.debian.org/debian/pool"
# into your local.conf
FETCHCMD_svn = "/usr/bin/env svn"
FETCHCMD_cvs = "/usr/bin/env cvs"
FETCHCMD_wget = "/usr/bin/env wget -t 5 -q"
FETCHCMD_bzr = "/usr/bin/env bzr"
FETCHCMD_hg = "/usr/bin/env hg"
FETCHCOMMAND = "ERROR, this must be a BitBake bug"
FETCHCOMMAND_wget = "/usr/bin/env wget -t 5 -q --passive-ftp -P ${DL_DIR} '${URI}'"
FETCHCOMMAND_cvs = "/usr/bin/env cvs '-d${CVSROOT}' co ${CVSCOOPTS} ${CVSMODULE}"
FETCHCOMMAND_svn = "/usr/bin/env svn co ${SVNCOOPTS} ${SVNROOT} ${SVNMODULE}"
CHECKCOMMAND_wget = "/usr/bin/env wget --spider -t 5 --passive-ftp -P ${DL_DIR} '${URI}'"
RESUMECOMMAND = "ERROR, this must be a BitBake bug"
RESUMECOMMAND_wget = "/usr/bin/env wget -c -t 5 -q --passive-ftp -P ${DL_DIR} '${URI}'"
UPDATECOMMAND = "ERROR, this must be a BitBake bug"
UPDATECOMMAND_cvs = "/usr/bin/env cvs -d${CVSROOT} update -d -P ${CVSCOOPTS}"
UPDATECOMMAND_svn = "/usr/bin/env svn update ${SVNCOOPTS}"
SRCDATE = "${DATE}"
SRCREV = "INVALID"
AUTOREV = "${@bb.fetch.get_autorev(d)}"
SRCPV = "${@bb.fetch.get_srcrev(d)}"
SRC_URI = "file://${FILE}"
# We can choose which provider of fake root privileges to use
# default is fakeroot but in Poky we use pseudo
PSEUDO_LOCALSTATEDIR ?= "${WORKDIR}/pseudo/"
FAKEROOT = "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} PSEUDO_NOSYMLINKEXP=1 PSEUDO_DISABLED=0 "
FAKEROOTENV = "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} PSEUDO_NOSYMLINKEXP=1 PSEUDO_DISABLED=0"
FAKEROOTDIRS = "${PSEUDO_LOCALSTATEDIR}"
PREFERRED_PROVIDER_virtual/fakeroot-native ?= "pseudo-native"
##################################################################
# UI/Interaction Configuration
##################################################################
export SHELLCMDS = "bash"
# Some common terminal programs to choose from
GNOME_TERMCMD = 'gnome-terminal --disable-factory -t "$TERMWINDOWTITLE"'
GNOME_TERMCMDRUN = '${GNOME_TERMCMD} -x $SHELLCMDS'
SCREEN_TERMCMD = 'screen -D -m -t "$TERMWINDOWTITLE"'
SCREEN_TERMCMDRUN = '${SCREEN_TERMCMD} $SHELLCMDS'
XTERM_TERMCMD = 'xterm -T "$TERMWINDOWTITLE"'
XTERM_TERMCMDRUN = '${XTERM_TERMCMD} -e $SHELLCMDS'
KONSOLE_TERMCMD = 'konsole -T "$TERMWINDOWTITLE"'
KONSOLE_TERMCMDRUN = '${KONSOLE_TERMCMD} -e $SHELLCMDS'
# Set a default
TERMCMD ?= "${GNOME_TERMCMD}"
TERMCMDRUN ?= "${GNOME_TERMCMDRUN}"
##################################################################
# Miscellaneous utilities.
##################################################################
MKTEMPDIRCMD = "mktemp -d -q ${TMPBASE}"
MKTEMPCMD = "mktemp -q ${TMPBASE}"
# GNU patch tries to be intellgent about checking out read-only files from
# a RCS, which freaks out those special folks with active Perforce clients
# the following makes patch ignore RCS:
export PATCH_GET="0"
# Program to be used to build opkg packages
OPKGBUILDCMD = "opkg-build -o 0 -g 0"
##################################################################
# Not sure about the rest of this yet.
##################################################################
# slot - currently unused by OE. portage remnants
SLOT = "0"
# Other
export PKG_CONFIG_DIR = "${STAGING_DIR_HOST}/${libdir}/pkgconfig"
export PKG_CONFIG_PATH = "${PKG_CONFIG_DIR}:${STAGING_DATADIR}/pkgconfig"
export PKG_CONFIG_LIBDIR = "${PKG_CONFIG_DIR}"
export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR_HOST}"
export PKG_CONFIG_DISABLE_UNINSTALLED = "yes"
export QMAKE_MKSPEC_PATH = "${STAGING_DATADIR_NATIVE}/qmake"
export STAGING_SIPDIR = "${STAGING_DATADIR_NATIVE}/sip"
export STAGING_IDLDIR = "${STAGING_DATADIR}/idl"
# library package naming
AUTO_LIBNAME_PKGS = "${PACKAGES}"
###
### Config file processing
###
# Overrides are processed left to right, so the ones that are named later take precedence.
# You generally want them to go from least to most specific.
#
# This means that an envionment variable named '<foo>_arm' overrides an
# environment variable '<foo>' (when ${TARGET_ARCH} is arm).
# An environment variable '<foo>_ramses' overrides '<foo>' but doesn't override
# '<foo>_arm' when ${MACHINE} is 'ramses'.
# If you use combination ie '<foo>_arm_ramses', then '<foo>_arm_ramses' will override
# '<foo>_arm' and then '<foo>' will be overriden with that value from '<foo>_arm'.
# And finally '<foo>_local' overrides any standard variable, but with lowest priority.
#
# This works for functions as well, they are really just environment variables.
# Default OVERRIDES to make compilation fail fast in case of build system misconfiguration.
OVERRIDES = "local:${MACHINE}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}:forcevariable"
CPU_FEATURES ?= ""
CPU_FEATURES_arm ?= "vfp"
##################################################################
# Include the rest of the config files.
##################################################################
include conf/site.conf
include conf/auto.conf
include conf/local.conf
include conf/build/${BUILD_SYS}.conf
include conf/target/${TARGET_SYS}.conf
include conf/machine/${MACHINE}.conf
include conf/machine-sdk/${SDKMACHINE}.conf
include conf/distro/${DISTRO}.conf
include conf/documentation.conf
require conf/sanity.conf
require conf/abi_version.conf
##################################################################
# Weak variables (usually to retain backwards compatibility)
##################################################################
DL_DIR ?= "${TOPDIR}/downloads"
SSTATE_DIR ?= "${TOPDIR}/sstate-cache"
IMAGE_FSTYPES ?= "tar.gz"
PCMCIA_MANAGER ?= "pcmcia-cs"
DEFAULT_TASK_PROVIDER ?= "task-base"
MACHINE_TASK_PROVIDER ?= "${DEFAULT_TASK_PROVIDER}"
IMAGE_ROOTFS_SIZE ?= "65536"
IMAGE_ROOTFS_SIZE_ext2 ?= "65536"
IMAGE_ROOTFS_SIZE_ext2.gz ?= "65536"
IMAGE_ROOTFS_SIZE_ext3 ?= "65536"
IMAGE_ROOTFS_SIZE_ext3.gz ?= "65536"
# Forcefully set CACHE now so future changes to things like
# MACHINE don't change the path to the cache
CACHE := "${CACHE}"
##################################################################
# Magic Cookie for SANITY CHECK
##################################################################
OES_BITBAKE_CONF = "1"
##################################################################
# Machine properties and task-base stuff
##################################################################
MACHINE_FEATURES ?= "kernel26"
DISTRO_FEATURES ?= ""
# This is used to limit what packages goes into images built, so set big by default
ROOT_FLASH_SIZE ?= "256"
MACHINE_GUI_CLASS ?= "smallscreen"
# GUI_MACHINE_CLASS is deprecated, please use MACHINE_GUI_CLASS instead
GUI_MACHINE_CLASS ?= "${MACHINE_GUI_CLASS}"
MACHINE_DISPLAY_WIDTH_PIXELS ?= "240"
MACHINE_DISPLAY_HEIGHT_PIXELS ?= "320"
MACHINE_DISPLAY_ORIENTATION ?= "0"
MACHINE_DISPLAY_BPP ?= "16"
DISTRO_EXTRA_RDEPENDS ?= ""
DISTRO_EXTRA_RRECOMMENDS ?= ""
MACHINE_EXTRA_RDEPENDS ?= ""
MACHINE_EXTRA_RRECOMMENDS ?= ""
MACHINE_ESSENTIAL_EXTRA_RDEPENDS ?= ""
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?= ""
IMAGE_FEATURES += "${EXTRA_IMAGE_FEATURES}"
COMBINED_FEATURES = "\
${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "alsa", d)} \
${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "bluetooth", d)} \
${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "ext2", d)} \
${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "vfat", d)} \
${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "irda", d)} \
${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "pcmcia", d)} \
${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "pci", d)} \
${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "usbgadget", d)} \
${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "usbhost", d)} \
${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "wifi", d)}"
# Make sure MACHINE isn't exported
# (breaks binutils at least)
MACHINE[unexport] = "1"
# Make sure TARGET_ARCH isn't exported
# (breaks Makefiles using implicit rules, e.g. quilt, as GNU make has this
# in them, undocumented)
TARGET_ARCH[unexport] = "1"
# Make sure DISTRO isn't exported
# (breaks sysvinit at least)
DISTRO[unexport] = "1"
# Used by canadian-cross to handle string conversions on TARGET_ARCH where needed
TRANSLATED_TARGET_ARCH ??= ${TARGET_ARCH}
# Setup our default hash policy
BB_SIGNATURE_HANDLER ?= "basic"
BB_HASHTASK_WHITELIST ?= "(.*-cross$|.*-native$|.*-cross-initial$|.*-cross-intermediate$|^virtual:native:.*|^virtual:nativesdk:.*)"
BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM USER FILESPATH USERNAME STAGING_DIR_HOST STAGING_DIR_TARGET"