diff options
author | John Bowler <jbowler@nslu2-linux.org> | 2005-08-11 20:51:17 +0000 |
---|---|---|
committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2005-08-11 20:51:17 +0000 |
commit | 2c071abeee8f883ee38e4de0e0370a8816486894 (patch) | |
tree | fca59a77ad34a1facc8dcb0c4a3de2cb1b374b70 /conf | |
parent | 5d0228c596f8ff96033c23258eadbb14de8aa094 (diff) |
Set -mthumb-interwork on ucslugc builds to allow building (and maybe
someday running) of thumb exectuables.
Diffstat (limited to 'conf')
-rw-r--r-- | conf/distro/ucslugc.conf | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/conf/distro/ucslugc.conf b/conf/distro/ucslugc.conf index 7eb8e2f9ad..bb383b8a66 100644 --- a/conf/distro/ucslugc.conf +++ b/conf/distro/ucslugc.conf @@ -18,8 +18,13 @@ USE_NLS_glib-2.0 = "yes" INHERIT += " package_ipk debian nslu2_flashimg" # The OVERRIDES are modified here so that 'openslug' overrides are picked up if -# present (ucslugc overrides take precedence) -OVERRIDES = "local:${MACHINE}:${DISTRO}:openslug:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}" +# present (ucslugc overrides take precedence), 'thumb' is used to factor out +# things where a pack assumes that an arm target implies 32 bit instruction +# support with no attention to thumb/arm mode (it indicates a bug if it is +# necessary to use this). +#NSLU2_THUMB_OVERRIDE = ":thumb" +NSLU2_THUMB_OVERRIDE = "" +OVERRIDES = "local:${MACHINE}:${DISTRO}:openslug:${TARGET_OS}${NSLU2_THUMB_OVERRIDE}:${TARGET_ARCH}:build-${BUILD_OS}" # NOTE: to build new packages set UCSLUGC_EXTRA_BBFILES to the full path name to # the .bb files for the packages to build - see ucslugc-packages.conf in this @@ -46,6 +51,28 @@ FEED_URIS_append += "native##http://ipkg.nslu2-linux.org/feeds/ucslugc/native/${ #FEED_URIS_append += "unstable_native##http://ipkg.nslu2-linux.org/feeds/ucslugc/native/unstable" #---------------------------------------------------------------------------------- +# OVERALL BUILD OPTIONS +#---------------------------------------------------------------------------------- +# +# TARGET_CC_ARCH is used to provide architecture specific definitions to the C +# compiler. For target compilation it is part of "CC" - not part of "CFLAGS" - +# in the hope that individual package builds will therefore not circumvent it +# (this doesn't always work, but it is more reliable than a simple setting of +# CFLAGS values). +# +# For UcSlugC the architecture value used is based on the standard NSLU2 value, +# however it selects both thumb interwork and thumb code generation to minimise +# build size. The distro allows the choice of thumb or arm code to be overridden +# on a per-package basis by setting NSLU2_THUMB (to empty) in the package .bb file. +# See also the 'override' above. +#NSLU2_THUMB = "-mthumb" +NSLU2_THUMB = "" +TARGET_CC_ARCH = "-march=armv5te -mtune=xscale -mthumb-interwork ${NSLU2_THUMB}" +TARGET_CC_KERNEL_ARCH = "-march=armv5te -mtune=xscale -mno-thumb-interwork -mno-thumb" +TARGET_LD_ARCH = "" +TARGET_LD_KERNEL_ARCH = "" + +#---------------------------------------------------------------------------------- # FIRMWARE CONFIGURATION #---------------------------------------------------------------------------------- # IMAGE BUILD OPTIONS |