From c527fd1f14c27855a37f2e8ac5346ce8d940ced2 Mon Sep 17 00:00:00 2001 From: Tudor Florea Date: Thu, 16 Oct 2014 03:05:19 +0200 Subject: initial commit for Enea Linux 4.0-140929 Migrated from the internal git server on the daisy-enea-point-release branch Signed-off-by: Tudor Florea --- meta/conf/machine/include/x86/README | 24 ++++++++++++++ meta/conf/machine/include/x86/arch-x86.inc | 51 ++++++++++++++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 meta/conf/machine/include/x86/README create mode 100644 meta/conf/machine/include/x86/arch-x86.inc (limited to 'meta/conf/machine/include/x86') diff --git a/meta/conf/machine/include/x86/README b/meta/conf/machine/include/x86/README new file mode 100644 index 0000000000..2b6c46c7eb --- /dev/null +++ b/meta/conf/machine/include/x86/README @@ -0,0 +1,24 @@ +2012/03/30 - Mark Hatle + - Initial version + +Most of the items for the X86 architectures are defined in the single +arch-x86 file. + +Three ABIs are define, m32, mx32 and m64. + +The following is the list of X86 specific variables: + +X86ARCH32 - This is the 32-bit architecture GNU canonical arch, TUNE_ARCH. + +X86ARCH64 - This is the 64-bit architecture GNU canonical arch, TUNE_ARCH. + +The TUNE_PKGARCH is defined as follows: + +TUNE_PKGARCH = ${TUNE_PKGARCH_tune-${DEFAULTTUNE}} + +The package architecture for 32-bit targets is historical and generally +set to to match the core compatible processor type, i.e. i386. + +For 64-bit architectures, the architecture is expected to end in '_64'. + +If the x32 ABI is used, then the _64 is further extended with a '_x32'. diff --git a/meta/conf/machine/include/x86/arch-x86.inc b/meta/conf/machine/include/x86/arch-x86.inc new file mode 100644 index 0000000000..298bddc6a1 --- /dev/null +++ b/meta/conf/machine/include/x86/arch-x86.inc @@ -0,0 +1,51 @@ +# +# X86 Architecture definition (IA32, X86_64, and X32) +# + +DEFAULTTUNE ?= "x86" +TARGET_FPU ?= "" +X86ARCH32 ?= "i586" +X86ARCH64 ?= "x86_64" + +TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}" + +# ELF32 ABI +TUNEVALID[m32] = "IA32 ELF32 standard ABI" +TUNECONFLICTS[m32] = "m64 mx32" +TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "m32", "${X86ARCH32}", "" ,d)}" +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "m32", " -m32", "", d)}" +MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "m32", "x86:", "" ,d)}" + +# x32 ABI +TUNEVALID[mx32] = "IA32e (x86_64) ELF32 standard ABI" +TUNECONFLICTS[mx32] = "m64 m32" +TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "${X86ARCH64}", "" ,d)}" +ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}" +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", " -mx32", "", d)}" +TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}" +TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}" + +# ELF64 ABI +TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI" +TUNECONFLICTS[m64] = "m32 mx32" +TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "m64", "${X86ARCH64}", "" ,d)}" +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "m64", " -m64", "", d)}" + +# Default Tune configurations +AVAILTUNES += "x86" +TUNE_FEATURES_tune-x86 = "m32" +BASE_LIB_tune-x86 = "lib" +TUNE_PKGARCH_tune-x86 = "x86" +PACKAGE_EXTRA_ARCHS_tune-x86 = "${TUNE_PKGARCH_tune-x86}" + +AVAILTUNES += "x86-64" +TUNE_FEATURES_tune-x86-64 = "m64" +BASE_LIB_tune-x86-64 = "lib64" +TUNE_PKGARCH_tune-x86-64 = "x86_64" +PACKAGE_EXTRA_ARCHS_tune-x86-64 = "${TUNE_PKGARCH_tune-x86-64}" + +AVAILTUNES += "x86-64-x32" +TUNE_FEATURES_tune-x86-64-x32 = "mx32" +BASE_LIB_tune-x86-64-x32 = "libx32" +TUNE_PKGARCH_tune-x86-64-x32 = "x86_64_x32" +PACKAGE_EXTRA_ARCHS_tune-x86-64-x32 = "${TUNE_PKGARCH_tune-x86-64-x32}" -- cgit v1.2.3-54-g00ecf