From d077134b0a75c6e3c57782056ef47383f5642f71 Mon Sep 17 00:00:00 2001 From: Joshua Watt Date: Mon, 24 Jun 2024 13:10:55 -0600 Subject: binutils-cross-testsuite: Rename to binutils-testsuite This recipe needs to be renamed because the "-cross-" substring in the name triggers the cross architecture detection in sstate, but this recipe is not actually a cross recipe. (From OE-Core rev: 812c114a8a872ad59b19c7ffb8c1f230fc64c823) Signed-off-by: Joshua Watt Signed-off-by: Richard Purdie --- meta/classes-global/mirrors.bbclass | 2 +- meta/conf/distro/include/maintainers.inc | 2 +- meta/lib/oeqa/selftest/cases/binutils.py | 2 +- .../binutils/binutils-cross-testsuite_2.42.bb | 83 --------------------- .../binutils/binutils-testsuite_2.42.bb | 86 ++++++++++++++++++++++ 5 files changed, 89 insertions(+), 86 deletions(-) delete mode 100644 meta/recipes-devtools/binutils/binutils-cross-testsuite_2.42.bb create mode 100644 meta/recipes-devtools/binutils/binutils-testsuite_2.42.bb diff --git a/meta/classes-global/mirrors.bbclass b/meta/classes-global/mirrors.bbclass index 862648eec5..d68d30b0f2 100644 --- a/meta/classes-global/mirrors.bbclass +++ b/meta/classes-global/mirrors.bbclass @@ -88,7 +88,7 @@ git://.*/.* git://HOST/git/PATH;protocol=https \ BB_GIT_SHALLOW:pn-binutils = "1" BB_GIT_SHALLOW:pn-binutils-cross-${TARGET_ARCH} = "1" BB_GIT_SHALLOW:pn-binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} = "1" -BB_GIT_SHALLOW:pn-binutils-cross-testsuite = "1" +BB_GIT_SHALLOW:pn-binutils-testsuite = "1" BB_GIT_SHALLOW:pn-binutils-crosssdk-${SDK_SYS} = "1" BB_GIT_SHALLOW:pn-binutils-native = "1" BB_GIT_SHALLOW:pn-nativesdk-binutils = "1" diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc index 7294088727..37ad293e32 100644 --- a/meta/conf/distro/include/maintainers.inc +++ b/meta/conf/distro/include/maintainers.inc @@ -64,7 +64,7 @@ RECIPE_MAINTAINER:pn-bind = "Unassigned " RECIPE_MAINTAINER:pn-binutils = "Khem Raj " RECIPE_MAINTAINER:pn-binutils-cross-${TARGET_ARCH} = "Khem Raj " RECIPE_MAINTAINER:pn-binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj " -RECIPE_MAINTAINER:pn-binutils-cross-testsuite = "Khem Raj " +RECIPE_MAINTAINER:pn-binutils-testsuite = "Khem Raj " RECIPE_MAINTAINER:pn-binutils-crosssdk-${SDK_SYS} = "Khem Raj " RECIPE_MAINTAINER:pn-bison = "Chen Qi " RECIPE_MAINTAINER:pn-blktool = "Yi Zhao " diff --git a/meta/lib/oeqa/selftest/cases/binutils.py b/meta/lib/oeqa/selftest/cases/binutils.py index 1688eabe4e..5ff263d342 100644 --- a/meta/lib/oeqa/selftest/cases/binutils.py +++ b/meta/lib/oeqa/selftest/cases/binutils.py @@ -33,7 +33,7 @@ class BinutilsCrossSelfTest(OESelftestTestCase, OEPTestResultTestCase): features.append('CHECK_TARGETS = "{0}"'.format(suite)) self.write_config("\n".join(features)) - recipe = "binutils-cross-testsuite" + recipe = "binutils-testsuite" bb_vars = get_bb_vars(["B", "TARGET_SYS", "T"], recipe) builddir, target_sys, tdir = bb_vars["B"], bb_vars["TARGET_SYS"], bb_vars["T"] diff --git a/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.42.bb b/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.42.bb deleted file mode 100644 index 630815c7a3..0000000000 --- a/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.42.bb +++ /dev/null @@ -1,83 +0,0 @@ -require binutils.inc -require binutils-${PV}.inc - -BPN = "binutils" - -DEPENDS += "dejagnu-native expect-native" -DEPENDS += "binutils-native" - -deltask do_compile -deltask do_install - -inherit nopackages - -do_configure[dirs] += "${B}/ld ${B}/bfd" -do_configure() { - # create config.h, oe enables initfini-array by default - echo "#define HAVE_INITFINI_ARRAY" > ${B}/ld/config.h -} - -# target depends -DEPENDS += "virtual/${TARGET_PREFIX}binutils" -DEPENDS += "virtual/${TARGET_PREFIX}gcc" -DEPENDS += "virtual/${MLPREFIX}${TARGET_PREFIX}compilerlibs" -DEPENDS += "virtual/${MLPREFIX}libc" - -python check_prepare() { - def suffix_sys(sys): - if sys.endswith("-linux"): - return sys + "-gnu" - return sys - - def generate_site_exp(d, suite): - content = [] - content.append('set srcdir "{0}/{1}"'.format(d.getVar("S"), suite)) - content.append('set objdir "{0}/{1}"'.format(d.getVar("B"), suite)) - content.append('set build_alias "{0}"'.format(d.getVar("BUILD_SYS"))) - content.append('set build_triplet {0}'.format(d.getVar("BUILD_SYS"))) - # use BUILD here since HOST=TARGET - content.append('set host_alias "{0}"'.format(d.getVar("BUILD_SYS"))) - content.append('set host_triplet {0}'.format(d.getVar("BUILD_SYS"))) - content.append('set target_alias "{0}"'.format(d.getVar("TARGET_SYS"))) - content.append('set target_triplet {0}'.format(suffix_sys(d.getVar("TARGET_SYS")))) - content.append("set development true") - content.append("set experimental false") - - content.append(d.expand('set CXXFILT "${TARGET_PREFIX}c++filt"')) - content.append(d.expand('set CC "${TARGET_PREFIX}gcc --sysroot=${STAGING_DIR_TARGET} ${TUNE_CCARGS}"')) - content.append(d.expand('set CXX "${TARGET_PREFIX}g++ --sysroot=${STAGING_DIR_TARGET} ${TUNE_CCARGS}"')) - content.append(d.expand('set CFLAGS_FOR_TARGET "--sysroot=${STAGING_DIR_TARGET} ${TUNE_CCARGS}"')) - content.append(d.expand('set LD "${TARGET_PREFIX}ld ${TUNE_LDARGS}"')) - content.append(d.expand('set LDFLAGS_FOR_TARGET "${TUNE_LDARGS}"')) - - if suite == "ld" and d.getVar("TUNE_ARCH") == "mips64": - # oe patches binutils to have the default mips64 abi as 64bit, but - # skips gas causing issues with the ld test suite (which uses gas) - content.append('set ASFLAGS "-64"') - - return "\n".join(content) - - for i in ["binutils", "gas", "ld"]: - builddir = os.path.join(d.getVar("B"), i) - if not os.path.isdir(builddir): - os.makedirs(builddir) - with open(os.path.join(builddir, "site.exp"), "w") as f: - f.write(generate_site_exp(d, i)) -} - -CHECK_TARGETS ??= "binutils gas ld" - -do_check[dirs] = "${B} ${B}/binutils ${B}/gas ${B}/ld" -do_check[prefuncs] += "check_prepare" -do_check[nostamp] = "1" -do_check() { - export LC_ALL=C - for i in ${CHECK_TARGETS}; do - (cd ${B}/$i; runtest \ - --tool $i \ - --srcdir ${S}/$i/testsuite \ - --ignore 'plugin.exp' \ - || true) - done -} -addtask check after do_configure diff --git a/meta/recipes-devtools/binutils/binutils-testsuite_2.42.bb b/meta/recipes-devtools/binutils/binutils-testsuite_2.42.bb new file mode 100644 index 0000000000..f2facd52c3 --- /dev/null +++ b/meta/recipes-devtools/binutils/binutils-testsuite_2.42.bb @@ -0,0 +1,86 @@ +# NOTE: This recipe cannot have -cross- in the file name because it triggers +# the cross build detection in sstate which causes it to use the wrong +# architecture +require binutils.inc +require binutils-${PV}.inc + +BPN = "binutils" + +DEPENDS += "dejagnu-native expect-native" +DEPENDS += "binutils-native" + +deltask do_compile +deltask do_install + +inherit nopackages + +do_configure[dirs] += "${B}/ld ${B}/bfd" +do_configure() { + # create config.h, oe enables initfini-array by default + echo "#define HAVE_INITFINI_ARRAY" > ${B}/ld/config.h +} + +# target depends +DEPENDS += "virtual/${TARGET_PREFIX}binutils" +DEPENDS += "virtual/${TARGET_PREFIX}gcc" +DEPENDS += "virtual/${MLPREFIX}${TARGET_PREFIX}compilerlibs" +DEPENDS += "virtual/${MLPREFIX}libc" + +python check_prepare() { + def suffix_sys(sys): + if sys.endswith("-linux"): + return sys + "-gnu" + return sys + + def generate_site_exp(d, suite): + content = [] + content.append('set srcdir "{0}/{1}"'.format(d.getVar("S"), suite)) + content.append('set objdir "{0}/{1}"'.format(d.getVar("B"), suite)) + content.append('set build_alias "{0}"'.format(d.getVar("BUILD_SYS"))) + content.append('set build_triplet {0}'.format(d.getVar("BUILD_SYS"))) + # use BUILD here since HOST=TARGET + content.append('set host_alias "{0}"'.format(d.getVar("BUILD_SYS"))) + content.append('set host_triplet {0}'.format(d.getVar("BUILD_SYS"))) + content.append('set target_alias "{0}"'.format(d.getVar("TARGET_SYS"))) + content.append('set target_triplet {0}'.format(suffix_sys(d.getVar("TARGET_SYS")))) + content.append("set development true") + content.append("set experimental false") + + content.append(d.expand('set CXXFILT "${TARGET_PREFIX}c++filt"')) + content.append(d.expand('set CC "${TARGET_PREFIX}gcc --sysroot=${STAGING_DIR_TARGET} ${TUNE_CCARGS}"')) + content.append(d.expand('set CXX "${TARGET_PREFIX}g++ --sysroot=${STAGING_DIR_TARGET} ${TUNE_CCARGS}"')) + content.append(d.expand('set CFLAGS_FOR_TARGET "--sysroot=${STAGING_DIR_TARGET} ${TUNE_CCARGS}"')) + content.append(d.expand('set LD "${TARGET_PREFIX}ld ${TUNE_LDARGS}"')) + content.append(d.expand('set LDFLAGS_FOR_TARGET "${TUNE_LDARGS}"')) + + if suite == "ld" and d.getVar("TUNE_ARCH") == "mips64": + # oe patches binutils to have the default mips64 abi as 64bit, but + # skips gas causing issues with the ld test suite (which uses gas) + content.append('set ASFLAGS "-64"') + + return "\n".join(content) + + for i in ["binutils", "gas", "ld"]: + builddir = os.path.join(d.getVar("B"), i) + if not os.path.isdir(builddir): + os.makedirs(builddir) + with open(os.path.join(builddir, "site.exp"), "w") as f: + f.write(generate_site_exp(d, i)) +} + +CHECK_TARGETS ??= "binutils gas ld" + +do_check[dirs] = "${B} ${B}/binutils ${B}/gas ${B}/ld" +do_check[prefuncs] += "check_prepare" +do_check[nostamp] = "1" +do_check() { + export LC_ALL=C + for i in ${CHECK_TARGETS}; do + (cd ${B}/$i; runtest \ + --tool $i \ + --srcdir ${S}/$i/testsuite \ + --ignore 'plugin.exp' \ + || true) + done +} +addtask check after do_configure -- cgit v1.2.3-54-g00ecf