diff options
Diffstat (limited to 'external/meta-openembedded/meta-oe/recipes-graphics/spir')
5 files changed, 173 insertions, 0 deletions
diff --git a/external/meta-openembedded/meta-oe/recipes-graphics/spir/files/0001-Add-install-PHONY-target-in-Makefile.patch b/external/meta-openembedded/meta-oe/recipes-graphics/spir/files/0001-Add-install-PHONY-target-in-Makefile.patch new file mode 100644 index 00000000..78598ea1 --- /dev/null +++ b/external/meta-openembedded/meta-oe/recipes-graphics/spir/files/0001-Add-install-PHONY-target-in-Makefile.patch @@ -0,0 +1,31 @@ +From 8d9870b66c3cfcf12ce7e8e013946e2a215bb722 Mon Sep 17 00:00:00 2001 +From: Ankit Navik <ankit.tarot@gmail.com> +Date: Sat, 22 Dec 2018 19:16:02 +0530 +Subject: [PATCH] Add install PHONY target in Makefile + +--- + Makefile | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 0564b65..0993372 100644 +--- a/Makefile ++++ b/Makefile +@@ -35,7 +35,13 @@ $(STATIC_LIB): $(OBJECTS) + %.o: %.cpp + $(CXX) -c -o $@ $< $(CXXFLAGS) -MMD + ++install: ++ mkdir -p $(TARGET_DIR_BIN) ++ mkdir -p $(TARGET_DIR_LIB) ++ cp $(TARGET) $(TARGET_DIR_BIN)/ ++ cp $(STATIC_LIB) $(TARGET_DIR_LIB)/ ++ + clean: + rm -f $(TARGET) $(OBJECTS) $(CLI_OBJECTS) $(STATIC_LIB) $(DEPS) + +-.PHONY: clean ++.PHONY: all install clean +-- +2.7.4 + diff --git a/external/meta-openembedded/meta-oe/recipes-graphics/spir/files/0001-Avoid-pessimizing-std-move-3124.patch b/external/meta-openembedded/meta-oe/recipes-graphics/spir/files/0001-Avoid-pessimizing-std-move-3124.patch new file mode 100644 index 00000000..9b48cdcd --- /dev/null +++ b/external/meta-openembedded/meta-oe/recipes-graphics/spir/files/0001-Avoid-pessimizing-std-move-3124.patch @@ -0,0 +1,50 @@ +From 4fffcd275b50d08b54b0411679ead98970651bad Mon Sep 17 00:00:00 2001 +From: David Neto <dneto@google.com> +Date: Fri, 27 Dec 2019 12:05:58 -0500 +Subject: [PATCH] Avoid pessimizing std::move (#3124) + +Should fix a warning + +Upstream-Status: Backport [https://github.com/KhronosGroup/SPIRV-Tools/commit/8aa423930db37e37086665efcc55944d577c06e5] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + test/opt/pass_fixture.h | 9 +++------ + 1 file changed, 3 insertions(+), 6 deletions(-) + +diff --git a/test/opt/pass_fixture.h b/test/opt/pass_fixture.h +index 53fb206f..64c089d8 100644 +--- a/test/opt/pass_fixture.h ++++ b/test/opt/pass_fixture.h +@@ -60,8 +60,7 @@ class PassTest : public TestT { + // from pass Process() function. + std::tuple<std::vector<uint32_t>, Pass::Status> OptimizeToBinary( + Pass* pass, const std::string& original, bool skip_nop) { +- context_ = +- std::move(BuildModule(env_, consumer_, original, assemble_options_)); ++ context_ = BuildModule(env_, consumer_, original, assemble_options_); + EXPECT_NE(nullptr, context()) << "Assembling failed for shader:\n" + << original << std::endl; + if (!context()) { +@@ -197,8 +196,7 @@ class PassTest : public TestT { + // messages. + template <typename PassT, typename... Args> + void SinglePassRunAndFail(const std::string& original, Args&&... args) { +- context_ = +- std::move(BuildModule(env_, consumer_, original, assemble_options_)); ++ context_ = BuildModule(env_, consumer_, original, assemble_options_); + EXPECT_NE(nullptr, context()) << "Assembling failed for shader:\n" + << original << std::endl; + std::ostringstream errs; +@@ -235,8 +233,7 @@ class PassTest : public TestT { + void RunAndCheck(const std::string& original, const std::string& expected) { + assert(manager_->NumPasses()); + +- context_ = +- std::move(BuildModule(env_, nullptr, original, assemble_options_)); ++ context_ = BuildModule(env_, nullptr, original, assemble_options_); + ASSERT_NE(nullptr, context()); + + context()->set_preserve_bindings(OptimizerOptions()->preserve_bindings_); +-- +2.24.1 + diff --git a/external/meta-openembedded/meta-oe/recipes-graphics/spir/files/0001-Respect-CMAKE_INSTALL_LIBDIR-in-installed-CMake-file.patch b/external/meta-openembedded/meta-oe/recipes-graphics/spir/files/0001-Respect-CMAKE_INSTALL_LIBDIR-in-installed-CMake-file.patch new file mode 100644 index 00000000..5d37da8f --- /dev/null +++ b/external/meta-openembedded/meta-oe/recipes-graphics/spir/files/0001-Respect-CMAKE_INSTALL_LIBDIR-in-installed-CMake-file.patch @@ -0,0 +1,35 @@ +From caf59c46ea5dc49e4dbf756c642b03e52c1b5468 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 20 Dec 2019 07:02:24 -0800 +Subject: [PATCH] Respect CMAKE_INSTALL_LIBDIR in installed CMake files + +Upstream-Status: Submitted [https://github.com/google/effcee/pull/36] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + CMakeLists.txt | 1 + + effcee/CMakeLists.txt | 4 ++-- + 2 files changed, 3 insertions(+), 2 deletions(-) + +--- a/external/effcee/CMakeLists.txt ++++ b/external/effcee/CMakeLists.txt +@@ -27,6 +27,7 @@ endif() + + include(cmake/setup_build.cmake) + include(cmake/utils.cmake) ++include(GNUInstallDirs) + + add_subdirectory(third_party) + add_subdirectory(effcee) +--- a/external/effcee/effcee/CMakeLists.txt ++++ b/external/effcee/effcee/CMakeLists.txt +@@ -14,8 +14,8 @@ install( + DESTINATION + include/effcee) + install(TARGETS effcee +- LIBRARY DESTINATION lib +- ARCHIVE DESTINATION lib) ++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) + + if(EFFCEE_BUILD_TESTING) + add_executable(effcee-test diff --git a/external/meta-openembedded/meta-oe/recipes-graphics/spir/spirv-shader-generator_git.bb b/external/meta-openembedded/meta-oe/recipes-graphics/spir/spirv-shader-generator_git.bb new file mode 100644 index 00000000..b787972d --- /dev/null +++ b/external/meta-openembedded/meta-oe/recipes-graphics/spir/spirv-shader-generator_git.bb @@ -0,0 +1,22 @@ +SUMMARY = "SPIRV-Cross is a tool designed for parsing and converting SPIR-V \ +to other shader languages" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" +SECTION = "graphics" + +S = "${WORKDIR}/git" +SRCREV = "ed16b3e69985feaf565efbecea70a1cc2fca2a58" +SRC_URI = "git://github.com/KhronosGroup/SPIRV-Cross.git \ + file://0001-Add-install-PHONY-target-in-Makefile.patch \ +" + +EXTRA_OEMAKE += 'TARGET_DIR_LIB="${D}${libdir}"' +EXTRA_OEMAKE += 'TARGET_DIR_BIN="${D}${bindir}"' + +do_compile () { + cd ${S} && oe_runmake +} + +do_install () { + cd ${S} && oe_runmake install +} diff --git a/external/meta-openembedded/meta-oe/recipes-graphics/spir/spirv-tools_git.bb b/external/meta-openembedded/meta-oe/recipes-graphics/spir/spirv-tools_git.bb new file mode 100644 index 00000000..8e8388e8 --- /dev/null +++ b/external/meta-openembedded/meta-oe/recipes-graphics/spir/spirv-tools_git.bb @@ -0,0 +1,35 @@ +SUMMARY = "The SPIR-V Tools project provides an API and commands for \ +processing SPIR-V modules" +DESCRIPTION = "The project includes an assembler, binary module parser, \ +disassembler, validator, and optimizer for SPIR-V." +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" +SECTION = "graphics" + +S = "${WORKDIR}/git" +DEST_DIR = "${S}/external" +SRC_URI = "git://github.com/KhronosGroup/SPIRV-Tools.git;name=spirv-tools \ + git://github.com/KhronosGroup/SPIRV-Headers.git;name=spirv-headers;destsuffix=${DEST_DIR}/spirv-headers \ + git://github.com/google/effcee.git;name=effcee;destsuffix=${DEST_DIR}/effcee \ + git://github.com/google/re2.git;name=re2;destsuffix=${DEST_DIR}/re2 \ + git://github.com/google/googletest.git;name=googletest;destsuffix=${DEST_DIR}/googletest \ + file://0001-Respect-CMAKE_INSTALL_LIBDIR-in-installed-CMake-file.patch \ + file://0001-Avoid-pessimizing-std-move-3124.patch \ +" +SRCREV_spirv-tools = "c413b982c316b14e784f50d941814fc737b55b4a" +SRCREV_spirv-headers = "af64a9e826bf5bb5fcd2434dd71be1e41e922563" +SRCREV_effcee = "cd25ec17e9382f99a895b9ef53ff3c277464d07d" +SRCREV_re2 = "5bd613749fd530b576b890283bfb6bc6ea6246cb" +SRCREV_googletest = "f2fb48c3b3d79a75a88a99fba6576b25d42ec528" + +inherit cmake python3native + +EXTRA_OECMAKE += "-DSPIRV_WERROR=OFF" + +do_install_append() { + install -d ${D}/${includedir}/spirv + install -m 0644 ${DEST_DIR}/spirv-headers/include/spirv/1.2/* ${D}/${includedir}/spirv +} + +FILES_SOLIBSDEV = "" +FILES_${PN} += "${libdir}/*.so" |