* Bump the ABI_LAYOUT. Build from scratch will be needed.
* Replace using TARGET_OS from linux->linux-gnu.
* Replace using linux-uclibcgnueabi->linux-uclibceabi.
* Add 'eabi' to DISTRO_FEATURES (only for minimal and micro).
* Use eabi and BASE_PACKAGE_ARCH to compute real TARGET_OS.
* Fix the micro conf to get console image building.
* Fix the linux-uclibcgnueabi overrides in all recipes.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Phill Blundell <pb@reciva.com>
Acked-by: Michael 'Mickey' Lauer <mickey@vanille-media.de>
"arm" : (40, 0, 0, True, True),
"armeb" : (40, 0, 0, False, True),
},
- "linux-uclibcgnueabi" : {
+ "linux-uclibceabi" : {
"arm" : (40, 0, 0, True, True),
"armeb" : (40, 0, 0, False, True),
},
qmake_base_do_configure() {
case ${QMAKESPEC} in
- *linux-oe-g++|*linux-uclibc-oe-g++|*linux-gnueabi-oe-g++|*linux-uclibcgnueabi-oe-g++)
+ *linux-oe-g++|*linux-uclibc-oe-g++|*linux-gnueabi-oe-g++|*linux-uclibceabi-oe-g++)
;;
*-oe-g++)
die Unsupported target ${TARGET_OS} for oe-g++ qmake spec
targetinfo = {\
"armeb-linux": "endian-big bit-32 common-linux common-glibc arm-common",\
+ "armeb-linux-gnu": "endian-big bit-32 common-linux common-glibc arm-common",\
"armeb-linux-gnueabi": "endian-big bit-32 common-linux common-glibc arm-common armeb-linux",\
"armeb-linux-uclibc": "endian-big bit-32 common-linux common-uclibc arm-common",\
- "armeb-linux-uclibcgnueabi": "endian-big bit-32 common-linux common-uclibc arm-common armeb-linux-uclibc",\
+ "armeb-linux-uclibceabi": "endian-big bit-32 common-linux common-uclibc arm-common armeb-linux-uclibc",\
"arm-darwin": "endian-little bit-32 common-darwin",\
"arm-darwin9": "endian-little bit-32 common-darwin",\
"arm-linux": "endian-little bit-32 common-linux common-glibc arm-common",\
+ "arm-linux-gnu": "endian-little bit-32 common-linux common-glibc arm-common",\
"arm-linux-gnueabi": "endian-little bit-32 common-linux common-glibc arm-common arm-linux",\
"arm-linux-uclibc": "endian-little bit-32 common-linux common-uclibc arm-common",\
- "arm-linux-uclibcgnueabi": "endian-little bit-32 common-linux common-uclibc arm-common arm-linux-uclibc",\
+ "arm-linux-uclibceabi": "endian-little bit-32 common-linux common-uclibc arm-common arm-linux-uclibc",\
"avr32-linux-uclibc": "endian-big bit-32 common-linux common-uclibc avr32-common",\
"bfin-uclinux-uclibc": "endian-little bit-32 common-uclibc bfin-common",\
"i386-linux": "endian-little bit-32 common-linux common-glibc ix86-common",\
+ "i386-linux-gnu": "endian-little bit-32 common-linux common-glibc ix86-common",\
"i486-linux": "endian-little bit-32 common-linux common-glibc ix86-common",\
+ "i486-linux-gnu": "endian-little bit-32 common-linux common-glibc ix86-common",\
"i586-linux": "endian-little bit-32 common-linux common-glibc ix86-common",\
+ "i586-linux-gnu": "endian-little bit-32 common-linux common-glibc ix86-common",\
"i686-linux": "endian-little bit-32 common-linux common-glibc ix86-common",\
+ "i686-linux-gnu": "endian-little bit-32 common-linux common-glibc ix86-common",\
"i386-linux-uclibc": "endian-little bit-32 common-linux common-uclibc ix86-common",\
"i486-linux-uclibc": "endian-little bit-32 common-linux common-uclibc ix86-common",\
"i586-linux-uclibc": "endian-little bit-32 common-linux common-uclibc ix86-common",\
"i586-mingw32": "endian-little bit-32 common-mingw ix86-common",\
"i686-mingw32": "endian-little bit-32 common-mingw ix86-common",\
"ia64-linux": "endian-little bit-64 common-linux common-glibc",\
+ "ia64-linux-gnu": "endian-little bit-64 common-linux common-glibc",\
"mipsel-linux": "endian-little bit-32 common-linux common-glibc",\
+ "mipsel-linux-gnu": "endian-little bit-32 common-linux common-glibc",\
"mipsel-linux-uclibc": "endian-little bit-32 common-linux common-uclibc",\
"mips-linux": "endian-big bit-32 common-linux common-glibc",\
+ "mips-linux-gnu": "endian-big bit-32 common-linux common-glibc",\
"mips-linux-uclibc": "endian-big bit-32 common-linux common-uclibc",\
"powerpc-darwin": "endian-big bit-32 common-darwin",\
"ppc-linux": "endian-big bit-32 common-linux common-glibc powerpc-common",\
+ "ppc-linux-gnu": "endian-big bit-32 common-linux common-glibc powerpc-common",\
"ppc64-linux": "endian-big bit-64 common-linux common-glibc powerpc-common",\
+ "ppc64-linux-gnu": "endian-big bit-64 common-linux common-glibc powerpc-common",\
"powerpc-linux": "endian-big bit-32 common-linux common-glibc powerpc-common",\
+ "powerpc-linux-gnu": "endian-big bit-32 common-linux common-glibc powerpc-common",\
"powerpc-linux-gnuspe": "endian-big bit-32 common-linux common-glibc powerpc-common",\
"powerpc-linux-uclibc": "endian-big bit-32 common-linux common-uclibc powerpc-common",\
+ "powerpc-linux-uclibcspe": "endian-big bit-32 common-linux common-uclibc powerpc-common",\
"sh3-linux": "endian-little bit-32 common-linux common-glibc sh-common",\
+ "sh3-linux-gnu": "endian-little bit-32 common-linux common-glibc sh-common",\
"sh4-linux": "endian-little bit-32 common-linux common-glibc sh-common",\
+ "sh4-linux-gnu": "endian-little bit-32 common-linux common-glibc sh-common",\
"sh4-linux-uclibc": "endian-little bit-32 common-linux common-uclibc sh-common",\
"sparc-linux": "endian-big bit-32 common-linux common-glibc",\
+ "sparc-linux-gnu": "endian-big bit-32 common-linux common-glibc",\
"viac3-linux": "endian-little bit-32 common-linux common-glibc ix86-common",\
+ "viac3-linux-gnu": "endian-little bit-32 common-linux common-glibc ix86-common",\
"x86_64-linux": "endian-little bit-64 common-linux common-glibc",\
+ "x86_64-linux-gnu": "endian-little bit-64 common-linux common-glibc",\
"x86_64-linux-uclibc": "endian-little bit-64 common-linux common-uclibc"}
if target in targetinfo:
info = targetinfo[target].split()
# that breaks the format and have been previously discussed on the mailing list
# with general agreement from the core team.
#
-OELAYOUT_ABI = "2"
+OELAYOUT_ABI = "3"
#
# DISTRO_PR allows us to regenerate all packages when a fundamental change is
md5=9e10a77ff225587e59c0a28c66b4faa7
sha256=91a5b69435f10002b222be022c832d9860a93e0bc181e3f94abc150486ab031a
+[http://ftp.gnome.org/pub/GNOME/sources/libIDL/0.8/libIDL-0.8.13.tar.bz2]
+md5=b43b289a859eb38a710f70622c46e571
+sha256=bccc7e10dae979518ff012f8464e47ec4b3558a5456a94c8679653aa0b262b71
+
[ftp://ftp.gnome.org/pub/GNOME/sources/libIDL/0.8/libIDL-0.8.2.tar.bz2]
md5=a75d2dbf3a3c66b567047c94245f8b82
sha256=1c9529f7245778a4f1422d6257d446b7c90a19c3b603b1a25db1669552c464b3
# eglibc:
# [23:00] oxo: glibc (any version) on sparc does not like (repeat me) "-Os"
-TARGET_OS = "linux${@['','-gnueabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb'] and bb.data.getVar('MACHINE',d) not in ['collie','h3600', 'h3800', 'simpad', 'htcwallaby']]}"
-
FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -Os"
FULL_OPTIMIZATION_pn-perl = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O1"
FULL_OPTIMIZATION_sparc = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2"
# glibc:
-TARGET_OS = "linux${@['','-gnueabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb'] and bb.data.getVar('MACHINE',d) not in ['collie','h3600', 'h3800', 'simpad', 'htcwallaby']]}"
-
#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
USE_NLS_glib-2.0-native = "yes"
USE_NLS_gcc-cross = "no"
-TARGET_OS_UC = "linux${@['-uclibc','-uclibcgnueabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb'] and bb.data.getVar('MACHINE',d) not in ['collie','h3600', 'h3800', 'simpad', 'htcwallaby']]}"
-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 -Os"
# Branding
TARGET_VENDOR = "-oe"
+# Add FEED_ARCH to the overrides list so that we can override the
+# ARM_INSTRUCTION_SET like below
+
+OVERRIDES .= ":${FEED_ARCH}"
+
# 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)
# Minimal 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 set ARM_INSTRUCTION_SET_<override> directly since that will un-overridable in recipes like gcc
-PREFERRED_ARM_INSTRUCTION_SET ?= "arm"
PREFERRED_ARM_INSTRUCTION_SET_armv4t = "thumb"
PREFERRED_ARM_INSTRUCTION_SET_armv5te = "thumb"
PREFERRED_ARM_INSTRUCTION_SET_armv5teb = "thumb"
+PREFERRED_ARM_INSTRUCTION_SET ?= "arm"
ARM_INSTRUCTION_SET = "${PREFERRED_ARM_INSTRUCTION_SET}"
# "arm" "thumb"
# The instruction set the compiler should use when generating application
#qemu has taken a dislike to armeb as well
ENABLE_BINARY_LOCALE_GENERATION_armeb = "0"
+def detect_arm_abi (d):
+ import bb
+ if bb.data.getVar('DISTRO_FEATURES',d) is None:
+ if bb.data.getVar('TARGET_ARCH', d, 1) in [ 'arm', 'armeb' ]:
+ return "oabi"
+ else:
+ return ""
+ if bb.data.getVar('TARGET_ARCH', d, 1) in [ 'arm', 'armeb' ]:
+ if 'eabi' in bb.data.getVar('DISTRO_FEATURES',d).split():
+ return "eabi"
+ return "oabi"
+ return ""
+
+def compute_os_portion_of_target_triplet (d):
+ import bb
+ arm_eabi_supporting_arches = "armv6 armv6-novfp \
+ armv5te iwmmxt armv7a armv7 armv6 armv5teb armv5te armv4t"
+ ppc_spe_supporting_arches = "ppce500v2 ppce500"
+
+ if bb.data.getVar("LIBC", d, 1) == "uclibc":
+ libc_suffix = "uclibc"
+ else:
+ libc_suffix = "gnu"
+
+ if bb.data.getVar('TARGET_ARCH',d,1) in ['bfin']:
+ if libc_suffix == "gnu":
+ bb.fatal("bfin is not supported on glibc/eglibc. Please choose uclibc")
+ else:
+ os_suffix = "uclinux"
+ else:
+ os_suffix = "linux"
+ bparch = bb.data.getVar('BASE_PACKAGE_ARCH', d,1)
+
+ if bb.data.getVar('DISTRO_FEATURES',d,1) is not None and \
+ bparch is not None:
+ if 'eabi' in bb.data.getVar('DISTRO_FEATURES',d,1).split() and \
+ bb.data.getVar('TARGET_ARCH', d, 1) in [ 'arm', 'armeb' ]:
+ if bparch not in arm_eabi_supporting_arches.split():
+ bb.fatal("DISTRO requested EABI but selected machine does not support EABI")
+ abi_suffix = ""
+ else:
+ abi_suffix = "eabi"
+ elif bparch in ppc_spe_supporting_arches.split():
+ abi_suffix = "spe"
+ else:
+ abi_suffix = ""
+ else:
+ bb.note("DISTRO_FEATURES is not set abi suffix not set")
+ abi_suffix = ""
+ return os_suffix + "-" + libc_suffix + abi_suffix
# This is needed to get a correct PACKAGE_ARCH for packages that have PACKAGE_ARCH = ${MACHINE_ARCH}
-ARM_ABI ?= "${@['','oabi'][bb.data.getVar('MACHINE',d) in ['collie','h3600', 'h3800', 'simpad', 'htcwallaby']]}"
+ARM_ABI = "${@detect_arm_abi(d)}"
+TARGET_OS = "${@compute_os_portion_of_target_triplet(d)}"
include conf/distro/include/sane-toolchain-${ARM_ABI}.inc
DISTRO_VERSION = "${SRCDATE}"
#############################################################################
-# TARGET OS
-#############################################################################
-# Linux
-TARGET_OS = "linux"
-
-#############################################################################
# DISTRO FEATURE SELECTION
#############################################################################
# No features selected
-DISTRO_FEATURES = ""
+DISTRO_FEATURES = "eabi"
#############################################################################
# LIBRARY NAMES
# PREFERRED PROVIDERS
#############################################################################
PREFERRED_PROVIDER_task-bootstrap = "task-bootstrap"
-
+PREFERRED_PROVIDER_virtual/libx11 = "libx11"
#############################################################################
# PREFERRED VERSIONS
#############################################################################
# Disable online package management
ONLINE_PACKAGE_MANAGEMENT = "none"
+DISTRO_BLUETOOTH_MANAGER = "bluez4"
DISTRO_BLUETOOTH_MANAGER = "bluez4"
# We want images supporting the following features (for task-base)
DISTRO_FEATURES = "nfs smbfs wifi ppp alsa ext2 vfat pcmcia usbgadget usbhost pci"
+# Following features are for ARM and E500 based machines
+DISTRO_FEATURES += "eabi"
#############################################################################
# LIBRARY NAMES
MACHINE_KERNEL_VERSION = "2.6"
#############################################################################
-# TOOLCHAIN
+# OVERWRITES adjusted from bitbake.conf to feature the MACHINE_CLASS
#############################################################################
-LIBC ?= "eglibc"
-require conf/distro/include/sane-toolchain.inc
+OVERRIDES = "local:${MACHINE}:${MACHINE_CLASS}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}"
#############################################################################
-# OVERWRITES adjusted from bitbake.conf to feature the MACHINE_CLASS
+# TOOLCHAIN
#############################################################################
-OVERRIDES = "local:${MACHINE}:${MACHINE_CLASS}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}"
+LIBC ?= "eglibc"
+require conf/distro/include/sane-toolchain.inc
#############################################################################
# PREFERRED PROVIDERS
ARM_ABI = "oabi"
TARGET_CC_ARCH = "-march=armv4 -mtune=strongarm"
FEED_ARCH = "arm-oabi"
-
+PACKAGE_BASE_ARCH = "armv4"
PACKAGE_EXTRA_ARCHS += "armv4 "
TARGET_CC_ARCH = "-march=armv5te -mtune=xscale"
TARGET_CC_KERNEL_ARCH = "-march=armv5te -mtune=xscale"
PACKAGE_EXTRA_ARCHS += "${@['armv4b armv4tb armv5teb', 'armv4 armv4t armv5te'][bb.data.getVar('SITEINFO_ENDIANESS', d, 1) == 'le']}"
-BASE_PACKAGE_ARCH = "${@['armv5teb', 'armv5te'][bb.data.getVar('SITEINFO_ENDIANESS', d, 1) == 'le']}"
+BASE_PACKAGE_ARCH := "${@['armv5teb', 'armv5te'][bb.data.getVar('SITEINFO_ENDIANESS', d, 1) == 'le']}"
# Include tune file for thumb support, it defaults to off so DISTROs can turn it on if they wish
require conf/machine/include/tune-thumb.inc
# please close bug and remove this comment when properly fixed
#
EXTRA_OECONF_linux-uclibc = "--disable-nls"
-EXTRA_OECONF_linux-uclibcgnueabi = "--disable-nls"
+EXTRA_OECONF_linux-uclibceabi = "--disable-nls"
inherit autotools
AVAHI_GTK = "--disable-gtk"
LDFLAGS_append_linux-uclibc = " -lintl"
-LDFLAGS_append_linux-uclibcgnueabi = " -lintl "
+LDFLAGS_append_linux-uclibceabi = " -lintl "
LDFLAGS_append_uclinux-uclibc = " -lintl"
PACKAGES =+ "avahi-daemon avahi-discover libavahi-common libavahi-core libavahi-client avahi-dnsconfd libavahi-glib libavahi-ui avahi-discover-standalone avahi-autoipd avahi-utils"
# because it uses __mempcpy, there are other things (TBD:
# see diffutils.mk in buildroot)
EXTRA_OECONF_linux-uclibc = "--without-included-regex"
-EXTRA_OECONF_linux-uclibcgnueabi = "--without-included-regex"
+EXTRA_OECONF_linux-uclibceabi = "--without-included-regex"
do_install_append () {
mv ${D}${bindir}/diff ${D}${bindir}/diff.${PN}
LICENSE = "GPLv2"
DEPENDS = " pthsem libxml2"
DEPENDS_append_linux-uclibc = " argp-standalone "
-DEPENDS_append_linux-uclibcgnueabi = " argp-standalone "
+DEPENDS_append_linux-uclibceabi = " argp-standalone "
SRC_URI += " file://eibd "
require gcc-configure-common.inc
USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibc", "no", "", d )}'
-USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibcgnueabi", "no", "", d )}'
+USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibceabi", "no", "", d )}'
#
# We need to override this and make sure the compiler can find staging
JAVA_armeb ?= ""
JAVA_mipsel ?= ""
JAVA_sh3 ?= ""
-OBJC_linux-uclibcgnueabi ?= ""
+OBJC_linux-uclibceabi ?= ""
OBJC_linux-uclibc ?= ""
OBJC_avr ?= ""
OBJC ?= ",objc"
EXTRA_OECONF_append_linux = " --enable-__cxa_atexit"
EXTRA_OECONF_append_linux-gnueabi = " --enable-__cxa_atexit"
EXTRA_OECONF_append_linux-uclibc = " --disable-__cxa_atexit"
-EXTRA_OECONF_append_linux-uclibcgnueabi = " --disable-__cxa_atexit"
+EXTRA_OECONF_append_linux-uclibceabi = " --disable-__cxa_atexit"
EXTRA_OECONF_FPU = "${@get_gcc_fpu_setting(bb, d)}"
CPPFLAGS = ""
# The two lines below conflict, this needs fixing - RP
USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibc", "no", "", d )}'
-USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibcgnueabi", "no", "", d )}'
+USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibceabi", "no", "", d )}'
EXTRA_OECONF_PATHS = "--with-sysroot=${prefix}/${TARGET_SYS} \
--with-build-time-tools=${CROSS_DIR}/${TARGET_SYS}/bin \
file://disable_java.patch;patch=1"
SRC_URI_append_linux-uclibc = " file://gettext-error_print_progname.patch;patch=1"
-SRC_URI_append_linux-uclibcgnueabi = " file://gettext-error_print_progname.patch;patch=1"
+SRC_URI_append_linux-uclibceabi = " file://gettext-error_print_progname.patch;patch=1"
PARALLEL_MAKE = ""
"
SRC_URI_append_linux-uclibc = " file://gettext-error_print_progname.patch;patch=1"
-SRC_URI_append_linux-uclibcgnueabi = " file://gettext-error_print_progname.patch;patch=1"
+SRC_URI_append_linux-uclibceabi = " file://gettext-error_print_progname.patch;patch=1"
PARALLEL_MAKE = ""
SRC_URI_append_linux-gnueabi = "file://klibc-config-eabi.patch;patch=1 \
"
-SRC_URI_append_linux-uclibcgnueabi = "file://klibc-config-eabi.patch;patch=1 \
+SRC_URI_append_linux-uclibceabi = "file://klibc-config-eabi.patch;patch=1 \
"
EXTRA_OEMAKE = "'KLIBCARCH=${KLIBC_ARCH}' \
EXTRA_OECONF_append_linux = " --enable-__cxa_atexit"
EXTRA_OECONF_append_linux-gnueabi = " --enable-__cxa_atexit"
EXTRA_OECONF_append_linux-uclibc = " --disable-__cxa_atexit"
-EXTRA_OECONF_append_linux-uclibcgnueabi = " --disable-__cxa_atexit"
+EXTRA_OECONF_append_linux-uclibceabi = " --disable-__cxa_atexit"
EXTRA_OECONF_FPU = "${@get_gcc_fpu_setting(bb, d)}"
#Somehow gcc doesn't set __SOFTFP__ when passing -mfloatabi=softp :(
EXTRA_OECONF_append_linux = " --enable-__cxa_atexit"
EXTRA_OECONF_append_linux-gnueabi = " --enable-__cxa_atexit"
EXTRA_OECONF_append_linux-uclibc = " --disable-__cxa_atexit"
-EXTRA_OECONF_append_linux-uclibcgnueabi = " --disable-__cxa_atexit"
+EXTRA_OECONF_append_linux-uclibceabi = " --disable-__cxa_atexit"
EXTRA_OECONF_FPU = "${@get_gcc_fpu_setting(bb, d)}"
#Somehow gcc doesn't set __SOFTFP__ when passing -mfloatabi=softp :(
DEPENDS = " pthsem lua5.1 curl libesmtp"
DEPENDS_append_linux-uclibc = " argp-standalone"
-DEPENDS_append_linux-uclibcgnueabi = " argp-standalone"
+DEPENDS_append_linux-uclibceabi = " argp-standalone"
SRC_URI += "file://configure-libcurl.patch;patch=1 \
file://linknx.start "
fi
- if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
fi
- if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
do_configure_prepend() {
echo "" > ${S}/.config
- if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
echo 'CONFIG_CPU_BIG_ENDIAN=y' >>'${S}/.config'
fi
- if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
do_configure() {
cp arch/arm/configs/neon_defconfig .config || die "No default configuration for ${MACHINE} available."
-# if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+# if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
# echo "CONFIG_AEABI=y" >> ${S}/.config
# echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
# else
|| die "No default configuration for ${MACHINE} available."
fi
- if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
echo "CONFIG_INITRAMFS_SOURCE=\"${WORKDIR}/initramfs.cpio\"" >> ${S}/.config
fi
- if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
fi
- if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
rm -f ${S}/.config || true
- if [ "${TARGET_OS}" = "linux-gnueabi" -o "${TARGET_OS}" = "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" = "linux-gnueabi" -o "${TARGET_OS}" = "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
fi
- if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
echo "CONFIG_CMDLINE=\"${CMDLINE}\"" >> ${S}/.config
- if [ "${TARGET_OS}" = "linux-gnueabi" -o "${TARGET_OS}" = "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" = "linux-gnueabi" -o "${TARGET_OS}" = "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
if [ "${ARM_KEEP_OABI}" = "1" ] ; then
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
fi
- if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
#
# oabi / eabi support
#
- if [ "${TARGET_OS}" = "linux-gnueabi" -o "${TARGET_OS}" = "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" = "linux-gnueabi" -o "${TARGET_OS}" = "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
if [ "${ARM_KEEP_OABI}" = "1" ] ; then
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
do_configure_prepend() {
install -m 0644 ${WORKDIR}/mx21ads_defconfig ${S}/defconfig
- if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
fi
- if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibceabi" ]; then
echo "CONFIG_AEABI=y" >> ${S}/.config
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
else
inherit autotools
do_configure_prepend() {
- if [ "${TARGET_OS}" = "linux-uclibc" -o "${TARGET_OS}" = "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" = "linux-uclibc" -o "${TARGET_OS}" = "linux-uclibceabi" ]; then
export make_cv_sys_gnu_glob="no"
export GLOBINC=-I`pwd`/glob
export GLOBLIB=glob/libglob.a
if [ "x$os" = "xlinux-uclibc" ]; then
os=linux
fi
+ if [ "x$os" = "xlinux-uclibceabi" ]; then
+ os=linux
+ fi
target="$os-${HOST_ARCH}"
case $target in
linux-arm)
done
# Fixups for uclibc
- if [ "${TARGET_OS}" = "linux-uclibc" -o "${TARGET_OS}" = "linux-uclibcgnueabi" ]; then
+ if [ "${TARGET_OS}" = "linux-uclibc" -o "${TARGET_OS}" = "linux-uclibceabi" ]; then
sed -i -e "s,\(d_crypt_r=\)'define',\1'undef',g" \
-e "s,\(crypt_r_proto=\)'\w+',\1'0',g" \
-e "s,\(d_getnetbyname_r=\)'define',\1'undef',g" \
do_configure() {
# Install the OE build templates
- for template in linux-oe-g++ linux-uclibc-oe-g++ linux-gnueabi-oe-g++ linux-uclibcgnueabi-oe-g++
+ for template in linux-oe-g++ linux-uclibc-oe-g++ linux-gnueabi-oe-g++ linux-uclibceabi-oe-g++
do
install -d ${S}/mkspecs/$template
install -m 0644 ${WORKDIR}/linux-oe-qmake.conf ${S}/mkspecs/$template/qmake.conf
# Make sure we regenerate all Makefiles
find ${S} -name "Makefile" | xargs rm
# Install the OE build templates
- for template in linux-oe-g++ linux-uclibc-oe-g++ linux-gnueabi-oe-g++ linux-uclibcgnueabi-oe-g++
+ for template in linux-oe-g++ linux-uclibc-oe-g++ linux-gnueabi-oe-g++ linux-uclibceabi-oe-g++
do
install -d ${S}/mkspecs/$template
install -m 0644 ${WORKDIR}/linux-oe-qmake.conf ${S}/mkspecs/$template/qmake.conf
> `dirname $f`/`basename $f | sed -e 's,linux-,linux-uclibc-,'`
sed -e 's,-linux-,-linux-gnueabi-,g' < $f \
> `dirname $f`/`basename $f | sed -e 's,linux-,linux-gnueabi-,'`
- sed -e 's,-linux-,-linux-uclibcgnueabi-,g' < $f \
- > `dirname $f`/`basename $f | sed -e 's,linux-,linux-uclibcgnueabi-,'`
+ sed -e 's,-linux-,-linux-uclibceabi-,g' < $f \
+ > `dirname $f`/`basename $f | sed -e 's,linux-,linux-uclibceabi-,'`
done
echo yes | ./configure ${EXTRA_OECONF} || die "Configuring qte failed. EXTRA_OECONF was ${EXTRA_OECONF}"
}
SRC_URI += "file://configure.patch;patch=1 \
"
SRC_URI_append_linux-uclibc = "file://uclibc-strlcpy-strlcat.patch;patch=1"
-SRC_URI_append_linux-uclibcgnueabi = "file://uclibc-strlcpy-strlcat.patch;patch=1"
+SRC_URI_append_linux-uclibceabi = "file://uclibc-strlcpy-strlcat.patch;patch=1"
PR = "r5"
LIBC_PKGS_linux = "${GLIBC_PKGS}"
LIBC_PKGS_linux-gnueabi = "${GLIBC_PKGS}"
LIBC_PKGS_linux-uclibc = "uclibc uclibc-dev uclibc-thread-db"
-LIBC_PKGS_linux-uclibcgnueabi = "uclibc uclibc-dev uclibc-thread-db"
+LIBC_PKGS_linux-uclibceabi = "uclibc uclibc-dev uclibc-thread-db"
RDEPENDS_${PN} = "\
${LIBC_PKGS} \
sed -i -e '/CONFIG_ARM_EABI/d' ${S}/.config
- if [ "${TARGET_OS}" = "linux-gnueabi" -o "${TARGET_OS}" = "linux-uclibcgnueabi" ]; then
- echo "CONFIG_ARM_EABI=y" >> ${S}/.config
- else
- echo "# CONFIG_ARM_EABI is not set" >> ${S}/.config
+ if [ `echo ${TARGET_ARCH} | grep -e '^arm'` ]; then
+ if [ `echo ${TARGET_OS} | grep -e 'eabi$'` ]; then
+ echo "CONFIG_ARM_EABI=y" >> ${S}/.config
+ else
+ echo "# CONFIG_ARM_EABI is not set" >> ${S}/.config
+ fi
fi
-
yes '' | oe_runmake oldconfig
}
file://util-linux-ng-replace-siginterrupt.patch;patch=1 \
"
LDFLAGS_append_linux-uclibc = " -lintl"
-LDFLAGS_append_linux-uclibcgnueabi = " -lintl "
+LDFLAGS_append_linux-uclibceabi = " -lintl "
LDFLAGS_append_uclinux-uclibc = " -lintl"