diff options
author | Graeme Gregory <dp@xora.org.uk> | 2010-04-21 11:38:52 +0100 |
---|---|---|
committer | Graeme Gregory <dp@xora.org.uk> | 2010-04-21 11:38:52 +0100 |
commit | d0464c2574021f2276ff4ca1d499a7b907f50932 (patch) | |
tree | 9a9a1aadbd37222fa6844aadba1c80a22ad10fc2 | |
parent | cb025b960eb52ad834b3df588d8352d071b863b6 (diff) | |
parent | 315b6341f641b15a8006fdd04973cce3a76f0e5d (diff) |
Merge branch 'org.openembedded.dev' of git+ssh://git.openembedded.org/openembedded into org.openembedded.dev
-rw-r--r-- | conf/distro/include/kaeilos-2010.inc | 155 | ||||
-rw-r--r-- | conf/distro/kaeilos-2010.conf | 159 |
2 files changed, 314 insertions, 0 deletions
diff --git a/conf/distro/include/kaeilos-2010.inc b/conf/distro/include/kaeilos-2010.inc new file mode 100644 index 0000000000..2fb30ce0f6 --- /dev/null +++ b/conf/distro/include/kaeilos-2010.inc @@ -0,0 +1,155 @@ +#@TYPE: Distribution +#@NAME: kaeilos-2010 +#@DESCRIPTION: Release independent distribution configuration for KaeilOS +#@MAINTAINER: Marco Cavallini <m.cavallini@koansoftware.com> +#@VERSION: 21-04-2010 +# +# KaeilOS is a registered trade mark of KOAN - Bergamo - Italia +# Product website : http://www.KaeilOS.com + +# Preserve original DISTRO value +USERDISTRO := "${DISTRO}" +DISTRO = "kaeilos" +DISTRO_NAME = "KaeilOS" +BUILDNAME = "KaeilOS ${DISTRO_VERSION}" +TARGET_VENDOR = "-kaeilos" + +# Add FEED_ARCH to overrides +OVERRIDES .= ":${FEED_ARCH}" + +# 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" + +# Can be "glibc", "eglibc" or "uclibc" +KAEILOSLIBC ?= "eglibc" +LIBC ?= "${KAEILOSLIBC}" +PSTAGE_EXTRAPATH = "${LIBC}" + +CACHE = "${TMPDIR}/cache/${LIBC}/${MACHINE}" +DEPLOY_DIR = "${TMPDIR}/deploy/${LIBC}" +require conf/distro/include/angstrom-${LIBC}.inc + +ARM_INSTRUCTION_SET = "arm" +THUMB_INTERWORK = "yes" + +#Use this variable in feeds and other parts that need a URI +KAEILOS_URI ?= "http://www.kaeilos.com" + +#Use this variable to select which recipe you want to use to get feed configs (/etc/ipkg/, /etc/apt/sources.list) +# usefull for derivative distros and local testing +# As this is runtime we can't and won't use virtual/feed-configs +DISTRO_FEED_CONFIGS = "kaeilos-feed-configs" + +#Set the default maintainer of kaeilos +MAINTAINER = "KaeilOS Mantainer <m.cavallini@koansoftware.com>" + +#use debian style naming +INHERIT += "debian" + +#activate config checker +INHERIT += "sanity" + +#make devshell available as task +INHERIT += "devshell" + +#run QA tests on builds and packages and log them +INHERIT += "insane" +QA_LOG = "1" + +#run QA tests on recipes +INHERIT += "recipe_sanity" + +#save statistical info on images +INHERIT += "testlab" + +INHERIT += "package_ipk" +PREFERRED_PROVIDER_virtual/update-alternatives-native ?= "opkg-native" +PREFERRED_PROVIDER_virtual/update-alternatives ?= ${PREFERRED_PROVIDER_opkg} + +# We don't want to keep OABI compat +ARM_KEEP_OABI = "0" +# Do keep OABI compat for om-gta01 to keep the gllin binary working +ARM_KEEP_OABI_pn-linux-openmoko-2.6.24_om-gta01 = "1" +ARM_KEEP_OABI_pn-linux-openmoko-2.6.28_om-gta01 = "1" + + +#Generate locales on the buildsystem instead of on the target. Speeds up first boot, set to "1" to enable +PREFERRED_PROVIDER_qemu-native = "qemu-native" +ENABLE_BINARY_LOCALE_GENERATION ?= "1" + +# We only want to build UTF8 locales +LOCALE_UTF8_ONLY = "1" + +#qemu doesn't like this fp +ENABLE_BINARY_LOCALE_GENERATION_ep9312 = "0" + +#qemu has taken a dislike to armeb as well +ENABLE_BINARY_LOCALE_GENERATION_armeb = "0" + +#ARM EABI is softfloat by default, but let's make sure :) +#make it overridable for platforms with FPU, like ep93xx or i.mx31 +TARGET_FPU_arm ?= "soft" +TARGET_FPU_armeb ?= "soft" +TARGET_FPU_ixp4xx ?= "soft" + +TARGET_FPU_armv6 ?= "hard" +TARGET_FPU_armv6-novfp ?= "soft" +TARGET_FPU_armv7a ?= "hard" + +# webkit-gtk and cairo have alignment issues with double instructions on armv5 so +# disable them here +TARGET_CC_ARCH_pn-webkit-gtk_armv5te = "-march=armv4t" +TARGET_CC_ARCH_pn-cairo_armv5te = "-march=armv4t" + +#Set the right arch for the feeds +#Alphabetically sorted +FEED_ARCH ?= "${BASE_PACKAGE_ARCH}" + +#Tweak packaging for strongarm machines since they can't use EABI +PACKAGE_EXTRA_ARCHS_collie = "arm-oabi" +PACKAGE_EXTRA_ARCHS_h3600 = "arm-oabi" +PACKAGE_EXTRA_ARCHS_h3800 = "arm-oabi" +PACKAGE_EXTRA_ARCHS_simpad = "arm-oabi" +PACKAGE_EXTRA_ARCHS_htcwallaby = "arm-oabi" + +#Name the generated images in a sane way +IMAGE_NAME = "${DISTRO_NAME}-${IMAGE_BASENAME}-${LIBC}-${PREFERRED_PKG_FORMAT}-${DISTRO_VERSION}-${MACHINE}" +DEPLOY_DIR_IMAGE = "${DEPLOY_DIR}/images/${MACHINE}" + +# KaeilOS *always* has 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 if you really want to build an unversioned distro')}" + +# Configuration for tinderbox, so people only need: +# INHERIT += "tinderclient" +# in their local.conf + +#Name of the client +TINDER_MACHINE = "${MACHINE}-${LIBC}-build-image" + +# Which lof file to write to, which tree to report to +TINDER_LOG = "${TMPDIR}/tinder.log" +TINDER_TREE = "KaeilOS" + +# Which branch do we build +TINDER_BRANCH = "org.openembedded.dev" + +## Clobbing +## 0 for rebuilding everything from scratch +## 1 for incremental builds +TINDER_CLOBBER = "1" + +## Do a report at all +TINDER_REPORT = "1" + +OESTATS_SERVER ?= "tinderbox.openembedded.org" + +# We want images supporting the following features (for task-base) +DISTRO_FEATURES = "nfs wifi alsa bluetooth ext2 vfat pcmcia usbgadget usbhost pci pam" + +# Following features are for ARM and E500 based machines +DISTRO_FEATURES += "eabi" + +# Use-like features +DISTRO_FEATURES += "tk" + diff --git a/conf/distro/kaeilos-2010.conf b/conf/distro/kaeilos-2010.conf new file mode 100644 index 0000000000..4bb637cfa6 --- /dev/null +++ b/conf/distro/kaeilos-2010.conf @@ -0,0 +1,159 @@ +#@-------------------------------------------------------------------- +#@TYPE: Distribution +#@NAME: KaeilOS(R) - http://www.kaeilos.com +#@DESCRIPTION: KaeilOS Linux Distribution ver.2010 +#@MAINTAINER: Marco Cavallini <m.cavallini@koansoftware.com> +#@VERSION: 21-04-2010 +# +# KaeilOS is a registered trade mark of KOAN - Bergamo - Italia +# Product website : http://www.KaeilOS.com +# +# Use this at your own risk, we welcome bugreports filed at +# http://bugs.openembedded.net +#@-------------------------------------------------------------------- + +DISTRO_VERSION = "2010.1-${DATE}" +DISTRO_REVISION = "1" +DISTRO_PR = ".1" + +OLDEST_KERNEL ?= "2.6.28" + +#build staging from packages +INHERIT += "packaged-staging" + +require conf/distro/include/sane-srcdates.inc +require conf/distro/include/sane-srcrevs.inc +require conf/distro/include/kaeilos-2009-preferred-versions.inc +require conf/distro/include/preferred-e-versions.inc +require conf/distro/include/preferred-opie-versions-1.2.4.inc + +#Images built can have to modes: +# 'debug': empty rootpassword, strace included +# 'release' no root password, no strace and gdb by default +DISTRO_TYPE ?= "debug" +#DISTRO_TYPE = "release" + +# Set the toolchain type (internal, external) and brand (generic, csl etc.) +TOOLCHAIN_TYPE ?= "internal" +TOOLCHAIN_BRAND ?= "" + +# Ship just basic locale by default. Locales are big (~1Mb uncompr.), so +# shipping some adhoc subset will be still useless and size burden for +# users of all other languages/countries. Instead, worth to make it easy +# to install additional languages: installer/wizard + metapackages which +# will RRECOMMEND as much as possible content for a given language +# (locales, UI transalations, help, etc. - useless for pros, but really +# helpful for common users). +# Also, it appears that no locales fit in 16Mb for now. "C" locale rules! +IMAGE_LINGUAS = '${@base_less_or_equal("ROOT_FLASH_SIZE", "16", "", "en-us", d)}' + +# increase inode/block ratio for ext2 filesystem +EXTRA_IMAGECMD_ext2 = "-i 4096" + +# set feed path variables +FEED_BASEPATH = "feeds/unstable/ipk/${LIBC}/" + +#Make sure we use 2.6 on machines with a 2.4/2.6 selector +KERNEL = "kernel26" +MACHINE_KERNEL_VERSION = "2.6" +PCMCIA_MANAGER = "pcmciautils" + + +require conf/distro/include/kaeilos-2010.inc + +# Select packaging system +IMAGE_FSTYPES ?= "tar.gz jffs2" +PREFERRED_PKG_FORMAT = "ipk" +IPKG_VARIANT = "opkg-nogpg" + + + +#This is unrelated to the kernel version, but userspace apps (e.g. HAL) require a recent version to build against +PREFERRED_VERSION_linux-libc-headers = "2.6.31" + +# see into glibc-package.bbclass : added KaeilOS hack supporting glibc 2.9 +LIBC ?= "eglibc" +PREFERRED_VERSION_glibc ?= "2.10.1" +PREFERRED_VERSION_glibc-initial ?= "2.10.1" +PREFERRED_VERSION_uclibc ?= "0.9.30.1" +PREFERRED_VERSION_uclibc-initial ?= "0.9.30.1" + +#armv4 needs at least gcc 4.4.2 for eabi +KAEILOS_GCC_VERSION_armv4 ?= "4.4.2" + +#Everybody else can just use this: +KAEILOS_BINUTILS_VERSION ?= "2.19.51" +PREFERRED_VERSION_binutils ?= "${KAEILOS_BINUTILS_VERSION}" +PREFERRED_VERSION_binutils-cross ?= "${KAEILOS_BINUTILS_VERSION}" +PREFERRED_VERSION_binutils-cross-sdk ?= "${KAEILOS_BINUTILS_VERSION}" + +KAEILOS_GCC_VERSION ?= "4.3.3" +PREFERRED_VERSION_gcc ?= "${KAEILOS_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross ?= "${KAEILOS_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross-sdk ?= "${KAEILOS_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross-initial ?= "${KAEILOS_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross-intermediate ?= "${KAEILOS_GCC_VERSION}" + +PREFERRED_ARM_INSTRUCTION_SET ?= "thumb" +require conf/distro/include/sane-toolchain.inc + +PREFERRED_PROVIDER_dbus-glib = "dbus-glib" +PREFERRED_PROVIDER_hotplug = "udev" +PREFERRED_PROVIDER_opkg ?= "opkg-nogpg-nocurl" + +# PREFERRED VERSIONS +PREFERRED_PROVIDER_opkg ?= "opkg-nogpg" +PREFERRED_PROVIDER_virtual/update-alternatives ?= "opkg-nogpg" + + +# Select xserver-xorg as default, since kdrive has been EOL'ed +XSERVER ?= "xserver-xorg xf86-input-evdev xf86-input-keyboard xf86-input-mouse xf86-video-fbdev" + + +# do some task-base stuff here + +# Prefer bluez4, it's needed for things like connman. Bluez4 is also largely backward compatible with +# bluez 3.x +DISTRO_BLUETOOTH_MANAGER = "\ + blueprobe \ + bluez4 \ + " + +# We want to ship extra debug utils in the rootfs when doing a debug build +DEBUG_APPS ?= "" +DEBUG_APPS += '${@base_conditional("DISTRO_TYPE", "release", "", "strace procps",d)}' + +# KaeilOS want to ship some extra stuff. This should be moved into task-base eventually +# contains ipkg specific stuff as well :( +DISTRO_EXTRA_RDEPENDS += "\ + update-modules \ + kaeilos-version \ + opkg-nogpg opkg-collateral \ + util-linux-ng-mount util-linux-ng-umount \ + ${DEBUG_APPS} \ + " + +# This also hooks into task-base, but isn't mandatory. +# If you don't want parts of this in your task-base using images you can put this in the image recipe: +# BAD_RECOMMENDATIONS = "avahi-daemon avahi-autoipd" +# Note that BAD_RECOMMENDATIONS is a feature of rootfs_ipk.bbclass +# kernel modules: ship fs modules so you can mount stuff and af-packet so networking works +# avahi: makes finding your device on the network a lot easier +# openssh-sftp-server: provides sftp which combined with avahi makes it real easy to use things like sshfs +# DEBUG_APPS: ship strace and procpc to make simple debugging a lot easier +DISTRO_EXTRA_RRECOMMENDS += " \ + kernel-module-vfat \ + kernel-module-ext2 \ + kernel-module-ext3 \ + kernel-module-af-packet \ + avahi-daemon \ + avahi-autoipd \ + openssh-sftp-server \ + ${DEBUG_APPS} \ + " + +SPLASH ?= "psplash" + +ARM_INSTRUCTION_SET_pn-uclibc = "arm" +ARM_INSTRUCTION_SET_pn-uclibc-initial = "arm" + |