From 89a9abb4c66c7a70bdb313008fc2461ac9485cbd Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Wed, 18 Aug 2010 12:05:22 +0200 Subject: angstrom: start with merging in angstrom/angstrom-next branch --- conf/distro/angstrom-2008.1.conf | 11 +- conf/distro/angstrom-2010.x.conf | 197 +++++++++++++++++++++ .../include/angstrom-2010-preferred-versions.inc | 86 +++++++++ conf/distro/include/angstrom-eglibc.inc | 6 +- conf/distro/include/angstrom-uclibc.inc | 4 +- conf/distro/include/angstrom-uclinux-uclibc.inc | 2 - conf/distro/include/angstrom.inc | 2 +- 7 files changed, 290 insertions(+), 18 deletions(-) create mode 100644 conf/distro/angstrom-2010.x.conf create mode 100644 conf/distro/include/angstrom-2010-preferred-versions.inc (limited to 'conf') diff --git a/conf/distro/angstrom-2008.1.conf b/conf/distro/angstrom-2008.1.conf index c62ae625f9..8504574af6 100644 --- a/conf/distro/angstrom-2008.1.conf +++ b/conf/distro/angstrom-2008.1.conf @@ -7,18 +7,11 @@ #@MAINTAINER: Philip 'Crofton' Balister #@-------------------------------------------------------------------- -# This is a aimed to be the next stable angstrom release. -# If you want something stable *right now*, use angstrom-2008.1 -# with the stable/2009 branch -# -# Use this at your own risk, we welcome bugreports sent to +# We welcome bugreports sent to # angstrom-distro-devel@linuxtogo.org # # For more contact info please visit # http://www.angstrom-distribution.org/contact -# -# Again, in doubt, use DISTRO="angstrom-2008.1" with the -# stable/2009 branch #DISTRO_VERSION = "2009.X" DISTRO_VERSION = "2010.7-test-${DATE}" @@ -149,6 +142,8 @@ ANGSTROM_BLACKLIST_pn-fso-apm = "regular apmd is good enough" ANGSTROM_BLACKLIST_pn-ipkg = "ipkg has been superseded by opkg" +ANGSTROMLIBC ?= "glibc" + require conf/distro/include/angstrom.inc # Set DISTRO_FEED_CONFIGS to our config var, assigned in the above .inc diff --git a/conf/distro/angstrom-2010.x.conf b/conf/distro/angstrom-2010.x.conf new file mode 100644 index 0000000000..28c28bd7f3 --- /dev/null +++ b/conf/distro/angstrom-2010.x.conf @@ -0,0 +1,197 @@ +#@-------------------------------------------------------------------- +#@TYPE: Distribution +#@NAME: Angstrom +#@DESCRIPTION: The Linux Distribution for Kernel 2.6 based devices +#@MAINTAINER: Graeme 'XorA' Gregory +#@MAINTAINER: Koen Kooi +#@MAINTAINER: Philip 'Crofton' Balister +#@-------------------------------------------------------------------- + +# This is a aimed to be the next stable angstrom release. +# If you want something stable *right now*, use angstrom-2008.1 +# +# Use this at your own risk, we welcome bugreports sent to +# angstrom-distro-devel@linuxtogo.org +# +# For more contact info please visit +# http://www.angstrom-distribution.org/contact +# +# Again, in doubt, use DISTRO="angstrom-2008.1" + +#DISTRO_VERSION = "2010.X" +DISTRO_VERSION = "next" +DISTRO_REVISION = "4" +DISTRO_PR = ".6" + +OLDEST_KERNEL ?= "2.6.16" + +#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/angstrom-2010-preferred-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)}' + + +# set feed path variables +FEED_BASEPATH = "feeds/next/${ANGSTROM_PKG_FORMAT}/${LIBC}/" + +# Uncomment this to fetch packaged-staging packages from the central angstrom server +#PSTAGE_MIRROR = "${ANGSTROM_URI}/${FEED_BASEPATH}packaged-staging" + +#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" + +#Preferred version for the kernel on various machines +PREFERRED_VERSION_linux-handhelds-2.6 ?= "2.6.21-hh20" + +#This is unrelated to the kernel version, but userspace apps (e.g. HAL) require a recent version to build against +LINUX_LIBC_HEADERS_VERSION ?= "2.6.32" +PREFERRED_VERSION_linux-libc-headers = "${LINUX_LIBC_HEADERS_VERSION}" +PREFERRED_VERSION_linux-libc-headers-native = "${LINUX_LIBC_HEADERS_VERSION}" + +#Prefer glibc 2.6 and uclibc 0.9.30, these have had the most testing. +PREFERRED_VERSION_glibc ?= "2.10.1" +PREFERRED_VERSION_glibc-initial ?= "2.10.1" +PREFERRED_VERSION_uclibc ?= "0.9.30.2" +PREFERRED_VERSION_uclibc-initial ?= "0.9.30.2" +PREFERRED_VERSION_eglibc ?= "2.11" +PREFERRED_VERSION_eglibc-initial ?= "2.11" + +#powerpc needs additional patches to gcc +ANGSTROM_GCC_VERSION_ppc405 ?= "4.1.1" +ANGSTROM_GCC_VERSION_xilinx-ml403 ?= "4.1.1" +ANGSTROM_GCC_VERSION_xilinx-ml403 ?= "4.1.1" + +# Blackfin has its on gcc +ANGSTROM_GCC_VERSION_bfin = "4.1.2" + +# Uncomment this if want need to build an armv7a kernel with CSL toolchain (<2.6.27 don't boot with mainline gcc) +#KERNEL_CCSUFFIX_armv7a = "-4.2.1+csl-arm-2007q3-53" +KERNEL_CCSUFFIX_archos5 = "-4.2.1+csl-arm-2007q3-53" +KERNEL_CCSUFFIX_archos5it = "-4.2.1+csl-arm-2007q3-53" + +#avr32 only has support for gcc 4.2.2 +ANGSTROM_GCC_VERSION_avr32 ?= "4.2.2" + +#Everybody else can just use this: +ANGSTROM_GCC_VERSION ?= "4.5" + +ANGSTROM_BINUTILS_VERSION ?= "2.20.1" + +PREFERRED_VERSION_binutils ?= "${ANGSTROM_BINUTILS_VERSION}" +PREFERRED_VERSION_binutils-cross ?= "${ANGSTROM_BINUTILS_VERSION}" +PREFERRED_VERSION_binutils-cross-sdk ?= "${ANGSTROM_BINUTILS_VERSION}" + +PREFERRED_VERSION_gcc ?= "${ANGSTROM_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross ?= "${ANGSTROM_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross-sdk ?= "${ANGSTROM_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross-initial ?= "${ANGSTROM_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross-intermediate ?= "${ANGSTROM_GCC_VERSION}" + +#avr32 only has patches for binutils 2.17 in OE +PREFERRED_VERSION_binutils_avr32 = "2.17" +PREFERRED_VERSION_binutils-cross_avr32 = "2.17" +PREFERRED_VERSION_binutils-cross-sdk_avr32 = "2.17" + +# Toolchain virtuals: +require conf/distro/include/toolchain-${TOOLCHAIN_TYPE}.inc +require conf/distro/include/arm-thumb.inc + +PREFERRED_PROVIDER_dbus-glib = "dbus-glib" +PREFERRED_PROVIDER_hotplug = "udev" +PREFERRED_PROVIDER_opkg ?= "opkg" + +ANGSTROM_BLACKLIST_pn-bluez-libs = "bluez-libs 3.x has been replaced by bluez4" +ANGSTROM_BLACKLIST_pn-bluez-utils = "bluez-utils 3.x has been replaced by bluez4" + +ANGSTROM_BLACKLIST_pn-fso-apm = "regular apmd is good enough" + +ANGSTROM_BLACKLIST_pn-ipkg = "ipkg has been superseded by opkg" + +require conf/distro/include/angstrom.inc + +# Set DISTRO_FEED_CONFIGS to our config var, assigned in the above .inc +DISTRO_FEED_CONFIGS = "${ANGSTROM_FEED_CONFIGS}" + +# If we're using an .ipk based rootfs, we want to have opkg installed so postinst script can run +# We also take this opportunity to inject angstrom-version and the feed configs into the rootfs +IPKG_VARIANT = "opkg angstrom-version ${ANGSTROM_FEED_CONFIGS}" + +# we need the same provider for opkg and u-a +PREFERRED_PROVIDER_virtual/update-alternatives = "opkg" + +# 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)}' + +# This hooks into task-base, so it won't do anything if your images doesn't include task-base. +# angstrom-version: ship this to have an identifiable rootfs so user can report bugs against a specific version +# ANGSTROM_FEED_CONFIGS: configfiles 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 += "\ + angstrom-version \ + ${ANGSTROM_FEED_CONFIGS} \ + util-linux-ng-mount util-linux-ng-umount \ + angstrom-libc-fixup-hack \ + " + +# 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, not angstrom +# 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 +# psplash-angstrom: angstrom branded psplash, you can add your own psplash-foo to an image, it uses update-alternatives +# 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 ?= ' ${@base_contains("MACHINE_FEATURES", "screen", "psplash-angstrom", "",d)}' +ARM_INSTRUCTION_SET_pn-uclibc = "arm" +ARM_INSTRUCTION_SET_pn-uclibc-initial = "arm" diff --git a/conf/distro/include/angstrom-2010-preferred-versions.inc b/conf/distro/include/angstrom-2010-preferred-versions.inc new file mode 100644 index 0000000000..8212c2f45e --- /dev/null +++ b/conf/distro/include/angstrom-2010-preferred-versions.inc @@ -0,0 +1,86 @@ +ANGSTROM_MESA_VERSION = "7.8.2" +ANGSTROM_QT_VERSION ?= "4.6.3" +CE_VERSION ?= "2.25.01" + +require conf/distro/include/angstrom-codec-engine-${CE_VERSION}-preferred-versions.inc +require conf/distro/include/preferred-xorg-versions-live.inc + +PREFERRED_VERSION_autoconf = "2.65" +PREFERRED_VERSION_autoconf-native = "2.65" +PREFERRED_VERSION_automake = "1.11.1" +PREFERRED_VERSION_automake-native = "1.11.1" +PREFERRED_VERSION_busybox = "1.13.2" +PREFERRED_VERSION_cairo = "1.8.10" +PREFERRED_VERSION_dbus = "1.2.24" +PREFERRED_VERSION_dropbear = "0.51" +PREFERRED_VERSION_fontconfig = "2.8.0" +PREFERRED_VERSION_glib-2.0 = "2.24.1" +PREFERRED_VERSION_glib-2.0-native = "2.24.1" +PREFERRED_VERSION_glibmm = "2.24.0" +PREFERRED_VERSION_gst-pulse = "0.9.7" +PREFERRED_VERSION_gtk+ = "2.20.1" +PREFERRED_VERSION_gtk+-native = "2.20.1" +PREFERRED_VERSION_gtkmm = "2.20.0" +PREFERRED_VERSION_hal = "0.5.14" +PREFERRED_VERSION_libgemwidget = "1.0" +PREFERRED_VERSION_libgpephone = "0.4" +PREFERRED_VERSION_libsdl-x11 = "1.2.14" +PREFERRED_VERSION_libtool = "2.2.6b" +PREFERRED_VERSION_libtool-native = "2.2.6b" +PREFERRED_VERSION_libtool-cross = "2.2.6b" +PREFERRED_VERSION_libtool-sdk = "2.2.6b" +PREFERRED_VERSION_lighttpd = "1.4.26" +PREFERRED_VERSION_mesa = "${ANGSTROM_MESA_VERSION}" +PREFERRED_VERSION_mesa-dri = "${ANGSTROM_MESA_VERSION}" +PREFERRED_VERSION_mesa-xlib = "${ANGSTROM_MESA_VERSION}" +PREFERRED_VERSION_mythplugins = "0.22" +PREFERRED_VERSION_myththemes = "0.22" +PREFERRED_VERSION_mythtv = "0.22" +PREFERRED_VERSION_mplayer = "0.0+1.0rc3+svnr30165" +PREFERRED_VERSION_network-manager-applet = "0.8" +PREFERRED_VERSION_networkmanager = "0.8" +PREFERRED_VERSION_openssl = "1.0.0a" +PREFERRED_VERSION_openssl-native = "1.0.0a" +PREFERRED_VERSION_pango = "1.24.4" +PREFERRED_VERSION_pango-native = "1.24.4" +#PREFERRED_VERSION_pixman = "0.13.2" +PREFERRED_VERSION_pkgconfig = "0.23" +PREFERRED_VERSION_pkgconfig-native = "0.23" +PREFERRED_VERSION_pulseaudio = "0.9.15" +PREFERRED_VERSION_python-pycairo = "1.8.0" +PREFERRED_VERSION_qt4-tools-native = "${ANGSTROM_QT_VERSION}" +PREFERRED_VERSION_qt4-tools-sdk = "${ANGSTROM_QT_VERSION}" +PREFERRED_VERSION_qt4-embedded = "${ANGSTROM_QT_VERSION}" +PREFERRED_VERSION_qt4-embedded-gles = "${ANGSTROM_QT_VERSION}" +PREFERRED_VERSION_qt4-x11-free = "${ANGSTROM_QT_VERSION}" +PREFERRED_VERSION_qt4-x11-free-gles = "${ANGSTROM_QT_VERSION}" + +PREFERRED_VERSION_samba = "3.3.9" +PREFERRED_VERSION_tiff = "3.9.2+4.0.0beta5" + +PREFERRED_VERSION_udev = "151" +PREFERRED_VERSION_udev_libc-uclibc = "141" +UDEV_GE_141 = "1" + +PREFERRED_VERSION_usbutils = "0.86" +PREFERRED_VERSION_wpa-supplicant = "0.6.9" +PREFERRED_VERSION_wget = "1.11.4" +PREFERRED_VERSION_xserver-common = "1.33" +PREFERRED_VERSION_xserver-kdrive = "1.4.0.90" +PREFERRED_VERSION_xserver-xorg = "1.8.1" + +# +# meta-moblin package SRCREVs +# +SRCREV_pn-bickley ?= "de9431b7c6040bc3731157c05947159ad2c7a0a9" +SRCREV_pn-json-glib ?= "930fdf4c4dff1f5310a946c2a9f5b6860f7c8ba8" +SRCREV_pn-libccss ?= "92bc59e1d39302c8be500d53cb5dd8b05c2e4a15" +SRCREV_pn-libgdbus ?= "aeab6e3c0185b271ca343b439470491b99cc587f" +SRCREV_pn-librest ?= "14d35103d9649dc1e10c3e9ac2c690b3165c8184" +SRCREV_pn-moblin-menus ?= "e1d63681739dd16195d005b3cf15752df294bd3c" +SRCREV_pn-mojito ?= "0542c4b0e26c0e3b69c5ad1fa1898dc276fb9f48" +SRCREV_pn-mozilla-headless-services ?= "c7873654894af6c7c6c01194d6185db46667b81f" +SRCREV_pn-mutter ?= "aff4cf110307e149d3497d20543cde27b9699758" +SRCREV_pn-twitter-glib ?= "849bec29292df88590e0b2898b50b9b8d766817e" +SRCREV_pn-xf86-video-psb ?= "b6b3bba06fe5a3fe0b1bd6e31a7369dd83812bab" + diff --git a/conf/distro/include/angstrom-eglibc.inc b/conf/distro/include/angstrom-eglibc.inc index 26b858802d..6c504b4c82 100644 --- a/conf/distro/include/angstrom-eglibc.inc +++ b/conf/distro/include/angstrom-eglibc.inc @@ -10,16 +10,14 @@ TARGET_OS .= "${@['','-gnuspe'][bb.data.getVar('TARGET_ARCH',d,1) in ['ppc', 'po #TARGET_OS = "linux-gnuspe" -#mess with compiler flags to use -Os instead of -O2 -#Please see http://free-electrons.com/doc/embedded_linux_optimizations/img47.html for some more info # perl has some problems, see http://bugs.openembedded.net/show_bug.cgi?id=1616 # [23:00] oxo: glibc (any version) on sparc does not like (repeat me) "-Os" -FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -Os -ggdb3" +FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2 -ggdb3" FULL_OPTIMIZATION_pn-perl = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O1" FULL_OPTIMIZATION_sparc = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2" -BUILD_OPTIMIZATION = "-O2" +BUILD_OPTIMIZATION = "-O2 -g" BUILD_OPTIMIZATION_pn-perl = "-O1" BUILD_OPTIMIZATION_sparc = "-O2" diff --git a/conf/distro/include/angstrom-uclibc.inc b/conf/distro/include/angstrom-uclibc.inc index 1c7f7f5394..77e7fd56f8 100644 --- a/conf/distro/include/angstrom-uclibc.inc +++ b/conf/distro/include/angstrom-uclibc.inc @@ -12,10 +12,8 @@ USE_NLS_gcc-cross = "no" TARGET_OS_UC = "linux${@['-uclibc','-uclibceabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb']]}" TARGET_OS = "${@['${TARGET_OS_UC}', 'uclinux-uclibc'][bb.data.getVar('TARGET_ARCH',d) in ['bfin']]}" -#mess with compiler flags to use -Os instead of -O2 -#Please see http://free-electrons.com/doc/embedded_linux_optimizations/img47.html for some more info FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2 -ggdb3" -BUILD_OPTIMIZATION = "-O2" +BUILD_OPTIMIZATION = "-O2 -g" #Gcc will die with 'internal consistency error when using the above optimizations #with gcc-4.2.1-atmel.1.0.3 (and probably most other avr32 gcc ports). diff --git a/conf/distro/include/angstrom-uclinux-uclibc.inc b/conf/distro/include/angstrom-uclinux-uclibc.inc index e591ee2fd5..47b6d5cc6e 100644 --- a/conf/distro/include/angstrom-uclinux-uclibc.inc +++ b/conf/distro/include/angstrom-uclinux-uclibc.inc @@ -8,8 +8,6 @@ USE_NLS_gcc-cross = "no" TARGET_OS_UC = "uclinux${@['-uclibc','-uclibceabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb']]}" -#mess with compiler flags to use -Os instead of -O2 -#Please see http://free-electrons.com/doc/embedded_linux_optimizations/img47.html for some more info FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2 -ggdb3" BUILD_OPTIMIZATION = "-O2" diff --git a/conf/distro/include/angstrom.inc b/conf/distro/include/angstrom.inc index 3ba94fa02a..8983c86cb4 100644 --- a/conf/distro/include/angstrom.inc +++ b/conf/distro/include/angstrom.inc @@ -21,7 +21,7 @@ INHERIT += "src_distribute_local" SRC_DIST_LOCAL ?= "symlink" # Can be "glibc", "eglibc" or "uclibc" -ANGSTROMLIBC ?= "glibc" +ANGSTROMLIBC ?= "eglibc" LIBC ?= "${ANGSTROMLIBC}" PSTAGE_EXTRAPATH = "${LIBC}" -- cgit 1.2.3-korg