glslang/0001-pkg-config-compatibility.patch
DistroBaker 91ec2d16f0 Merged update from upstream sources
This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.

Source: https://src.fedoraproject.org/rpms/glslang.git#c3da8941704bf85437cfd5edc8fa8592952a8499
2020-11-03 20:59:52 +00:00

179 lines
8.4 KiB
Diff

diff -up glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/CMakeLists.txt.dma glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/CMakeLists.txt
--- glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/CMakeLists.txt.dma 2020-11-03 14:22:55.000000000 +1000
+++ glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/CMakeLists.txt 2020-11-04 06:32:09.030326238 +1000
@@ -118,6 +118,13 @@ if(USE_CCACHE)
endif(CCACHE_FOUND)
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()
@@ -320,11 +327,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-d550bebee919179c9e332a0ab28a67f8fe3ca239/External/CMakeLists.txt.dma glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/External/CMakeLists.txt
--- glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/External/CMakeLists.txt.dma 2020-11-03 14:22:55.000000000 +1000
+++ glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/External/CMakeLists.txt 2020-11-04 06:32:09.030326238 +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-d550bebee919179c9e332a0ab28a67f8fe3ca239/glslang/CMakeLists.txt.dma glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/glslang/CMakeLists.txt
--- glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/glslang/CMakeLists.txt.dma 2020-11-03 14:22:55.000000000 +1000
+++ glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/glslang/CMakeLists.txt 2020-11-04 06:32:09.031326265 +1000
@@ -209,6 +209,8 @@ if(ENABLE_GLSLANG_INSTALL)
EXPORT glslangTargets
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
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(EXPORT glslangTargets DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake)
diff -up glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/glslang/glslang.pc.cmake.in.dma glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/glslang/glslang.pc.cmake.in
--- glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/glslang/glslang.pc.cmake.in.dma 2020-11-04 06:32:09.031326265 +1000
+++ glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/glslang/glslang.pc.cmake.in 2020-11-04 06:32:09.031326265 +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-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/CMakeLists.txt.dma glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/CMakeLists.txt
--- glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/CMakeLists.txt.dma 2020-11-03 14:22:55.000000000 +1000
+++ glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/CMakeLists.txt 2020-11-04 06:32:09.031326265 +1000
@@ -77,6 +77,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)
@@ -90,15 +94,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(ENABLE_OPT)
@@ -133,6 +143,9 @@ if(ENABLE_GLSLANG_INSTALL)
endif()
install(EXPORT SPIRVTargets 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(ENABLE_GLSLANG_INSTALL)
diff -up glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/spirv.pc.cmake.in.dma glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/spirv.pc.cmake.in
--- glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/spirv.pc.cmake.in.dma 2020-11-04 06:32:09.032326292 +1000
+++ glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/spirv.pc.cmake.in 2020-11-04 06:32:09.031326265 +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-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/SpvTools.cpp.dma glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/SpvTools.cpp
--- glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/SpvTools.cpp.dma 2020-11-04 06:32:09.032326292 +1000
+++ glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/SPIRV/SpvTools.cpp 2020-11-04 06:33:06.481878394 +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-d550bebee919179c9e332a0ab28a67f8fe3ca239/StandAlone/CMakeLists.txt.dma glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/StandAlone/CMakeLists.txt
--- glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/StandAlone/CMakeLists.txt.dma 2020-11-04 06:31:49.139788864 +1000
+++ glslang-d550bebee919179c9e332a0ab28a67f8fe3ca239/StandAlone/CMakeLists.txt 2020-11-04 06:32:09.032326292 +1000
@@ -56,6 +56,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)
@@ -65,9 +73,6 @@ elseif(UNIX)
endif(WIN32)
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