From 9c62233238a72a913090c175662f4b2550a2e3dd Mon Sep 17 00:00:00 2001 From: Anuj Mittal Date: Mon, 5 Aug 2019 21:52:16 +0800 Subject: opencl-clang: move to a separate recipe Since this is managed as a separate repository, build it as a separate component instead of bundling with LLVM/clang. Signed-off-by: Anuj Mittal --- .../files/point-to-correct-llvm-tblgen.patch | 38 ++++++++++++++++++++++ .../opencl-clang/opencl-clang_8.0.0.bb | 35 ++++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/point-to-correct-llvm-tblgen.patch create mode 100644 dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_8.0.0.bb (limited to 'dynamic-layers/clang-layer/recipes-opencl') diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/point-to-correct-llvm-tblgen.patch b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/point-to-correct-llvm-tblgen.patch new file mode 100644 index 00000000..b0bfa6ee --- /dev/null +++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/point-to-correct-llvm-tblgen.patch @@ -0,0 +1,38 @@ +From 40be69a2c9460aea40beab8734684050988b9322 Mon Sep 17 00:00:00 2001 +From: Anuj Mittal +Date: Tue, 26 Mar 2019 14:11:29 +0800 +Subject: [PATCH] point to correct llvm-tblgen + +Let llvm-tblgen path be passed from recipe itself. + +Also since we're going to do the patching ourselves, no need to look for +git through cmake. + +Upstream-Status: Inappropriate [OE specific] + +--- + CMakeLists.txt | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 174133b..be409e5 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -53,7 +53,7 @@ endif(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR) + include(AddLLVM) + include(TableGen) + +-find_package(Git REQUIRED) ++#find_package(Git REQUIRED) + + if (NOT WIN32) + add_subdirectory( linux_linker ) +@@ -102,7 +102,7 @@ endif(NOT USE_PREBUILT_LLVM) + set (COMPILE_OPTIONS_TD opencl_clang_options.td) + set (COMPILE_OPTIONS_INC opencl_clang_options.inc) + +-set(LLVM_TABLEGEN_EXE "llvm-tblgen") ++#set(LLVM_TABLEGEN_EXE "llvm-tblgen") + set(LLVM_TARGET_DEFINITIONS ${COMPILE_OPTIONS_TD}) + if(USE_PREBUILT_LLVM) + set(TABLEGEN_ADDITIONAL -I ${LLVM_INCLUDE_DIRS}) diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_8.0.0.bb b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_8.0.0.bb new file mode 100644 index 00000000..6599c9b6 --- /dev/null +++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_8.0.0.bb @@ -0,0 +1,35 @@ +SUMMARY = "Common clang is a thin wrapper library around clang" +DESCRIPTION = "Common clang has OpenCL-oriented API and is capable \ + to compile OpenCL C kernels to SPIR-V modules." + +LICENSE = "NCSA" +LIC_FILES_CHKSUM = "file://LICENSE;md5=e8a15bf1416762a09ece07e44c79118c" + +SRC_URI = "git://github.com/intel/opencl-clang.git;branch=ocl-open-80;protocol=https \ + file://point-to-correct-llvm-tblgen.patch \ + " + +SRCREV = "daf5e4dd718477ae8cf89a283c653939d9182f15" + +S = "${WORKDIR}/git" + +inherit cmake +DEPENDS += "clang clang-native" + +DEPENDS_append_class-target = " opencl-clang-native" +LDFLAGS_append_class-native = " -fuse-ld=lld" + +COMPATIBLE_HOST = '(x86_64).*-linux' +COMPATIBLE_HOST_libc-musl = "null" + +EXTRA_OECMAKE += "\ + -DLLVM_TABLEGEN_EXE=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ + -DCMAKE_SKIP_RPATH=TRUE \ + " + +do_install_append_class-native() { + install -d ${D}${bindir} + install -m 0755 ${B}/linux_linker/linux_resource_linker ${D}${bindir}/ +} + +BBCLASSEXTEND = "native nativesdk" -- cgit v1.2.3-54-g00ecf