summaryrefslogtreecommitdiff
path: root/conf/distro/include/angstrom.inc
diff options
context:
space:
mode:
Diffstat (limited to 'conf/distro/include/angstrom.inc')
-rw-r--r--conf/distro/include/angstrom.inc237
1 files changed, 62 insertions, 175 deletions
diff --git a/conf/distro/include/angstrom.inc b/conf/distro/include/angstrom.inc
index 48cbb49d2c..8bbd28ee93 100644
--- a/conf/distro/include/angstrom.inc
+++ b/conf/distro/include/angstrom.inc
@@ -7,24 +7,58 @@ USERDISTRO := "${DISTRO}"
DISTRO = "angstrom"
DISTRO_NAME = "Angstrom"
+BUILDNAME = "Angstrom ${DISTRO_VERSION}"
+
TARGET_VENDOR = "-angstrom"
-# Add FEED_ARCH to overrides
-OVERRIDES .= ":${FEED_ARCH}"
+SOC_FAMILY ?= "Unknown"
+
+# Add FEED_ARCH and SOC_FAMILY to overrides
+OVERRIDES .= ":${FEED_ARCH}:${SOC_FAMILY}"
+# 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"
-ANGSTROM_MODE ?= "glibc"
-PSTAGE_EXTRAPATH = "${ANGSTROM_MODE}"
+ANGSTROMLIBC ?= "glibc"
+LIBC ?= "${ANGSTROMLIBC}"
+PSTAGE_EXTRAPATH = "${LIBC}"
+
+CACHE = "${TMPDIR}/cache/${LIBC}/${MACHINE}"
+DEPLOY_DIR = "${TMPDIR}/deploy/${LIBC}"
+require conf/distro/include/angstrom-${LIBC}.inc
+
+# ARM920T and up can use thumb mode to decrease binary size at the expense of speed
+# (the complete story is a bit more nuanced due to cache starvation)
+# Angstrom turns on thumb for armv4t machine according to this RFC:
+# http://lists.linuxtogo.org/pipermail/angstrom-distro-devel/2008-October/002714.html
+
+# We can't do ARM_INSTRUCTION_SET_armv4t since that will un-overridable in recipes like gcc
+ANGSTROM_ARM_INSTRUCTION_SET ?= "arm"
+
+
+ARM_INSTRUCTION_SET = "${ANGSTROM_ARM_INSTRUCTION_SET}"
+# "arm" "thumb"
+# The instruction set the compiler should use when generating application
+# code. The kernel is always compiled with arm code at present. arm code
+# is the original 32 bit ARM instruction set, thumb code is the 16 bit
+# encoded RISC sub-set. Thumb code is smaller (maybe 70% of the ARM size)
+# but requires more instructions (140% for 70% smaller code) so may be
+# slower.
+
+THUMB_INTERWORK = "yes"
+# "yes" "no"
+# Whether to compile with code to allow interworking between the two
+# instruction sets. This allows thumb code to be executed on a primarily
+# arm system and vice versa. It is strongly recommended that DISTROs not
+# turn this off - the actual cost is very small.
-CACHE = "${TMPDIR}/cache/${ANGSTROM_MODE}/${MACHINE}"
-DEPLOY_DIR = "${TMPDIR}/deploy/${ANGSTROM_MODE}"
-require conf/distro/include/angstrom-${ANGSTROM_MODE}.inc
#Use this variable in feeds and other parts that need a URI
ANGSTROM_URI ?= "http://www.angstrom-distribution.org"
-#Use this variable to select which recipe you want to use to get feed configs (/etc/ipkg/*, /etc/apt/sources.list)
+#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
ANGSTROM_FEED_CONFIGS ?= "angstrom-feed-configs"
@@ -38,6 +72,9 @@ INHERIT += "debian"
#activate config checker
INHERIT += "sanity"
+#activate the blacklister
+INHERIT += "angstrom"
+
#make devshell available as task
INHERIT += "devshell"
@@ -46,8 +83,12 @@ INHERIT += "angstrom-mirrors"
#run QA tests on builds and packages and log them
INHERIT += "insane"
+# INHERIT += "packagehistory"
QA_LOG = "1"
+#run QA tests on recipes
+INHERIT += "recipe_sanity"
+
#save statistical info on images
INHERIT += "testlab"
@@ -58,7 +99,8 @@ require conf/distro/include/angstrom-package-${ANGSTROM_PKG_FORMAT}.inc
# 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_om-gta01 = "1"
+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
@@ -68,9 +110,8 @@ ENABLE_BINARY_LOCALE_GENERATION ?= "1"
# We only want to build UTF8 locales
LOCALE_UTF8_ONLY = "1"
-#qemu doesn't like armv6/eabi/vfp
-ENABLE_BINARY_LOCALE_GENERATION_armv6 = "0"
-ENABLE_BINARY_LOCALE_GENERATION_armv7a = "0"
+#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"
@@ -83,6 +124,7 @@ TARGET_FPU_ixp4xx ?= "soft"
TARGET_FPU_ppc405 ?= "soft"
TARGET_FPU_armv6 ?= "hard"
+TARGET_FPU_armv6-novfp ?= "soft"
TARGET_FPU_armv7a ?= "hard"
TARGET_FPU_ppc603e ?= "hard"
@@ -94,169 +136,13 @@ TARGET_CC_ARCH_pn-cairo_armv5te = "-march=armv4t"
#Set the right arch for the feeds
#Alphabetically sorted
-FEED_ARCH ?= "${TARGET_ARCH}"
+FEED_ARCH ?= "${BASE_PACKAGE_ARCH}"
#blackfin machines
FEED_ARCH_bfin = "blackfin"
-#armv4t machines
-
-FEED_ARCH_acern30 = "armv4t"
-FEED_ARCH_amsdelta = "armv4t"
-FEED_ARCH_ep93xx = "armv4t"
-FEED_ARCH_eteng500 = "armv4t"
-FEED_ARCH_om-gta01 = "armv4t"
-FEED_ARCH_om-gta02 = "armv4t"
-FEED_ARCH_h1940 = "armv4t"
-FEED_ARCH_h6300 = "armv4t"
-FEED_ARCH_kb9202 = "armv4t"
-FEED_ARCH_ks8695 = "armv4t"
-FEED_ARCH_rx1950 = "armv4t"
-FEED_ARCH_rx3000 = "armv4t"
-FEED_ARCH_sarge-at91 = "armv4t"
-FEED_ARCH_smdk2440 = "armv4t"
-FEED_ARCH_smdk2443 = "armv4t"
-
-#armv5t machines
-
-FEED_ARCH_a1200 = "armv5te"
-FEED_ARCH_a780 = "armv5te"
-FEED_ARCH_akita = "armv5te"
-FEED_ARCH_asus620 = "armv5te"
-FEED_ARCH_asus730 = "armv5te"
-FEED_ARCH_at91sam9263ek = "armv5te"
-FEED_ARCH_aximx50 = "armv5te"
-FEED_ARCH_aximx50v = "armv5te"
-FEED_ARCH_c7x0 = "armv5te"
-FEED_ARCH_compulab-pxa270 = "armv5te"
-FEED_ARCH_davinci-dvevm = "armv5te"
-FEED_ARCH_devkitidp-pxa255 = "armv5te"
-FEED_ARCH_e680 = "armv5te"
-FEED_ARCH_er0100 = "armv5te"
-FEED_ARCH_gumstix = "armv5te"
-FEED_ARCH_gumstix-verdex = "armv5te"
-FEED_ARCH_gumstix-connex = "armv5te"
-FEED_ARCH_h1910 = "armv5te"
-FEED_ARCH_h2200 = "armv5te"
-FEED_ARCH_h3900 = "armv5te"
-FEED_ARCH_h4000 = "armv5te"
-FEED_ARCH_h5000 = "armv5te"
-FEED_ARCH_htcalpine = "armv5te"
-FEED_ARCH_htcapache = "armv5te"
-FEED_ARCH_htcblueangel = "armv5te"
-FEED_ARCH_htchimalaya = "armv5te"
-FEED_ARCH_htcsable = "armv5te"
-FEED_ARCH_htctornado = "armv5te"
-FEED_ARCH_htcuniversal = "armv5te"
-FEED_ARCH_hx2000 = "armv5te"
-FEED_ARCH_hx4700 = "armv5te"
-FEED_ARCH_ixp4xxle = "armv5te"
-FEED_ARCH_logicpd-pxa270 = "armv5te"
-FEED_ARCH_looxc550 = "armv5te"
-FEED_ARCH_lsarm = "armv5te"
-FEED_ARCH_magician = "armv5te"
-FEED_ARCH_mainstone = "armv5te"
-FEED_ARCH_mnci = "armv5te"
-FEED_ARCH_mtx-3 = "armv5te"
-FEED_ARCH_mx21ads = "armv5te"
-FEED_ARCH_n2100 = "armv5te"
-FEED_ARCH_navman-icn330 = "armv5te"
-FEED_ARCH_netbook-pro = "armv5te"
-FEED_ARCH_nokia770 = "armv5te"
-FEED_ARCH_rokre2 = "armv5te"
-FEED_ARCH_nslu2le = "armv5te"
-FEED_ARCH_omap1510inn = "armv5te"
-FEED_ARCH_omap1610h2 = "armv5te"
-FEED_ARCH_omap1710h3 = "armv5te"
-FEED_ARCH_omap5912osk = "armv5te"
-FEED_ARCH_palmld = "armv5te"
-FEED_ARCH_palmt650 = "armv5te"
-FEED_ARCH_palmt680 = "armv5te"
-FEED_ARCH_palmtc = "armv5te"
-FEED_ARCH_palmtt = "armv5te"
-FEED_ARCH_palmtt3 = "armv5te"
-FEED_ARCH_palmtt5 = "armv5te"
-FEED_ARCH_palmtx = "armv5te"
-FEED_ARCH_palmz31 = "armv5te"
-FEED_ARCH_palmz71 = "armv5te"
-FEED_ARCH_palmz72 = "armv5te"
-FEED_ARCH_poodle = "armv5te"
-FEED_ARCH_qemuarm = "armv5te"
-FEED_ARCH_spitz = "armv5te"
-FEED_ARCH_tosa = "armv5te"
-FEED_ARCH_triton = "armv5te"
-
-FEED_ARCH_ixp4xxbe = "armv5teb"
-FEED_ARCH_nslu2be = "armv5teb"
-
-# armv6
-
-FEED_ARCH_mx31ads = "armv6"
-FEED_ARCH_mx31moboard = "armv6"
-FEED_ARCH_nokia800 = "armv6"
-FEED_ARCH_omap2420h4 = "armv6"
-FEED_ARCH_omap2430sdp = "armv6"
-
-#i486 machines
-FEED_ARCH_geodegx = "i486"
-FEED_ARCH_geodelx = "i486"
-FEED_ARCH_netvista = "i486"
-FEED_ARCH_wrap = "i486"
-FEED_ARCH_x86 = "i486"
-
-#i586 machines
-FEED_ARCH_epia = "i586"
-FEED_ARCH_i586-generic = "i586"
-FEED_ARCH_qemux86 = "i586"
-
-#i686 machines
-
-FEED_ARCH_alix = "i686"
-FEED_ARCH_colinux = "i686"
-FEED_ARCH_guinness = "i686"
-FEED_ARCH_i686-generic = "i686"
-FEED_ARCH_progear = "i686"
-
-#powerpc machines
-
-FEED_ARCH_dht-walnut = "ppc405"
-FEED_ARCH_magicbox = "ppc405"
-FEED_ARCH_xilinx-ml403 = "ppc405"
-FEED_ARCH_xilinx-ml410 = "ppc405"
-FEED_ARCH_sequoia = "ppc440e"
-FEED_ARCH_efika = "ppc603e"
-FEED_ARCH_lite5200 = "ppc603e"
-FEED_ARCH_lsppchd = "ppc603e"
-FEED_ARCH_lsppchg = "ppc603e"
-FEED_ARCH_storcenter = "ppc603e"
-FEED_ARCH_turbostation = "ppc603e"
-FEED_ARCH_mpc8313e-rdb = "ppce300c3"
-FEED_ARCH_mpc8323e-rdb = "ppce300c2"
-
-
-#strongarm machines, no EABI
-
-FEED_ARCH_collie = "arm-oabi"
-FEED_ARCH_h3600 = "arm-oabi"
-FEED_ARCH_h3800 = "arm-oabi"
-FEED_ARCH_htcwallaby = "arm-oabi"
-FEED_ARCH_jornada56x = "arm-oabi"
-FEED_ARCH_jornada7xx = "arm-oabi"
-FEED_ARCH_shark = "arm-oabi"
-FEED_ARCH_simpad = "arm-oabi"
-
-
-#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}-${ANGSTROM_MODE}-${ANGSTROM_PKG_FORMAT}-${DISTRO_VERSION}-${MACHINE}"
+IMAGE_NAME = "${DISTRO_NAME}-${IMAGE_BASENAME}-${LIBC}-${ANGSTROM_PKG_FORMAT}-${DISTRO_VERSION}-${MACHINE}"
DEPLOY_DIR_IMAGE = "${DEPLOY_DIR}/images/${MACHINE}"
# Angstrom *always* has some form of release config, so error out if someone thinks he knows better
@@ -268,7 +154,7 @@ DISTRO_CHECK := "${@bb.data.getVar("DISTRO_VERSION",d,1) or bb.fatal('Remove thi
# in their local.conf
#Name of the client
-TINDER_MACHINE = "${MACHINE}-${ANGSTROM_MODE}-build-image"
+TINDER_MACHINE = "${MACHINE}-${LIBC}-build-image"
# Which lof file to write to, which tree to report to
TINDER_LOG = "${TMPDIR}/tinder.log"
@@ -307,9 +193,10 @@ SEPPUKU_AUTOBUILD = "1"
SEPPUKU_PRODUCT = "Openembedded"
SEPPUKU_COMPONENT = "org.openembedded.dev"
-OESTATS_SERVER ?= "tinderbox.openembedded.net"
-
-
+OESTATS_SERVER ?= "tinderbox.openembedded.org"
# We want images supporting the following features (for task-base)
-DISTRO_FEATURES = "nfs smbfs wifi ppp alsa bluetooth ext2 vfat irda pcmcia usbgadget usbhost pci"
+DISTRO_FEATURES = "nfs smbfs wifi ppp alsa bluetooth ext2 vfat irda pcmcia usbgadget usbhost pci pam"
+
+# Use-like features
+DISTRO_FEATURES += "tk"