From e56ace026b2e1b35274cbed0ff0fb04e83a5532b Mon Sep 17 00:00:00 2001 From: Anuj Mittal Date: Tue, 27 Feb 2024 22:24:07 +0800 Subject: intel-graphics-compiler: upgrade 1.0.14062.11 -> 1.0.15985.7 The instrinsics Python scripts now need mako module as well. Use the native Python to ensure builds are not dependent on what is installed on the host. Signed-off-by: Anuj Mittal --- ...iF-CMakeLists.txt-remove-opt-from-DEPENDS.patch | 30 +++++---- .../igc/intel-graphics-compiler_1.0.14062.11.bb | 76 ---------------------- .../igc/intel-graphics-compiler_1.0.15985.7.bb | 75 +++++++++++++++++++++ 3 files changed, 91 insertions(+), 90 deletions(-) delete mode 100644 dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.14062.11.bb create mode 100644 dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.15985.7.bb diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch index 9ec48819..377081fd 100644 --- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch +++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch @@ -1,4 +1,4 @@ -From 9abd198b13d4764ee2e34b385ac20fc11a56d8f3 Mon Sep 17 00:00:00 2001 +From 3d71670f8ad5b54d434c2f5f71713bb1d5433ae4 Mon Sep 17 00:00:00 2001 From: Anuj Mittal Date: Tue, 12 Oct 2021 23:46:42 +0800 Subject: [PATCH] BiF/CMakeLists.txt: remove opt from DEPENDS @@ -13,21 +13,23 @@ using prebuilt binaries. Upstream-Status: Inappropriate Signed-off-by: Anuj Mittal - --- - IGC/VectorCompiler/lib/BiF/CMakeLists.txt | 2 +- + IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/IGC/VectorCompiler/lib/BiF/CMakeLists.txt b/IGC/VectorCompiler/lib/BiF/CMakeLists.txt -index c439f334a..756cc84c3 100644 ---- a/IGC/VectorCompiler/lib/BiF/CMakeLists.txt -+++ b/IGC/VectorCompiler/lib/BiF/CMakeLists.txt -@@ -112,7 +112,7 @@ function(vc_build_bif RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE) - add_custom_command(OUTPUT ${BIF_OPT_BC_PATH} +diff --git a/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake b/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake +index d20d7f887..882e09fea 100644 +--- a/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake ++++ b/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake +@@ -109,7 +109,7 @@ function(vc_build_bif TARGET RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE) + COMMENT "vc_build_bif: Translating CMCL builtins: ${BIF_CLANG_BC_NAME_FINAL} -> ${BIF_OPT_BC_NAME}" + COMMAND CMCLTranslatorTool -o ${BIF_CMCL_BC_NAME} ${BIF_CLANG_BC_NAME_FINAL} COMMAND ${LLVM_OPT_EXE} ${IGC_LLVM_DEPENDENT_OPT_FLAGS} --O2 -o ${BIF_OPT_BC_NAME} ${BIF_CMCL_BC_NAME} - COMMENT "vc_build_bif: running opt with O2: ${BIF_CMCL_BC_NAME} -> ${BIF_OPT_BC_NAME}" -- DEPENDS opt ${BIF_CMCL_BC_PATH}) -+ DEPENDS ${BIF_CMCL_BC_PATH}) +- DEPENDS CMCLTranslatorTool ${LLVM_OPT_EXE} ${BIF_CLANG_BC_PATH_FINAL} ++ DEPENDS CMCLTranslatorTool ${BIF_CLANG_BC_PATH_FINAL} + BYPRODUCTS ${BIF_OPT_BC_PATH} + SOURCES ${CMCL_SRC_PATH}) set(${RES_FILE} ${BIF_OPT_BC_NAME} PARENT_SCOPE) - endfunction() - +-- +2.43.2 + diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.14062.11.bb b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.14062.11.bb deleted file mode 100644 index 6885fc00..00000000 --- a/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.14062.11.bb +++ /dev/null @@ -1,76 +0,0 @@ -SUMMARY = "The Intel(R) Graphics Compiler for OpenCL(TM)" -DESCRIPTION = "The Intel(R) Graphics Compiler for OpenCL(TM) is an \ -llvm based compiler for OpenCL(TM) targeting Intel Gen graphics \ -hardware architecture." - -LICENSE = "MIT & Apache-2.0" -LIC_FILES_CHKSUM = "file://IGC/BiFModule/Implementation/ExternalLibraries/libclc/LICENSE.TXT;md5=311cfc1a5b54bab8ed34a0b5fba4373e \ - file://LICENSE.md;md5=488d74376edf2765f6e78d271543dde3 \ - file://NOTICES.txt;md5=7f4fbc3eb2c34807465e63b1ec3c9d1a" - -SRC_URI = "git://github.com/intel/intel-graphics-compiler.git;protocol=https;name=igc;branch=releases/igc-1.0.14062 \ - git://github.com/intel/vc-intrinsics.git;protocol=https;destsuffix=git/vc-intrinsics;name=vc;nobranch=1 \ - git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;destsuffix=git/SPIRV-Tools;name=spirv-tools;branch=main \ - git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;destsuffix=git/SPIRV-Headers;name=spirv-headers;branch=main \ - file://0003-Improve-Reproducibility-for-src-package.patch \ - file://0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch \ - file://0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch \ - " - -SRC_URI:append:class-native = " file://0001-fix-tblgen.patch" - -SRCREV_igc = "1993c4f49299fb015c3b3b080cf70dd8e6d5eef1" -SRCREV_vc = "cd3aecca329ecd41deab45e8a715fa555fc61bac" -SRCREV_spirv-tools = "63de608daeb7e91fbea6d7477a50debe7cac57ce" -SRCREV_spirv-headers = "d13b52222c39a7e9a401b44646f0ca3a640fbd47" - -SRCREV_FORMAT = "igc_vc_spirv-tools_spirv-headers" - -# Used to replace with relative path in reproducibility patch -export B - -S = "${WORKDIR}/git" - -inherit cmake pkgconfig qemu - -CXXFLAGS:append = " -Wno-error=nonnull" - -COMPATIBLE_HOST = '(x86_64).*-linux' -COMPATIBLE_HOST:libc-musl = "null" - -DEPENDS += " flex-native bison-native clang clang-cross-x86_64 opencl-clang qemu-native" - -RDEPENDS:${PN} += "opencl-clang" - -PACKAGECONFIG ??= "vc" -PACKAGECONFIG[vc] = "-DIGC_BUILD__VC_ENABLED=ON -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR=ON -DIGC_OPTION__SPIRV_TRANSLATOR_MODE=Prebuilds,-DIGC_BUILD__VC_ENABLED=OFF," - -EXTRA_OECMAKE = " \ - -DIGC_OPTION__LLVM_PREFERRED_VERSION=${LLVMVERSION} \ - -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ - -DVC_INTRINSICS_SRC="${S}/vc-intrinsics" \ - -DIGC_OPTION__LLVM_MODE=Prebuilds \ - -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ - -DLLVM_LINK_EXE=${STAGING_BINDIR_NATIVE}/llvm-link \ - -DCLANG_EXE=${STAGING_BINDIR_NATIVE}/clang \ - -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \ - " - -do_configure:prepend:class-target () { - # Write out a qemu wrapper that will be used by cmake. - qemu_binary="${@qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST'), [d.expand('${STAGING_DIR_HOST}${libdir}'),d.expand('${STAGING_DIR_HOST}${base_libdir}')])}" - cat > ${WORKDIR}/qemuwrapper << EOF -#!/bin/sh -$qemu_binary "\$@" -EOF - chmod +x ${WORKDIR}/qemuwrapper -} - -UPSTREAM_CHECK_GITTAGREGEX = "^igc-(?P(?!19\..*)\d+(\.\d+)+)$" - -FILES:${PN} += " \ - ${libdir}/igc/NOTICES.txt \ - " - -# libigc.so contains buildpaths -INSANE_SKIP:${PN} += "buildpaths" diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.15985.7.bb b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.15985.7.bb new file mode 100644 index 00000000..96d828b6 --- /dev/null +++ b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.15985.7.bb @@ -0,0 +1,75 @@ +SUMMARY = "The Intel(R) Graphics Compiler for OpenCL(TM)" +DESCRIPTION = "The Intel(R) Graphics Compiler for OpenCL(TM) is an \ +llvm based compiler for OpenCL(TM) targeting Intel Gen graphics \ +hardware architecture." + +LICENSE = "MIT & Apache-2.0" +LIC_FILES_CHKSUM = "file://IGC/BiFModule/Implementation/ExternalLibraries/libclc/LICENSE.TXT;md5=311cfc1a5b54bab8ed34a0b5fba4373e \ + file://LICENSE.md;md5=488d74376edf2765f6e78d271543dde3 \ + file://NOTICES.txt;md5=7f4fbc3eb2c34807465e63b1ec3c9d1a" + +SRC_URI = "git://github.com/intel/intel-graphics-compiler.git;protocol=https;name=igc;branch=releases/igc-1.0.15985 \ + git://github.com/intel/vc-intrinsics.git;protocol=https;destsuffix=git/vc-intrinsics;name=vc;nobranch=1 \ + git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;destsuffix=git/SPIRV-Tools;name=spirv-tools;branch=main \ + git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;destsuffix=git/SPIRV-Headers;name=spirv-headers;branch=main \ + file://0003-Improve-Reproducibility-for-src-package.patch \ + file://0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch \ + file://0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch \ + " + +SRC_URI:append:class-native = " file://0001-fix-tblgen.patch" + +SRCREV_igc = "6cc111d262e1c3abcf4bc6b6d8a589ebf821a5c0" +SRCREV_vc = "da892e1982b6c25b9a133f85b4ac97142d8a3def" +SRCREV_spirv-tools = "f0cc85efdbbe3a46eae90e0f915dc1509836d0fc" +SRCREV_spirv-headers = "cca08c63cefa129d082abca0302adcb81610b465" + +SRCREV_FORMAT = "igc_vc_spirv-tools_spirv-headers" + +# Used to replace with relative path in reproducibility patch +export B + +S = "${WORKDIR}/git" + +inherit cmake pkgconfig qemu python3native + +CXXFLAGS:append = " -Wno-error=nonnull" + +COMPATIBLE_HOST = '(x86_64).*-linux' +COMPATIBLE_HOST:libc-musl = "null" + +DEPENDS += " flex-native bison-native clang clang-cross-x86_64 opencl-clang qemu-native python3-mako-native" + +RDEPENDS:${PN} += "opencl-clang" + +PACKAGECONFIG ??= "vc" +PACKAGECONFIG[vc] = "-DIGC_BUILD__VC_ENABLED=ON -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR=ON -DIGC_OPTION__SPIRV_TRANSLATOR_MODE=Prebuilds,-DIGC_BUILD__VC_ENABLED=OFF," + +EXTRA_OECMAKE = " \ + -DIGC_OPTION__LLVM_PREFERRED_VERSION=${LLVMVERSION} \ + -DVC_INTRINSICS_SRC="${S}/vc-intrinsics" \ + -DIGC_OPTION__LLVM_MODE=Prebuilds \ + -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ + -DLLVM_LINK_EXE=${STAGING_BINDIR_NATIVE}/llvm-link \ + -DCLANG_EXE=${STAGING_BINDIR_NATIVE}/clang \ + -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \ + " + +do_configure:prepend:class-target () { + # Write out a qemu wrapper that will be used by cmake. + qemu_binary="${@qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST'), [d.expand('${STAGING_DIR_HOST}${libdir}'),d.expand('${STAGING_DIR_HOST}${base_libdir}')])}" + cat > ${WORKDIR}/qemuwrapper << EOF +#!/bin/sh +$qemu_binary "\$@" +EOF + chmod +x ${WORKDIR}/qemuwrapper +} + +UPSTREAM_CHECK_GITTAGREGEX = "^igc-(?P(?!19\..*)\d+(\.\d+)+)$" + +FILES:${PN} += " \ + ${libdir}/igc/NOTICES.txt \ + " + +# libigc.so contains buildpaths +INSANE_SKIP:${PN} += "buildpaths" -- cgit v1.2.3-54-g00ecf