diff options
author | Naveen Saini <naveen.kumar.saini@intel.com> | 2022-11-22 16:42:16 +0800 |
---|---|---|
committer | Anuj Mittal <anuj.mittal@intel.com> | 2022-11-23 10:50:02 +0800 |
commit | 18fcf4996df4ee1b00cc4013801fb4023ba177fc (patch) | |
tree | d343c13dbf50117a332f5016d1a829da32d00d10 | |
parent | 2c58fe0867f8ca895ec43a9b8855323b7331e8d9 (diff) | |
download | meta-intel-18fcf4996df4ee1b00cc4013801fb4023ba177fc.tar.gz |
sdk: Add support for adding icx to SDK
Also export ICXCC, ICXCXX, ICXCPP, ICXLD, ICXAR in SDK environment which can
then be used to compile applications.
For example, to build an sample SYCL application using SDK:
-> Source oneAPI compiler setup script (from your installed path):
$ source /your-sdk-path/oecore-x86_64/sysroots/skylake-64-oe-linux/opt/intel/oneapi/compiler/2022.1.0/env/vars.sh
-> Build sample SYCL app (i.e simple-sycl-app.cpp):
$ $ICXCXX -fsycl simple-sycl-app.cpp -o simple-sycl-app -lsvml -lirng -limf -lintlc
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
5 files changed, 23 insertions, 0 deletions
diff --git a/recipes-core/meta/icx-environment.inc b/recipes-core/meta/icx-environment.inc new file mode 100644 index 00000000..65322a91 --- /dev/null +++ b/recipes-core/meta/icx-environment.inc | |||
@@ -0,0 +1,15 @@ | |||
1 | export ICX_LDFLAGS_OPTION = " -Wl,-dynamic-linker,/lib/ld-linux-x86-64.so.2" | ||
2 | export ICXSDK_PREFIX_OPTION = "-B ${TARGET_PREFIX}" | ||
3 | export ICXQSDK_PREFIX_OPTION = "-qgnu-prefix=${TARGET_PREFIX}" | ||
4 | |||
5 | create_sdk_files:append() { | ||
6 | script=${SDK_OUTPUT}/${SDKPATH}/environment-setup-${REAL_MULTIMACH_TARGET_SYS} | ||
7 | if ${@bb.utils.contains('ICXSDK', '1', 'true', 'false', d)}; then | ||
8 | echo 'export ICX="icx ${ICXSDK_PREFIX_OPTION} --target=${TARGET_SYS} ${TARGET_CC_ARCH} --sysroot=$SDKTARGETSYSROOT ${ICX_LDFLAGS_OPTION}"' >> $script | ||
9 | echo 'export ICXCXX="icpx ${ICXSDK_PREFIX_OPTION} --target=${TARGET_SYS} ${TARGET_CC_ARCH} --sysroot=$SDKTARGETSYSROOT ${ICX_LDFLAGS_OPTION}"' >> $script | ||
10 | echo 'export ICXCPP="icx ${ICXSDK_PREFIX_OPTION} -E --target=${TARGET_SYS} ${TARGET_CC_ARCH} --sysroot=$SDKTARGETSYSROOT ${ICX_LDFLAGS_OPTION}"' >> $script | ||
11 | echo 'export ICXLD="xild --sysroot=$SDKTARGETSYSROOT "' >> $script | ||
12 | echo 'export ICXCCLD="icx ${ICXSDK_PREFIX_OPTION} --sysroot=$SDKTARGETSYSROOT"' >> $script | ||
13 | echo 'export ICXAR="xiar ${ICXQSDK_PREFIX_OPTION}"' >> $script | ||
14 | fi | ||
15 | } | ||
diff --git a/recipes-core/meta/meta-environment-extsdk.bbappend b/recipes-core/meta/meta-environment-extsdk.bbappend new file mode 100644 index 00000000..2cff6fc4 --- /dev/null +++ b/recipes-core/meta/meta-environment-extsdk.bbappend | |||
@@ -0,0 +1,3 @@ | |||
1 | FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" | ||
2 | |||
3 | require ${@bb.utils.contains('ICXSDK', '1', 'icx-environment.inc', '', d)} | ||
diff --git a/recipes-core/meta/meta-environment.bbappend b/recipes-core/meta/meta-environment.bbappend new file mode 100644 index 00000000..2cff6fc4 --- /dev/null +++ b/recipes-core/meta/meta-environment.bbappend | |||
@@ -0,0 +1,3 @@ | |||
1 | FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" | ||
2 | |||
3 | require ${@bb.utils.contains('ICXSDK', '1', 'icx-environment.inc', '', d)} | ||
diff --git a/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend b/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend new file mode 100644 index 00000000..b5a5fdd4 --- /dev/null +++ b/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend | |||
@@ -0,0 +1 @@ | |||
RDEPENDS:${PN} += "${@bb.utils.contains('ICXSDK', '1', ' intel-oneapi-dpcpp-cpp intel-oneapi-dpcpp-cpp-dev intel-oneapi-dpcpp-cpp-runtime intel-oneapi-dpcpp-cpp-runtime-dev ', '', d)}" | |||
diff --git a/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bbappend b/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bbappend new file mode 100644 index 00000000..608ea3d3 --- /dev/null +++ b/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bbappend | |||
@@ -0,0 +1 @@ | |||
RRECOMMENDS:${PN}:append:intel-x86-common = "${@bb.utils.contains('ICXSDK', '1', ' intel-oneapi-dpcpp-cpp intel-oneapi-dpcpp-cpp-dev intel-oneapi-dpcpp-cpp-runtime intel-oneapi-dpcpp-cpp-runtime-dev ', '', d)}" | |||