From f71bd48dbf9d3ddddd9035e8ffb68bd771cb2c19 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Wed, 13 Sep 2006 13:56:08 +0000 Subject: angstrom: introduce ANGSTROM_MODE to select between 'glibc' and 'uclibc', inspired by poky * uclibc .28 lacks EABI support and svn trunk is b0rked --- conf/distro/angstrom-2007.1.conf | 5 ----- conf/distro/include/angstrom-glibc.inc | 13 +++++++++++++ conf/distro/include/angstrom-uclibc.inc | 13 +++++++++++++ conf/distro/include/angstrom.inc | 20 +++++--------------- 4 files changed, 31 insertions(+), 20 deletions(-) create mode 100644 conf/distro/include/angstrom-glibc.inc create mode 100644 conf/distro/include/angstrom-uclibc.inc (limited to 'conf') diff --git a/conf/distro/angstrom-2007.1.conf b/conf/distro/angstrom-2007.1.conf index 876975b875..8b34c89d64 100644 --- a/conf/distro/angstrom-2007.1.conf +++ b/conf/distro/angstrom-2007.1.conf @@ -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 index 0000000000..61d14407c8 --- /dev/null +++ b/conf/distro/include/angstrom-glibc.inc @@ -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 index 0000000000..ee37921af5 --- /dev/null +++ b/conf/distro/include/angstrom-uclibc.inc @@ -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" + diff --git a/conf/distro/include/angstrom.inc b/conf/distro/include/angstrom.inc index 7d125ae25b..777ed74306 100644 --- a/conf/distro/include/angstrom.inc +++ b/conf/distro/include/angstrom.inc @@ -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" -- cgit v1.2.3