summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Lauer <mickey@vanille-media.de>2008-04-13 12:06:08 +0000
committerMichael Lauer <mickey@vanille-media.de>2008-04-13 12:06:08 +0000
commitb4804b9510c47cac341a3577efe297db3dc65df6 (patch)
treebed0cf24af87155a51ce401b5a118c0d4da892c1
parentcf0d990594e373ab4629da67001d92cecb3f9eec (diff)
parent5dbf5cafb571280af42d1c0ada7db4b71235b3af (diff)
merge of '027a24a67d7f612e0e7b0f9f748d81e6a8e018ba'
and '2129627862caba2989adc92ac7743bda23d46fe0'
-rw-r--r--conf/distro/angstrom-2008.1.conf18
-rw-r--r--conf/distro/include/angstrom-glibc.inc1
-rw-r--r--conf/distro/include/angstrom.inc11
-rw-r--r--conf/machine/include/tune-arm9tdmi.inc1
-rw-r--r--conf/machine/include/tune-armv7.inc1
-rw-r--r--conf/machine/include/tune-athlonmp.inc2
-rw-r--r--conf/machine/include/tune-c3.inc2
-rw-r--r--conf/machine/include/tune-cortexa8.inc5
-rw-r--r--conf/machine/include/tune-cortexm3.inc2
-rw-r--r--conf/machine/include/tune-cortexr4.inc2
-rw-r--r--conf/machine/include/tune-ep9312.inc1
-rw-r--r--conf/machine/include/tune-geodelx.inc1
-rw-r--r--conf/machine/include/tune-iwmmxt.inc1
-rw-r--r--conf/machine/include/tune-pentium.inc1
-rw-r--r--conf/machine/include/tune-pentiumpro.inc1
-rw-r--r--conf/machine/include/tune-ppc405.inc1
-rw-r--r--conf/machine/include/tune-ppc440.inc1
-rw-r--r--conf/machine/include/tune-ppc440e.inc1
-rw-r--r--conf/machine/include/tune-ppc603e.inc1
-rw-r--r--conf/machine/include/tune-ppce300c2.inc2
-rw-r--r--conf/machine/include/tune-ppce300c3.inc1
-rw-r--r--conf/machine/include/tune-ppce500.inc1
-rw-r--r--conf/machine/include/tune-sh3.inc1
-rw-r--r--conf/machine/include/tune-sh4.inc1
-rw-r--r--conf/machine/include/tune-strongarm.inc1
-rw-r--r--conf/machine/include/tune-supersparc.inc3
-rw-r--r--conf/machine/include/tune-x86.inc2
-rw-r--r--conf/machine/include/tune-xscale.inc2
28 files changed, 46 insertions, 22 deletions
diff --git a/conf/distro/angstrom-2008.1.conf b/conf/distro/angstrom-2008.1.conf
index a78469c3d1..bbfa3a521c 100644
--- a/conf/distro/angstrom-2008.1.conf
+++ b/conf/distro/angstrom-2008.1.conf
@@ -89,10 +89,10 @@ PREFERRED_PROVIDER_virtual/xserver ?= "xserver-kdrive"
PREFERRED_PROVIDER_xserver ?= "xserver-kdrive"
#powerpc needs additional patches to gcc
-PREFERRED_VERSION_gcc_dht-walnut ?= "4.1.1"
-PREFERRED_VERSION_gcc-cross_dht-walnut ?= "4.1.1"
-PREFERRED_VERSION_gcc-cross-sdk_dht-walnut ?= "4.1.1"
-PREFERRED_VERSION_gcc-cross-initial_dht-walnut ?= "4.1.1"
+PREFERRED_VERSION_gcc_ppc405 ?= "4.1.1"
+PREFERRED_VERSION_gcc-cross_ppc405 ?= "4.1.1"
+PREFERRED_VERSION_gcc-cross-sdk_ppc405 ?= "4.1.1"
+PREFERRED_VERSION_gcc-cross-initial_ppc405 ?= "4.1.1"
PREFERRED_VERSION_gcc_xilinx-ml403 ?= "4.1.1"
PREFERRED_VERSION_gcc-cross_xilinx-ml403 ?= "4.1.1"
@@ -104,11 +104,11 @@ PREFERRED_VERSION_gcc-cross_mpc8323e-rdb ?= "4.1.1"
PREFERRED_VERSION_gcc-cross-sdk_mpc8323e-rdb ?= "4.1.1"
PREFERRED_VERSION_gcc-cross-initial_mpc8323e-rdb ?= "4.1.1"
-# GCC 4.3.0 is the first release with armv7 support
-#PREFERRED_VERSION_gcc_beagleboard = "4.3.0"
-#PREFERRED_VERSION_gcc-cross_beagleboard = "4.3.0"
-#PREFERRED_VERSION_gcc-cross-sdk_beagleboard = "4.3.0"
-#PREFERRED_VERSION_gcc-cross-initial_beagleboard = "4.3.0"
+# GCC 4.3.0 is the first release with armv7-* support
+PREFERRED_VERSION_gcc_armv7a = "4.3.0"
+PREFERRED_VERSION_gcc-cross_armv7a = "4.3.0"
+PREFERRED_VERSION_gcc-cross-sdk_armv7a = "4.3.0"
+PREFERRED_VERSION_gcc-cross-initial_armv7a = "4.3.0"
PREFERRED_VERSION_gcc ?= "4.2.2"
PREFERRED_VERSION_gcc-cross ?= "4.2.2"
diff --git a/conf/distro/include/angstrom-glibc.inc b/conf/distro/include/angstrom-glibc.inc
index f02e045dbf..fbc7305ce9 100644
--- a/conf/distro/include/angstrom-glibc.inc
+++ b/conf/distro/include/angstrom-glibc.inc
@@ -18,6 +18,7 @@ FULL_OPTIMIZATION_pn-glibc-intermediate = "-O2"
FULL_OPTIMIZATION_pn-glibc = "-fexpensive-optimizations -fomit-frame-pointer -O2"
FULL_OPTIMIZATION_sparc = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2"
+FULL_OPTIMIZATION_armv7a = "-fexpensive-optimizations -ftree-vectorize -fomit-frame-pointer -O2"
BUILD_OPTIMIZATION = "-Os"
BUILD_OPTIMIZATION_pn-perl = "-O1"
diff --git a/conf/distro/include/angstrom.inc b/conf/distro/include/angstrom.inc
index bb1d65dec3..f53f1fb8bd 100644
--- a/conf/distro/include/angstrom.inc
+++ b/conf/distro/include/angstrom.inc
@@ -9,6 +9,10 @@ DISTRO_NAME = "Angstrom"
TARGET_VENDOR = "-angstrom"
+# Add FEED_ARCH to overrides
+OVERRIDES .= ":${FEED_ARCH}"
+
+
# Can be "glibc", "eglibc" or "uclibc"
ANGSTROM_MODE ?= "glibc"
PSTAGE_EXTRAPATH = "${ANGSTROM_MODE}"
@@ -61,11 +65,8 @@ ENABLE_BINARY_LOCALE_GENERATION ?= "1"
LOCALE_UTF8_ONLY = "1"
#qemu doesn't like armv6/eabi/vfp
-ENABLE_BINARY_LOCALE_GENERATION_mx31ads = "0"
-ENABLE_BINARY_LOCALE_GENERATION_nokia800 = "0"
-ENABLE_BINARY_LOCALE_GENERATION_omap2420h4 = "0"
-ENABLE_BINARY_LOCALE_GENERATION_omap2430sdp = "0"
-ENABLE_BINARY_LOCALE_GENERATION_beagleboard = "0"
+ENABLE_BINARY_LOCALE_GENERATION_armv6 = "0"
+ENABLE_BINARY_LOCALE_GENERATION_armv7a = "0"
#qemu has taken a dislike to armeb as well
ENABLE_BINARY_LOCALE_GENERATION_armeb = "0"
diff --git a/conf/machine/include/tune-arm9tdmi.inc b/conf/machine/include/tune-arm9tdmi.inc
index d097b07739..ded2c1b732 100644
--- a/conf/machine/include/tune-arm9tdmi.inc
+++ b/conf/machine/include/tune-arm9tdmi.inc
@@ -1,2 +1,3 @@
+FEED_ARCH = "armv4t"
PACKAGE_ARCH = "armv4t"
TARGET_CC_ARCH = "-mcpu=arm9tdmi -mtune=arm9tdmi"
diff --git a/conf/machine/include/tune-armv7.inc b/conf/machine/include/tune-armv7.inc
index 61b4685f10..6276fe6798 100644
--- a/conf/machine/include/tune-armv7.inc
+++ b/conf/machine/include/tune-armv7.inc
@@ -1,5 +1,6 @@
# valid options for -march: `armv7', `armv7-a', `armv7-r', `armv7-m'
# valid option for -mtune: `cortex-a8', `cortex-r4', `cortex-m3', `cortex-m1'
+# This will NOT compile programs in 'ARM' mode, which is what you really want
TARGET_CC_ARCH = "-march=armv7 -mfpu=vfp -mfloat-abi=softfp"
FEED_ARCH = "armv7"
PACKAGE_ARCH = "armv7"
diff --git a/conf/machine/include/tune-athlonmp.inc b/conf/machine/include/tune-athlonmp.inc
index b2d0e703db..167559aa85 100644
--- a/conf/machine/include/tune-athlonmp.inc
+++ b/conf/machine/include/tune-athlonmp.inc
@@ -1,3 +1,3 @@
TARGET_CC_ARCH = "-march=i686"
PACKAGE_ARCH = "i686"
-
+FEED_ARCH = "i686"
diff --git a/conf/machine/include/tune-c3.inc b/conf/machine/include/tune-c3.inc
index e6a522af10..00db9d0445 100644
--- a/conf/machine/include/tune-c3.inc
+++ b/conf/machine/include/tune-c3.inc
@@ -1,3 +1,3 @@
TARGET_CC_ARCH = "-march=c3 -mtune=c3"
PACKAGE_ARCH = "i586"
-
+FEED_ARCH = "i586"
diff --git a/conf/machine/include/tune-cortexa8.inc b/conf/machine/include/tune-cortexa8.inc
index 03e2e86a5f..6c3bdb6ee0 100644
--- a/conf/machine/include/tune-cortexa8.inc
+++ b/conf/machine/include/tune-cortexa8.inc
@@ -1,3 +1,8 @@
+# Instead of using -mfpu=vfp[2] we can use -mfpu=neon to make use of gcc intrinsics[1] and vectorize loops with -ftree-vectorize[3]
+# [1] http://gcc.gnu.org/onlinedocs/gcc/ARM-NEON-Intrinsics.html
+# [2] http://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html
+# [3] https://support.codesourcery.com/GNUToolchain/kbentry29
+
TARGET_CC_ARCH = "-march=armv7-a -mtune=cortex-a8 -mfpu=vfp -mfloat-abi=softfp"
FEED_ARCH = "armv7a"
PACKAGE_ARCH = "armv7a"
diff --git a/conf/machine/include/tune-cortexm3.inc b/conf/machine/include/tune-cortexm3.inc
index 72ec53d7c0..3598998a74 100644
--- a/conf/machine/include/tune-cortexm3.inc
+++ b/conf/machine/include/tune-cortexm3.inc
@@ -1,4 +1,4 @@
# valid options for -march: `armv7', `armv7-m'
-TARGET_CC_ARCH = "-march=armv7 -mtune=cortex-m3 -mfpu=vfp -mfloat-abi=softfp"
+TARGET_CC_ARCH = "-march=armv7-m -mtune=cortex-m3 -mfpu=vfp -mfloat-abi=softfp"
FEED_ARCH = "armv7"
PACKAGE_ARCH = "armv7"
diff --git a/conf/machine/include/tune-cortexr4.inc b/conf/machine/include/tune-cortexr4.inc
index 5d9a30f629..93c82e8607 100644
--- a/conf/machine/include/tune-cortexr4.inc
+++ b/conf/machine/include/tune-cortexr4.inc
@@ -1,4 +1,4 @@
# valid options for -march: `armv7', `armv7-r'
-TARGET_CC_ARCH = "-march=armv7 -mtune=cortex-r4 -mfpu=vfp -mfloat-abi=softfp"
+TARGET_CC_ARCH = "-march=armv7-r -mtune=cortex-r4 -mfpu=vfp -mfloat-abi=softfp"
FEED_ARCH = "armv7"
PACKAGE_ARCH = "armv7"
diff --git a/conf/machine/include/tune-ep9312.inc b/conf/machine/include/tune-ep9312.inc
index 0982cf2a13..76ccc1a1e3 100644
--- a/conf/machine/include/tune-ep9312.inc
+++ b/conf/machine/include/tune-ep9312.inc
@@ -3,4 +3,5 @@ TARGET_CC_ARCH = "-march=ep9312 -mtune=ep9312 -mcpu=ep9312"
#set arch to ep9312 for all generated packages
PACKAGE_ARCH = "ep9312"
+FEED_ARCH = "ep9312"
diff --git a/conf/machine/include/tune-geodelx.inc b/conf/machine/include/tune-geodelx.inc
index 335fadec6e..c167515d46 100644
--- a/conf/machine/include/tune-geodelx.inc
+++ b/conf/machine/include/tune-geodelx.inc
@@ -3,4 +3,5 @@
#
TARGET_CC_ARCH = "-march=k6-2"
PACKAGE_ARCH = "geode"
+FEED_ARCH = "geode"
diff --git a/conf/machine/include/tune-iwmmxt.inc b/conf/machine/include/tune-iwmmxt.inc
index 8376faca74..20fe82b584 100644
--- a/conf/machine/include/tune-iwmmxt.inc
+++ b/conf/machine/include/tune-iwmmxt.inc
@@ -3,4 +3,5 @@
TARGET_CC_ARCH = "-march=iwmmxt -mcpu=iwmmxt -mtune=iwmmxt"
PACKAGE_ARCH = "iwmmxt"
PACKAGE_EXTRA_ARCHS += "iwmmxt"
+FEED_ARCH = "iwmmxt"
diff --git a/conf/machine/include/tune-pentium.inc b/conf/machine/include/tune-pentium.inc
index 7b1a517895..fbefe5bd89 100644
--- a/conf/machine/include/tune-pentium.inc
+++ b/conf/machine/include/tune-pentium.inc
@@ -1,3 +1,4 @@
TARGET_CC_ARCH = "-mcpu=pentium"
PACKAGE_ARCH = "i586"
+FEED_ARCH = "i586"
diff --git a/conf/machine/include/tune-pentiumpro.inc b/conf/machine/include/tune-pentiumpro.inc
index aa9a8dfa1d..6b110cc0b6 100644
--- a/conf/machine/include/tune-pentiumpro.inc
+++ b/conf/machine/include/tune-pentiumpro.inc
@@ -1,3 +1,4 @@
TARGET_CC_ARCH = "-mcpu=pentiumpro"
PACKAGE_ARCH = "i686"
+FEED_ARCH = "i686"
diff --git a/conf/machine/include/tune-ppc405.inc b/conf/machine/include/tune-ppc405.inc
index 62118dd3a1..f798df837c 100644
--- a/conf/machine/include/tune-ppc405.inc
+++ b/conf/machine/include/tune-ppc405.inc
@@ -2,3 +2,4 @@
TARGET_FPU ?= "soft"
TARGET_CC_ARCH = "-mcpu=405"
PACKAGE_ARCH = "ppc405"
+FEED_ARCH = "ppc405"
diff --git a/conf/machine/include/tune-ppc440.inc b/conf/machine/include/tune-ppc440.inc
index dff8dce684..d38adac008 100644
--- a/conf/machine/include/tune-ppc440.inc
+++ b/conf/machine/include/tune-ppc440.inc
@@ -1,2 +1,3 @@
TARGET_CC_ARCH = "-mcpu=440"
PACKAGE_ARCH = "ppc440"
+FEED_ARCH = "ppc440"
diff --git a/conf/machine/include/tune-ppc440e.inc b/conf/machine/include/tune-ppc440e.inc
index 5c47482a54..539fa2d065 100644
--- a/conf/machine/include/tune-ppc440e.inc
+++ b/conf/machine/include/tune-ppc440e.inc
@@ -1,2 +1,3 @@
TARGET_CC_ARCH = "-mcpu=440fp -mhard-float"
PACKAGE_ARCH = "ppc440e"
+FEED_ARCH = "ppc440e"
diff --git a/conf/machine/include/tune-ppc603e.inc b/conf/machine/include/tune-ppc603e.inc
index 1a004d30b5..0305a129b9 100644
--- a/conf/machine/include/tune-ppc603e.inc
+++ b/conf/machine/include/tune-ppc603e.inc
@@ -1,2 +1,3 @@
TARGET_CC_ARCH = "-mcpu=603e -mhard-float"
PACKAGE_ARCH = "ppc603e"
+FEED_ARCH = "ppc603e"
diff --git a/conf/machine/include/tune-ppce300c2.inc b/conf/machine/include/tune-ppce300c2.inc
index 4d7ea7ef87..ddf9de00ce 100644
--- a/conf/machine/include/tune-ppce300c2.inc
+++ b/conf/machine/include/tune-ppce300c2.inc
@@ -1,3 +1,3 @@
TARGET_CC_ARCH = "-mcpu=e300c2"
PACKAGE_ARCH = "ppce300c2"
-
+FEED_ARCH = "ppce300c2"
diff --git a/conf/machine/include/tune-ppce300c3.inc b/conf/machine/include/tune-ppce300c3.inc
index 29944eeba4..769c18720d 100644
--- a/conf/machine/include/tune-ppce300c3.inc
+++ b/conf/machine/include/tune-ppce300c3.inc
@@ -1,2 +1,3 @@
TARGET_CC_ARCH = "-mcpu=e300c3"
PACKAGE_ARCH = "ppce300c3"
+FEED_ARCH = "ppce300c3"
diff --git a/conf/machine/include/tune-ppce500.inc b/conf/machine/include/tune-ppce500.inc
index 11717eba70..7a0476e5b7 100644
--- a/conf/machine/include/tune-ppce500.inc
+++ b/conf/machine/include/tune-ppce500.inc
@@ -1,2 +1,3 @@
TARGET_CC_ARCH = "-mcpu=8540"
PACKAGE_ARCH = "ppce500"
+FEED_ARCH = "ppce500"
diff --git a/conf/machine/include/tune-sh3.inc b/conf/machine/include/tune-sh3.inc
index 192dd8fd22..65bfacf174 100644
--- a/conf/machine/include/tune-sh3.inc
+++ b/conf/machine/include/tune-sh3.inc
@@ -1 +1,2 @@
TARGET_CC_ARCH = "-ml -m3"
+FEED_ARCH = "sh3"
diff --git a/conf/machine/include/tune-sh4.inc b/conf/machine/include/tune-sh4.inc
index 866f7f89d5..c20b8cf5a0 100644
--- a/conf/machine/include/tune-sh4.inc
+++ b/conf/machine/include/tune-sh4.inc
@@ -1 +1,2 @@
TARGET_CC_ARCH = "-ml -m4"
+FEED_ARCH = "sh4"
diff --git a/conf/machine/include/tune-strongarm.inc b/conf/machine/include/tune-strongarm.inc
index 0a773149ff..37499a61dc 100644
--- a/conf/machine/include/tune-strongarm.inc
+++ b/conf/machine/include/tune-strongarm.inc
@@ -4,4 +4,5 @@
ARM_ABI = "oabi"
TARGET_CC_ARCH = "-march=armv4 -mtune=strongarm"
+FEED_ARCH = "arm-oabi"
diff --git a/conf/machine/include/tune-supersparc.inc b/conf/machine/include/tune-supersparc.inc
index 1b1ec1207f..5fbfabe8d3 100644
--- a/conf/machine/include/tune-supersparc.inc
+++ b/conf/machine/include/tune-supersparc.inc
@@ -1,2 +1,3 @@
TARGET_CC_ARCH = "-mcpu=supersparc"
-PACKAGE_ARCH = "supersparc"
+PACKAGE_ARCH = "supersparc"
+FEED_ARCH = "supersparc"
diff --git a/conf/machine/include/tune-x86.inc b/conf/machine/include/tune-x86.inc
index a536bbb6e5..b1a0b9eeb8 100644
--- a/conf/machine/include/tune-x86.inc
+++ b/conf/machine/include/tune-x86.inc
@@ -1,3 +1,3 @@
TARGET_CC_ARCH = "-march=i486"
-
+FEED_ARCH = "i486"
diff --git a/conf/machine/include/tune-xscale.inc b/conf/machine/include/tune-xscale.inc
index f14aee9aed..d5ef105e97 100644
--- a/conf/machine/include/tune-xscale.inc
+++ b/conf/machine/include/tune-xscale.inc
@@ -1,4 +1,4 @@
-FEED_ARCH = "armv5te"
+FEED_ARCH = "${@['armv5teb', 'armv5te'][bb.data.getVar('SITEINFO_ENDIANESS', d, 1) == 'le']}"
TARGET_CC_ARCH = "-march=armv5te -mtune=xscale"
TARGET_CC_KERNEL_ARCH = "-march=armv5te -mtune=xscale"