angstrom: introduce ANGSTROM_MODE to select between 'glibc' and 'uclibc', inspired...
authorKoen Kooi <koen@openembedded.org>
Wed, 13 Sep 2006 13:56:08 +0000 (13:56 +0000)
committerKoen Kooi <koen@openembedded.org>
Wed, 13 Sep 2006 13:56:08 +0000 (13:56 +0000)
* uclibc .28 lacks EABI support and svn trunk is b0rked

conf/distro/angstrom-2007.1.conf
conf/distro/include/angstrom-glibc.inc [new file with mode: 0644]
conf/distro/include/angstrom-uclibc.inc [new file with mode: 0644]
conf/distro/include/angstrom.inc

index 876975b..8b34c89 100644 (file)
@@ -81,11 +81,6 @@ PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
 PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}gcc:gcc-cross"
 PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}g++:gcc-cross"
 
-# Libc/uclibc:
-#fix some iconv issues, needs to be adjusted when doing uclibc builds
-PREFERRED_PROVIDER_virtual/libiconv ?= glibc
-PREFERRED_PROVIDER_virtual/libintl ?= glibc
-
 # Virtuals:
 PREFERRED_PROVIDER_virtual/db ?= "db"
 PREFERRED_PROVIDER_virtual/db-native ?= "db-native"
diff --git a/conf/distro/include/angstrom-glibc.inc b/conf/distro/include/angstrom-glibc.inc
new file mode 100644 (file)
index 0000000..61d1440
--- /dev/null
@@ -0,0 +1,13 @@
+# glibc:
+#fix some iconv issues, needs to be adjusted when doing uclibc builds
+PREFERRED_PROVIDER_virtual/libiconv ?= "glibc"
+PREFERRED_PROVIDER_virtual/libintl ?= "glibc"
+
+TARGET_OS = "linux${@['','-gnueabi'][bb.data.getVar('TARGET_ARCH',d,1)=='arm']}"
+
+#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 -Os"
+BUILD_OPTIMIZATION = "-Os"
+CXXFLAGS += "-fvisibility-inlines-hidden"
+
diff --git a/conf/distro/include/angstrom-uclibc.inc b/conf/distro/include/angstrom-uclibc.inc
new file mode 100644 (file)
index 0000000..ee37921
--- /dev/null
@@ -0,0 +1,13 @@
+# uclibc:
+#fix some iconv issues, needs to be adjusted when doing uclibc builds
+PREFERRED_PROVIDER_virtual/libiconv ?= "libiconv"
+PREFERRED_PROVIDER_virtual/libintl ?= "libintl"
+
+TARGET_OS = "linux${@['-uclibc','-uclibcgnueabi'][bb.data.getVar('TARGET_ARCH',d,1)=='arm']}"
+
+#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 -Os"
+BUILD_OPTIMIZATION = "-Os"
+CXXFLAGS += "-fvisibility-inlines-hidden"
+
index 7d125ae..777ed74 100644 (file)
@@ -5,6 +5,11 @@
 DISTRO = "angstrom"
 DISTRO_NAME = "Angstrom"
 
+# Can be "glibc" and "uclibc"
+ANGSTROM_MODE ?= "glibc"
+
+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"
 
@@ -19,21 +24,6 @@ INHERIT += "package_ipk debian multimachine"
 PREFERRED_PROVIDER_qemu-native = "qemu-native"
 ENABLE_BINARY_LOCALE_GENERATION ?= "1"
 
-
-#Use the ARM EABI when building for an ARM cpu. We can't use overrides
-#here because this breaks all places where ":=" is used.
-#if you want to build using uclibc, specify "-uclibcgnueabi"
-TARGET_VENDOR = "-angstrom"
-TARGET_OS = "linux${@['','-gnueabi'][bb.data.getVar('TARGET_ARCH',d,1)=='arm']}"
-#uclibc (needs gcc 4.1.1 or newer)
-#TARGET_OS = "linux${@['','-uclibcgnueabi'][bb.data.getVar('TARGET_ARCH',d,1)=='arm']}"
-
-#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 -Os"
-BUILD_OPTIMIZATION = "-Os"
-CXXFLAGS += "-fvisibility-inlines-hidden"
-
 #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"