- Changes for openmpacc examples: Removed vecadd_lib, edmabw - Changes for clacc host_cc and host_link_cc parameters: Determine target compiler name directly from CMake - Documentation update regarding no support for variadic functions in target regions
Signed-off-by: Gaurav Mitra <[email protected]> Signed-off-by: Yuan Zhao <[email protected]> --- .../recipes-ti/openmpacc/clacc_git.bb | 34 ++++++++++++++++++---- .../recipes-ti/openmpacc/openmpacc-examples_git.bb | 8 +---- .../recipes-ti/openmpacc/openmpacc.inc | 4 +-- .../recipes-ti/openmpacc/openmpacc_git.bb | 4 --- 4 files changed, 31 insertions(+), 19 deletions(-) diff --git a/meta-arago-extras/recipes-ti/openmpacc/clacc_git.bb b/meta-arago-extras/recipes-ti/openmpacc/clacc_git.bb index 75ce4628..cecffa02 100644 --- a/meta-arago-extras/recipes-ti/openmpacc/clacc_git.bb +++ b/meta-arago-extras/recipes-ti/openmpacc/clacc_git.bb @@ -2,7 +2,7 @@ SUMMARY = "TI OpenMP-Acc C compiler" include openmpacc.inc -PR = "${INC_PR}.1" +PR = "${INC_PR}.0" DEPENDS = "boost elfutils" RDEPENDS_${PN} += "clocl" @@ -18,16 +18,38 @@ export X86_HOST_ROOT = "${STAGING_DIR_HOST}" PARALLEL_MAKE = "" +# The variables CLACC_CC and CLACC_CXX are used to point clacc to set its +# host_cc and host_link_cc variables which were previously hardcoded in clacc.h. +# This adds support for different toolchain configurations to build clacc by +# passing in the compiler names at the build stage and removes corresponding +# string replacement requirements in yocto recipes. +python __anonymous() { + cc_name = "" + cxx_name = "" + if d.getVar("TOOLCHAIN_PREFIX"): + cc_name = d.getVar("TOOLCHAIN_PREFIX") + "gcc" + cxx_name = d.getVar("TOOLCHAIN_PREFIX") + "g++" + else: + cc_name = d.getVar("TARGET_PREFIX") + "gcc" + cxx_name = d.getVar("TARGET_PREFIX") + "g++" + + # Convert to upper case to workaround GCC preprocessor bug where the word + # 'linux' is defined to be 1. This results in arm-linux-gnueabihf- being + # stringized to arm-1-gnueabihf- by the GCC preprocessor. To workaround this + # bug, convert the names to upper case and send through. Clacc will convert + # to lower case before usage. + d.setVar("CLACC_CC_NAME", cc_name.upper()) + d.setVar("CLACC_CXX_NAME", cxx_name.upper()) +} + + EXTRA_OEMAKE = " -C ${S}/clacc \ ${TARGET} \ CXX="${CXX}" \ + CLACC_CC="${CLACC_CC_NAME}" \ + CLACC_CXX="${CLACC_CXX_NAME}" \ " -do_configure() { - sed "s|arm-linux-gnueabihf-gcc|${TOOLCHAIN_PREFIX}gcc|g" -i clacc/clacc.h - sed "s|arm-linux-gnueabihf-g++|${TOOLCHAIN_PREFIX}g++|g" -i clacc/clacc.h -} - do_compile() { oe_runmake } diff --git a/meta-arago-extras/recipes-ti/openmpacc/openmpacc-examples_git.bb b/meta-arago-extras/recipes-ti/openmpacc/openmpacc-examples_git.bb index b2f4122c..39902f8f 100644 --- a/meta-arago-extras/recipes-ti/openmpacc/openmpacc-examples_git.bb +++ b/meta-arago-extras/recipes-ti/openmpacc/openmpacc-examples_git.bb @@ -21,8 +21,6 @@ OMPACC_EXAMPLE_LIST = " target_update \ local \ null \ dsplib_fft \ - vecadd_lib \ - edmabw \ sub_section \ " @@ -35,7 +33,6 @@ python do_unpack_append() { os.makedirs(s) shutil.copy(os.path.join(git_dir,"Makefile"),s) shutil.copy(os.path.join(git_dir,"make.inc"),s) - shutil.copy(os.path.join(git_dir,"ompacc_env.sh"),s) for example in d.getVar("OMPACC_EXAMPLE_LIST").split(): shutil.copytree(os.path.join(git_dir,example), os.path.join(s,example)) } @@ -47,11 +44,9 @@ EXTRA_OEMAKE = " TARGET_ROOTDIR=${STAGING_DIR_HOST} \ MKFILELIST = "vecadd/Makefile vecadd_complex/Makefile dsplib_fft/Makefile \ null/Makefile dspheap/Makefile target_implicit_map/Makefile printf_debug/Makefile \ edmamgr/Makefile vecadd_t/Makefile target_orphan_call/Makefile target_update/Makefile \ -edmabw/Makefile sub_section/Makefile vecadd_lib/Makefile local/Makefile" +sub_section/Makefile local/Makefile" do_configure() { - sed "s|arm-linux-gnueabihf-gcc|${CC}|g" -i make.inc - sed "s|arm-linux-gnueabihf-g++|${CXX}|g" -i make.inc for f in ${MKFILELIST}; do sed "s|-fopenmp|-fopenmp ${TUNE_CCARGS}${TOOLCHAIN_OPTIONS}|g" -i $f done @@ -66,7 +61,6 @@ do_install() { install -m 644 ${B}/Makefile ${D}${datadir}/ti/examples/openmpacc install -m 644 ${B}/make.inc ${D}${datadir}/ti/examples/openmpacc - install -m 644 ${B}/ompacc_env.sh ${D}${datadir}/ti/examples/openmpacc for ompacc_example in ${OMPACC_EXAMPLE_LIST}; do install -d ${D}${datadir}/ti/examples/openmpacc/${ompacc_example} diff --git a/meta-arago-extras/recipes-ti/openmpacc/openmpacc.inc b/meta-arago-extras/recipes-ti/openmpacc/openmpacc.inc index ce0236d4..d33a156b 100644 --- a/meta-arago-extras/recipes-ti/openmpacc/openmpacc.inc +++ b/meta-arago-extras/recipes-ti/openmpacc/openmpacc.inc @@ -2,7 +2,7 @@ SUMMARY = "TI OpenMP Accelerator Model" HOMEPAGE = "http://downloads.ti.com/mctools/esd/docs/openmpacc/" LICENSE = "BSD" -PV = "1.5.4.0" +PV = "1.5.6.0" INC_PR = "r0" LIC_FILES_CHKSUM = "file://../debian/copyright;md5=aaa2a0939d08197132fc382e97b62eb0" @@ -13,7 +13,7 @@ OMPACC_GIT_URI = "git://git.ti.com/openmp/ti-openmpacc.git" OMPACC_GIT_PROTOCOL = "git" OMPACC_GIT_BRANCH = "master" -OMPACC_SRCREV = "808cef58b4ed196a9ced2310d419dbaf63dfbeb6" +OMPACC_SRCREV = "7c4e68a0bf73ec193edff9dfc23ea764ae6ad434" BRANCH = "${OMPACC_GIT_BRANCH}" SRC_URI = "${OMPACC_GIT_URI};protocol=${OMPACC_GIT_PROTOCOL};branch=${BRANCH}" diff --git a/meta-arago-extras/recipes-ti/openmpacc/openmpacc_git.bb b/meta-arago-extras/recipes-ti/openmpacc/openmpacc_git.bb index a28a9225..44b59a4f 100644 --- a/meta-arago-extras/recipes-ti/openmpacc/openmpacc_git.bb +++ b/meta-arago-extras/recipes-ti/openmpacc/openmpacc_git.bb @@ -18,7 +18,3 @@ export LINUX_DEVKIT_ROOT = "${STAGING_DIR_HOST}" EXTRA_OECMAKE += "-DVERSION="${PV}" -DBUILD_OUTPUT=lib" FILES_${PN} += "/usr/share/ti/openmpacc/*" - -do_configure_prepend() { - sed -i -e 's/-march=armv7-a//' ${S}/libompacc/CMakeLists.txt -} -- 2.14.1 _______________________________________________ meta-arago mailing list [email protected] http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
