Hi,

On Mar 29, 2013, at 10:20 PM, Elvis Dowson <[email protected]> wrote:

> Hi,
>        I'm trying to update the tune files for MicroBlaze, specifically the 
> microblazeel (little endian) with soft-float.
> 
> I get the following error while trying to build:
> 
> ERROR: Unable to determine endianness for architecture ''
> ERROR: Unable to determine endianness for architecture ''
> ERROR: Please add your architecture to siteinfo.bbclass
> ERROR: Please add your architecture to siteinfo.bbclass
> ERROR: Unable to parse 
> /tool/yocto/meta-openembedded/toolchain-layer/recipes-devtools/gcc/libgcc_4.6.bb:
>  Exited with "1"--:--
> ERROR: Unable to determine endianness for architecture ''
> ERROR: Please add your architecture to siteinfo.bbclass
> ERROR: Command execution failed: Exited with 1

The TUNE_ARCH variable wasn't set. Explicitly setting TUNE_ARCH = 
"microblazeel" allowed me to proceed ahead with the build.

However, I can't but help think that the tune files can be better written or 
organized.

It would be great if someone could critically comment on these microblaze tune 
files, to suggest how I can improve the structure and layout of the basic tune 
file definitions.

Contents of arch-microblaze.inc file:

# Microblaze ABI interface definition
# Four defined ABIs, all combinations of:
# *) Hard/Soft Floating Point
# *) Big Endian (PLB System) / Little Endian (AXI System)

DEFAULTTUNE ?= "microblaze"
TUNE_ARCH ?= "microblaze"

TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}"
ABIEXTENSION ?= ""

TUNEVALID[fpu-hard] = "Use hardware FPU."
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard", 
"-mhard-float", "", d)}"
#TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard", "microblaze", 
"", d)}"

TUNEVALID[fpu-soft] = "Use software FPU."
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", 
"-msoft-float", "", d)}"
TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", 
d)}"

TUNEVALID[big-endian] = "Microblaze Big Endian processor"
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "big-endian", 
"-mbig-endian", "", d)}"

TUNEVALID[little-endian] = "Microblaze Little Endian processor"
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "little-endian", 
"-mlittle-endian", "", d)}"

# Basic tune definitions
AVAILTUNES += "microblaze"

TUNE_FEATURES_tune-microblaze ?= "big-endian fpu-hard"
BASE_LIB_tune-microblaze = "lib"
TUNE_PKGARCH_tune-microblaze = "microblaze"
PACKAGE_EXTRA_ARCHS_tune-microblaze = "microblaze"


Contents of tune-microblazeel-nf.inc file:

# Tune options for MicroBlaze little endian soft-float
DEFAULTTUNE ?= "microblazeel-nf"

TUNE_ARCH = "microblazeel"

require conf/machine/include/microblaze/arch-microblaze.inc

TUNEVALID[microblazeel-nf] = "Enable MicroBlaze little endian soft-float 
optimizations"
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "microblazeel-nf", 
"-mcpu=v8.40b", "", d)}"
TUNE_PKGARCH = "${@bb.utils.contains("TUNE_FEATURES", "microblazeel-nf", 
"microblazeel-nf", "microblazeel-nf", d)}"

AVAILTUNES += "microblazeel-nf"
TUNE_FEATURES_tune-microblazeel-nf ?= "little-endian fpu-soft"
BASE_LIB_tune-microblazeel-nf = "lib"
TUNE_PKGARCH_tune-microblazeel-nf = "microblazeel-nf"
PACKAGE_EXTRA_ARCHS_tune-microblazeel-nf = "microblazeel-nf"

Elvis Dowson

_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

Reply via email to