180 lines
7.7 KiB
Diff
180 lines
7.7 KiB
Diff
|
diff -up glslang-sdk-1.3.231.1/CMakeLists.txt.dma glslang-sdk-1.3.231.1/CMakeLists.txt
|
||
|
--- glslang-sdk-1.3.231.1/CMakeLists.txt.dma 2022-10-14 03:29:59.000000000 +1000
|
||
|
+++ glslang-sdk-1.3.231.1/CMakeLists.txt 2022-11-09 14:47:04.538772188 +1000
|
||
|
@@ -129,6 +129,13 @@ if(USE_CCACHE)
|
||
|
endif()
|
||
|
endif()
|
||
|
|
||
|
+# using pkg-config to configure include paths and link libraries
|
||
|
+include(FindPkgConfig)
|
||
|
+pkg_check_modules(SPIRV_TOOLS REQUIRED SPIRV-Tools>=2019.2.1)
|
||
|
+if(BUILD_SHARED_LIBS)
|
||
|
+ pkg_check_modules(SPIRV_TOOLS_SHARED REQUIRED SPIRV-Tools-shared>=2019.2.1)
|
||
|
+endif(BUILD_SHARED_LIBS)
|
||
|
+
|
||
|
if(ENABLE_CTEST)
|
||
|
include(CTest)
|
||
|
endif()
|
||
|
@@ -319,11 +326,7 @@ if(BUILD_EXTERNAL AND IS_DIRECTORY ${CMA
|
||
|
add_subdirectory(External)
|
||
|
endif()
|
||
|
|
||
|
-if(NOT TARGET SPIRV-Tools-opt)
|
||
|
- set(ENABLE_OPT OFF)
|
||
|
-endif()
|
||
|
-
|
||
|
-if(ENABLE_OPT)
|
||
|
+if(${SPIRV_TOOLS_FOUND} EQUAL 1)
|
||
|
message(STATUS "optimizer enabled")
|
||
|
add_definitions(-DENABLE_OPT=1)
|
||
|
else()
|
||
|
diff -up glslang-sdk-1.3.231.1/External/CMakeLists.txt.dma glslang-sdk-1.3.231.1/External/CMakeLists.txt
|
||
|
--- glslang-sdk-1.3.231.1/External/CMakeLists.txt.dma 2022-10-14 03:29:59.000000000 +1000
|
||
|
+++ glslang-sdk-1.3.231.1/External/CMakeLists.txt 2022-11-09 14:47:04.539772205 +1000
|
||
|
@@ -68,10 +68,3 @@ if(BUILD_TESTING)
|
||
|
endif()
|
||
|
endif()
|
||
|
|
||
|
-if(ENABLE_OPT AND NOT TARGET SPIRV-Tools-opt)
|
||
|
- if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/spirv-tools)
|
||
|
- set(SPIRV_SKIP_TESTS ON CACHE BOOL "Skip building SPIRV-Tools tests")
|
||
|
- add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/spirv-tools spirv-tools)
|
||
|
- endif()
|
||
|
-endif()
|
||
|
-
|
||
|
diff -up glslang-sdk-1.3.231.1/glslang/CMakeLists.txt.dma glslang-sdk-1.3.231.1/glslang/CMakeLists.txt
|
||
|
--- glslang-sdk-1.3.231.1/glslang/CMakeLists.txt.dma 2022-11-09 14:47:04.540772224 +1000
|
||
|
+++ glslang-sdk-1.3.231.1/glslang/CMakeLists.txt 2022-11-09 14:48:06.844895906 +1000
|
||
|
@@ -221,6 +221,8 @@ if(ENABLE_GLSLANG_INSTALL)
|
||
|
add_library(GenericCodeGen ALIAS glslang::GenericCodeGen)
|
||
|
endif()
|
||
|
")
|
||
|
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/glslang.pc.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/glslang.pc @ONLY)
|
||
|
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/glslang.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
||
|
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/glslangTargets.cmake" DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake)
|
||
|
endif()
|
||
|
|
||
|
diff -up glslang-sdk-1.3.231.1/glslang/glslang.pc.cmake.in.dma glslang-sdk-1.3.231.1/glslang/glslang.pc.cmake.in
|
||
|
--- glslang-sdk-1.3.231.1/glslang/glslang.pc.cmake.in.dma 2022-11-09 14:47:04.541772242 +1000
|
||
|
+++ glslang-sdk-1.3.231.1/glslang/glslang.pc.cmake.in 2022-11-09 14:47:04.541772242 +1000
|
||
|
@@ -0,0 +1,11 @@
|
||
|
+ prefix=@CMAKE_INSTALL_PREFIX@
|
||
|
+ exec_prefix=@CMAKE_INSTALL_PREFIX@
|
||
|
+ libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
|
||
|
+ includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
|
||
|
+
|
||
|
+ Name: @PROJECT_NAME@
|
||
|
+ Description: OpenGL and OpenGL ES shader front end and validator
|
||
|
+ Requires:
|
||
|
+ Version: @VERSION@
|
||
|
+ Libs: -L${libdir} -lglslang -lOSDependent -lHLSL -lOGLCompiler -lSPVRemapper
|
||
|
+ Cflags: -I${includedir}
|
||
|
\ No newline at end of file
|
||
|
diff -up glslang-sdk-1.3.231.1/SPIRV/CMakeLists.txt.dma glslang-sdk-1.3.231.1/SPIRV/CMakeLists.txt
|
||
|
--- glslang-sdk-1.3.231.1/SPIRV/CMakeLists.txt.dma 2022-10-14 03:29:59.000000000 +1000
|
||
|
+++ glslang-sdk-1.3.231.1/SPIRV/CMakeLists.txt 2022-11-09 14:47:04.542772260 +1000
|
||
|
@@ -78,6 +78,10 @@ target_include_directories(SPIRV PUBLIC
|
||
|
|
||
|
glslang_add_build_info_dependency(SPIRV)
|
||
|
|
||
|
+
|
||
|
+set(SPIRV_NAME spirv)
|
||
|
+set(SPIRV_VERSION 1.3)
|
||
|
+
|
||
|
if (ENABLE_SPVREMAPPER)
|
||
|
add_library(SPVRemapper ${LIB_TYPE} ${SPVREMAP_SOURCES} ${SPVREMAP_HEADERS})
|
||
|
set_property(TARGET SPVRemapper PROPERTY FOLDER glslang)
|
||
|
@@ -91,15 +95,21 @@ if(WIN32 AND BUILD_SHARED_LIBS)
|
||
|
endif()
|
||
|
endif()
|
||
|
|
||
|
+target_include_directories(SPIRV PUBLIC ${SPIRV_TOOLS_INCLUDE_DIRS})
|
||
|
+target_compile_options(SPIRV PUBLIC ${SPIRV_TOOLS_CFLAGS_OTHER})
|
||
|
+target_link_libraries(SPIRV ${SPIRV_TOOLS_LIBRARIES})
|
||
|
+if(BUILD_SHARED_LIBS)
|
||
|
+ target_include_directories(SPIRV PUBLIC ${SPIRV_TOOLS_SHARED_INCLUDE_DIRS})
|
||
|
+ target_compile_options(SPIRV PUBLIC ${SPIRV_TOOLS_SHARED_CFLAGS_OTHER})
|
||
|
+ target_link_libraries(SPIRV ${SPIRV_TOOLS_SHARED_LIBRARIES})
|
||
|
+endif(BUILD_SHARED_LIBS)
|
||
|
+
|
||
|
if(ENABLE_OPT)
|
||
|
target_include_directories(SPIRV
|
||
|
PRIVATE ${spirv-tools_SOURCE_DIR}/include
|
||
|
PRIVATE ${spirv-tools_SOURCE_DIR}/source
|
||
|
)
|
||
|
- target_link_libraries(SPIRV PRIVATE MachineIndependent SPIRV-Tools-opt)
|
||
|
- target_include_directories(SPIRV PUBLIC
|
||
|
- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../External>
|
||
|
- $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/External>)
|
||
|
+ target_link_libraries(SPIRV glslang)
|
||
|
else()
|
||
|
target_link_libraries(SPIRV PRIVATE MachineIndependent)
|
||
|
endif()
|
||
|
@@ -140,6 +150,9 @@ if(ENABLE_GLSLANG_INSTALL)
|
||
|
add_library(SPIRV ALIAS glslang::SPIRV)
|
||
|
")
|
||
|
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/SPIRVTargets.cmake" DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake)
|
||
|
-
|
||
|
+ # spirv.pc Configuration
|
||
|
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/spirv.pc.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/spirv.pc @ONLY)
|
||
|
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/spirv.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
||
|
+
|
||
|
install(FILES ${HEADERS} ${SPVREMAP_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/glslang/SPIRV/)
|
||
|
endif()
|
||
|
diff -up glslang-sdk-1.3.231.1/SPIRV/spirv.pc.cmake.in.dma glslang-sdk-1.3.231.1/SPIRV/spirv.pc.cmake.in
|
||
|
--- glslang-sdk-1.3.231.1/SPIRV/spirv.pc.cmake.in.dma 2022-11-09 14:47:04.543772278 +1000
|
||
|
+++ glslang-sdk-1.3.231.1/SPIRV/spirv.pc.cmake.in 2022-11-09 14:47:04.543772278 +1000
|
||
|
@@ -0,0 +1,11 @@
|
||
|
+ prefix=@CMAKE_INSTALL_PREFIX@
|
||
|
+ exec_prefix=@CMAKE_INSTALL_PREFIX@
|
||
|
+ libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
|
||
|
+ includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
|
||
|
+
|
||
|
+ Name: @SPIRV_NAME@
|
||
|
+ Description: SPIR-V is a binary intermediate language for representing graphical-shader stages and compute kernels for multiple Khronos APIs, including OpenCL, OpenGL, and Vulkan
|
||
|
+ Requires:
|
||
|
+ Version: @SPIRV_VERSION@
|
||
|
+ Libs: -L${libdir} -lSPIRV
|
||
|
+ Cflags: -I${includedir}
|
||
|
\ No newline at end of file
|
||
|
diff -up glslang-sdk-1.3.231.1/SPIRV/SpvTools.cpp.dma glslang-sdk-1.3.231.1/SPIRV/SpvTools.cpp
|
||
|
--- glslang-sdk-1.3.231.1/SPIRV/SpvTools.cpp.dma 2022-10-14 03:29:59.000000000 +1000
|
||
|
+++ glslang-sdk-1.3.231.1/SPIRV/SpvTools.cpp 2022-11-09 14:47:04.544772296 +1000
|
||
|
@@ -43,7 +43,7 @@
|
||
|
#include <iostream>
|
||
|
|
||
|
#include "SpvTools.h"
|
||
|
-#include "spirv-tools/optimizer.hpp"
|
||
|
+#include <spirv-tools/optimizer.hpp>
|
||
|
|
||
|
namespace glslang {
|
||
|
|
||
|
diff -up glslang-sdk-1.3.231.1/StandAlone/CMakeLists.txt.dma glslang-sdk-1.3.231.1/StandAlone/CMakeLists.txt
|
||
|
--- glslang-sdk-1.3.231.1/StandAlone/CMakeLists.txt.dma 2022-11-09 14:46:48.996491875 +1000
|
||
|
+++ glslang-sdk-1.3.231.1/StandAlone/CMakeLists.txt 2022-11-09 14:47:04.545772314 +1000
|
||
|
@@ -72,6 +72,14 @@ if(ENABLE_SPVREMAPPER)
|
||
|
set(LIBRARIES ${LIBRARIES} SPVRemapper)
|
||
|
endif()
|
||
|
|
||
|
+if(BUILD_SHARED_LIBS)
|
||
|
+ set(LIBRARIES ${LIBRARIES} ${SPIRV_TOOLS_SHARED_LIBRARIES})
|
||
|
+ target_include_directories(glslangValidator PUBLIC ${SPIRV_TOOLS_SHARED_INCLUDE_DIRS})
|
||
|
+else()
|
||
|
+ set(LIBRARIES ${LIBRARIES} ${SPIRV_TOOLS_LIBRARIES})
|
||
|
+ target_include_directories(glslangValidator PUBLIC ${SPIRV_TOOLS_INCLUDE_DIRS})
|
||
|
+endif(BUILD_SHARED_LIBS)
|
||
|
+
|
||
|
if(WIN32)
|
||
|
set(LIBRARIES ${LIBRARIES} psapi)
|
||
|
elseif(UNIX)
|
||
|
@@ -81,9 +89,6 @@ elseif(UNIX)
|
||
|
endif()
|
||
|
|
||
|
target_link_libraries(glslangValidator ${LIBRARIES})
|
||
|
-target_include_directories(glslangValidator PUBLIC
|
||
|
- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../External>
|
||
|
- $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/External>)
|
||
|
|
||
|
if(ENABLE_OPT)
|
||
|
target_include_directories(glslangValidator
|