############################################################################# #@TYPE: Distribution #@NAME: Minimal #@DESCRIPTION: Embedded Linux Distribution Configuration # #@COMMENT: This distribution configuration can serve as a starting point for #@COMMENT: the integration of new target platforms, machines, or distributions. ############################################################################# ############################################################################# # NAME and VERSION ############################################################################# DISTRO_NAME ?= "minimal" DISTRO_VERSION = "dev-snapshot-${SRCDATE}" #DISTRO_TYPE = "release" DISTRO_TYPE ?= "debug" # Ensure some form of release config, so error out if someone thinks he knows better DISTRO_CHECK := "${@bb.data.getVar('DISTRO_VERSION',d,1) or bb.fatal('Remove this line or set a dummy DISTRO_VERSION')}" ############################################################################# # FEATURE SELECTION ############################################################################# # Use bluetooth 4.0 DISTRO_BLUETOOTH_MANAGER = "bluez4" # We want images supporting the following features (for task-base) DISTRO_FEATURES = "ipv4 ipv6 nfs smbfs wifi ppp alsa ext2 vfat pcmcia usbgadget usbhost pci" # Following features are for ARM and E500 based machines DISTRO_FEATURES += "eabi" # The following feature enables the MIPS ABI PLT extensions # This feature needs GCC 4.4 binutils 2.19 or glibc/eglibc 2.9 # or higher DISTRO_FEATURES += "mplt" DISTRO_FEATURES += ' ${@["", "thumb-interwork"][bb.data.getVar('THUMB_INTERWORK', d, 1) == "yes"]}' ############################################################################# # LIBRARY NAMES ############################################################################# # libfoo -> libfoo0-2 (etc) INHERIT += "debian" ############################################################################# # STAGING AREA ############################################################################# # Controlled by packaging system INHERIT += "packaged-staging" ############################################################################# # PACKAGING & FEEDS ############################################################################# # Chose the packaging system INHERIT += "package_ipk" IMAGE_FSTYPES ?= "tar.gz jffs2" PREFERRED_PKG_FORMAT ?= "ipk" # Put links to sources in deploy/sources to make it easier for people to be GPL compliant INHERIT += "src_distribute_local" SRC_DIST_LOCAL ?= "symlink" # If we're using an .ipk based rootfs, we want to have opkg installed so postinst script can run IPKG_VARIANT = "opkg" ############################################################################# # IMAGES ############################################################################# # Name the generated images in a sane way IMAGE_NAME = "${DISTRO_NAME}-${IMAGE_BASENAME}-${LIBC}-${PREFERRED_PKG_FORMAT}-${DISTRO_VERSION}-${MACHINE}" CACHE = "${TMPDIR}/cache/${LIBC}/${MACHINE}" DEPLOY_DIR ?= "${TMPDIR}/deploy/${LIBC}" DEPLOY_DIR_IMAGE = "${DEPLOY_DIR}/images/${MACHINE}" SPLASH ?= '${@base_contains("MACHINE_FEATURES", "screen", "psplash", "",d)}' PREFERRED_PROVIDER_virtual/psplash = "psplash" # increase inode/block ratio for ext2 filesystem EXTRA_IMAGECMD_ext2 = "-i 8192" ############################################################################# # KERNEL ############################################################################# KERNEL = "kernel26" MACHINE_KERNEL_VERSION = "2.6" ############################################################################# # OVERWRITES adjusted from bitbake.conf to feature the MACHINE_CLASS ############################################################################# OVERRIDES = "local:${MACHINE}:${MACHINE_CLASS}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}" ############################################################################# # TOOLCHAIN ############################################################################# LIBC ?= "eglibc" require conf/distro/include/sane-toolchain.inc require conf/distro/include/arm-thumb.inc ############################################################################# # PREFERRED VERSIONS ############################################################################# require conf/distro/include/sane-srcdates.inc require conf/distro/include/sane-srcrevs.inc require conf/distro/include/preferred-e-versions.inc require conf/distro/include/preferred-opie-versions-1.2.4.inc require conf/distro/include/preferred-xorg-versions-X11R7.5.inc PREFERRED_PROVIDER_opkg ?= "opkg" PREFERRED_PROVIDER_virtual/update-alternatives ?= "opkg" ############################################################################# # CONTENTS ############################################################################# # Ship extra debug utils in the rootfs when doing a debug build DISTRO_EXTRA_APPS ?= "" DISTRO_EXTRA_APPS += '${@base_conditional("DISTRO_TYPE", "release", "", "task-cli-tools-debug",d)}' # Additional content I (only valid if you include task-base) # distro-feed-configs: configuration files for the online feeds # util-linux-ng-mount util-linux-ng-umount: busybox mount is broken # angstrom-libc-fixup-hack: fixes an obscure bug with libc.so symlink DISTRO_EXTRA_RDEPENDS += "\ distro-feed-configs \ util-linux-ng-mount util-linux-ng-umount \ angstrom-libc-fixup-hack \ ${DISTRO_EXTRA_APPS} \ " # Additional content II (can be masked with BAD_RECOMMENDATIONS) DISTRO_EXTRA_RRECOMMENDS += " \ kernel-module-vfat \ kernel-module-ext2 \ kernel-module-ext3 \ kernel-module-af-packet \ avahi-daemon \ avahi-autoipd \ openssh-sftp-server \ "