mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-26 20:10:35 -09:00
package/spirv-llvm-translator: add target variant to provide LLVMSPIRVLib
This target version is needed for Rusticl which is an LLVM based OpenCL framework[1]. Rusticl allow programs to compile OpenCL C/C++ code at runtime with Clang. Clang generates LLVM IR which is translated into SPIR-V by spirv-llvm-translator. Finally, mesa can use its internal tools to manage SPIR-V. [1]: https://docs.mesa3d.org/rusticl.html Signed-off-by: Romain Naour <romain.naour@smile.fr> Signed-off-by: Sebastian Weyer <sebastian.weyer@smile.fr> Signed-off-by: Antoine Coutant <antoine.coutant@smile.fr> Signed-off-by: Bernd Kuhls <bernd@kuhls.net> Signed-off-by: Julien Olivain <ju.o@free.fr>
This commit is contained in:
committed by
Julien Olivain
parent
8b5dd49c5b
commit
58f9c7b83c
@@ -332,6 +332,7 @@ comment "Graphic applications"
|
||||
source "package/pngquant/Config.in"
|
||||
source "package/qt5cinex/Config.in"
|
||||
source "package/rrdtool/Config.in"
|
||||
source "package/spirv-llvm-translator/Config.in"
|
||||
source "package/spirv-tools/Config.in"
|
||||
source "package/stellarium/Config.in"
|
||||
source "package/sway/Config.in"
|
||||
|
||||
22
package/spirv-llvm-translator/Config.in
Normal file
22
package/spirv-llvm-translator/Config.in
Normal file
@@ -0,0 +1,22 @@
|
||||
config BR2_PACKAGE_SPIRV_LLVM_TRANSLATOR
|
||||
bool "spirv-translator"
|
||||
depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
depends on !BR2_STATIC_LIBS
|
||||
depends on BR2_HOST_GCC_AT_LEAST_7 # host-llvm
|
||||
select BR2_PACKAGE_LLVM
|
||||
select BR2_PACKAGE_SPIRV_HEADERS
|
||||
select BR2_PACKAGE_ZLIB
|
||||
help
|
||||
LLVM/SPIR-V Bi-Directional Translator is a library and tool
|
||||
for translation between LLVM IR and SPIR-V.
|
||||
|
||||
https://github.com/khronosGroup/SPIRV-LLVM-Translator
|
||||
|
||||
comment "spirv-translator needs a toolchain w/ threads, C++, gcc >= 7, dynamic library, host gcc >= 7"
|
||||
depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS
|
||||
depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \
|
||||
!BR2_TOOLCHAIN_GCC_AT_LEAST_7 \
|
||||
|| BR2_STATIC_LIBS || !BR2_HOST_GCC_AT_LEAST_7
|
||||
@@ -19,4 +19,14 @@ HOST_SPIRV_LLVM_TRANSLATOR_CONF_OPTS = \
|
||||
-DLLVM_EXTERNAL_PROJECTS="SPIRV-Headers" \
|
||||
-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=$(HOST_DIR)/include
|
||||
|
||||
SPIRV_LLVM_TRANSLATOR_INSTALL_STAGING = YES
|
||||
SPIRV_LLVM_TRANSLATOR_DEPENDENCIES = host-clang host-llvm llvm spirv-headers
|
||||
SPIRV_LLVM_TRANSLATOR_CONF_OPTS = \
|
||||
-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=$(STAGING_DIR)/usr \
|
||||
-DLLVM_BUILD_TOOLS=ON \
|
||||
-DLLVM_DIR=$(STAGING_DIR)/lib/cmake/llvm \
|
||||
-DLLVM_SPIRV_BUILD_EXTERNAL=YES \
|
||||
-DLLVM_SPIRV_INCLUDE_TESTS=OFF
|
||||
|
||||
$(eval $(cmake-package))
|
||||
$(eval $(host-cmake-package))
|
||||
|
||||
Reference in New Issue
Block a user