diff options
author | CoprDistGit <infra@openeuler.org> | 2024-08-01 14:33:25 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2024-08-01 14:33:25 +0000 |
commit | 2183611c73336870d773a9ff1da4e25f45a88518 (patch) | |
tree | 2f4945046dd2e2f85dd5e9dcb0f1c9725427c6c0 | |
parent | 1eb2bf7e2342f13c4c40d9463f7b5add59729dc0 (diff) |
automatic import of glslangopeneuler24.03_LTS
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | 0001-pkg-config-compatibility.patch | 200 | ||||
-rw-r--r-- | glslang.spec | 199 | ||||
-rw-r--r-- | sources | 1 |
4 files changed, 401 insertions, 0 deletions
@@ -0,0 +1 @@ +/glslang-sdk-1.3.283.0.tar.gz diff --git a/0001-pkg-config-compatibility.patch b/0001-pkg-config-compatibility.patch new file mode 100644 index 0000000..888bf77 --- /dev/null +++ b/0001-pkg-config-compatibility.patch @@ -0,0 +1,200 @@ +diff -up glslang-sdk-1.3.275.0/CMakeLists.txt.dma glslang-sdk-1.3.275.0/CMakeLists.txt +--- glslang-sdk-1.3.275.0/CMakeLists.txt.dma 2023-08-09 04:49:36.000000000 +1000 ++++ glslang-sdk-1.3.275.0/CMakeLists.txt 2023-09-05 13:21:45.113297799 +1000 +@@ -106,6 +106,13 @@ endif() + + option(ENABLE_PCH "Enables Precompiled header" ON) + ++# 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_HLSL) + add_compile_definitions(ENABLE_HLSL) + endif() +@@ -264,27 +271,7 @@ if(BUILD_EXTERNAL AND IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/External) + add_subdirectory(External) + endif() + +-option(ALLOW_EXTERNAL_SPIRV_TOOLS "Allows to build against installed SPIRV-Tools-opt. This is unsupported if the commit isn't the one in known_good.json") +-if(NOT TARGET SPIRV-Tools-opt) +- if(ALLOW_EXTERNAL_SPIRV_TOOLS) +- # Look for external SPIR-V Tools build, if not building in-tree +- message(STATUS "Trying to find local SPIR-V tools") +- find_package(SPIRV-Tools-opt) +- if(NOT TARGET SPIRV-Tools-opt) +- if(ENABLE_OPT) +- message(WARNING "ENABLE_OPT set but SPIR-V tools not found! Disabling SPIR-V optimization.") +- endif() +- set(ENABLE_OPT OFF) +- endif() +- else() +- if(ENABLE_OPT) +- message(SEND_ERROR "ENABLE_OPT set but SPIR-V tools not found. Please run update_glslang_sources.py, " +- "set the ALLOW_EXTERNAL_SPIRV_TOOLS option to use a local install of SPIRV-Tools, or set ENABLE_OPT=0.") +- endif() +- endif() +-endif() +- +-if(ENABLE_OPT) ++if(${SPIRV_TOOLS_FOUND} EQUAL 1) + message(STATUS "optimizer enabled") + add_definitions(-DENABLE_OPT=1) + else() +@@ -349,9 +336,6 @@ if (GLSLANG_ENABLE_INSTALL) + file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/glslang-config.cmake.in" [=[ + @PACKAGE_INIT@ + include(CMakeFindDependencyMacro) +- if(@ENABLE_OPT@) +- find_dependency(SPIRV-Tools-opt) +- endif() + @INSTALL_CONFIG_UNIX@ + include("@PACKAGE_PATH_EXPORT_TARGETS@") + ]=]) +diff -up glslang-sdk-1.3.275.0/External/CMakeLists.txt.dma glslang-sdk-1.3.275.0/External/CMakeLists.txt +--- glslang-sdk-1.3.275.0/External/CMakeLists.txt.dma 2023-08-09 04:49:36.000000000 +1000 ++++ glslang-sdk-1.3.275.0/External/CMakeLists.txt 2023-09-05 13:21:45.113297799 +1000 +@@ -68,10 +68,4 @@ if(GLSLANG_TESTS) + 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(spirv-tools) +- endif() +-endif() + + +diff -up glslang-sdk-1.3.275.0/glslang/CMakeLists.txt.dma glslang-sdk-1.3.275.0/glslang/CMakeLists.txt +--- glslang-sdk-1.3.275.0/glslang/CMakeLists.txt.dma 2023-08-09 04:49:36.000000000 +1000 ++++ glslang-sdk-1.3.275.0/glslang/CMakeLists.txt 2023-09-05 13:21:45.114297825 +1000 +@@ -232,6 +232,8 @@ if(GLSLANG_ENABLE_INSTALL) + if(NOT BUILD_SHARED_LIBS) + install(TARGETS MachineIndependent EXPORT glslang-targets) + install(TARGETS GenericCodeGen EXPORT glslang-targets) ++ 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) + endif() + + set(PUBLIC_HEADERS + +diff -up glslang-sdk-1.3.275.0/glslang/glslang.pc.cmake.in.dma glslang-sdk-1.3.275.0/glslang/glslang.pc.cmake.in +--- glslang-sdk-1.3.275.0/glslang/glslang.pc.cmake.in.dma 2023-09-05 13:21:45.115297852 +1000 ++++ glslang-sdk-1.3.275.0/glslang/glslang.pc.cmake.in 2023-09-05 13:21:45.115297852 +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.275.0/SPIRV/CMakeLists.txt.dma glslang-sdk-1.3.275.0/SPIRV/CMakeLists.txt +--- glslang-sdk-1.3.275.0/SPIRV/CMakeLists.txt.dma 2023-08-09 04:49:36.000000000 +1000 ++++ glslang-sdk-1.3.275.0/SPIRV/CMakeLists.txt 2023-09-05 13:21:45.116297879 +1000 +@@ -89,6 +89,10 @@ target_include_directories(SPIRV PUBLIC + + glslang_add_build_info_dependency(SPIRV) + ++ ++set(SPIRV_NAME spirv) ++set(SPIRV_VERSION 1.5.5) ++ + if (ENABLE_SPVREMAPPER) + add_library(SPVRemapper ${LIB_TYPE} ${SPVREMAP_SOURCES} ${SPVREMAP_HEADERS}) + set_target_properties(SPVRemapper PROPERTIES +@@ -105,10 +109,17 @@ 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_link_libraries(SPIRV PRIVATE MachineIndependent PUBLIC SPIRV-Tools-opt) +- target_include_directories(SPIRV PUBLIC +- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../External>) ++ target_link_libraries(SPIRV glslang) + else() + target_link_libraries(SPIRV PRIVATE MachineIndependent) + endif() +@@ -125,5 +125,9 @@ if(GLSLANG_ENABLE_INSTALL) + + install(TARGETS SPIRV EXPORT glslang-targets) + ++ # 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 ${PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/glslang/SPIRV/) + endif() +diff -up glslang-sdk-1.3.275.0/SPIRV/spirv.pc.cmake.in.dma glslang-sdk-1.3.275.0/SPIRV/spirv.pc.cmake.in +--- glslang-sdk-1.3.275.0/SPIRV/spirv.pc.cmake.in.dma 2023-09-05 13:21:45.116297879 +1000 ++++ glslang-sdk-1.3.275.0/SPIRV/spirv.pc.cmake.in 2023-09-05 13:21:45.116297879 +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.275.0/SPIRV/SpvTools.cpp.dma glslang-sdk-1.3.275.0/SPIRV/SpvTools.cpp +--- glslang-sdk-1.3.275.0/SPIRV/SpvTools.cpp.dma 2023-08-09 04:49:36.000000000 +1000 ++++ glslang-sdk-1.3.275.0/SPIRV/SpvTools.cpp 2023-09-05 13:21:45.117297906 +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.275.0/StandAlone/CMakeLists.txt.dma glslang-sdk-1.3.275.0/StandAlone/CMakeLists.txt +--- glslang-sdk-1.3.275.0/StandAlone/CMakeLists.txt.dma 2023-08-09 04:49:36.000000000 +1000 ++++ glslang-sdk-1.3.275.0/StandAlone/CMakeLists.txt 2023-09-05 13:22:23.806333232 +1000 +@@ -63,6 +63,14 @@ set(LIBRARIES + SPIRV + glslang-default-resource-limits) + ++if(BUILD_SHARED_LIBS) ++ set(LIBRARIES ${LIBRARIES} ${SPIRV_TOOLS_SHARED_LIBRARIES}) ++ target_include_directories(glslang-standalone PUBLIC ${SPIRV_TOOLS_SHARED_INCLUDE_DIRS}) ++else() ++ set(LIBRARIES ${LIBRARIES} ${SPIRV_TOOLS_LIBRARIES}) ++ target_include_directories(glslang-standalone PUBLIC ${SPIRV_TOOLS_INCLUDE_DIRS}) ++endif(BUILD_SHARED_LIBS) ++ + if(WIN32) + set(LIBRARIES ${LIBRARIES} psapi) + elseif(UNIX) +@@ -72,8 +80,6 @@ elseif(UNIX) + endif() + + target_link_libraries(glslang-standalone ${LIBRARIES}) +-target_include_directories(glslang-standalone PUBLIC +- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../External>) + + if(ENABLE_SPVREMAPPER) + set(REMAPPER_SOURCES spirv-remap.cpp) diff --git a/glslang.spec b/glslang.spec new file mode 100644 index 0000000..5fafd1f --- /dev/null +++ b/glslang.spec @@ -0,0 +1,199 @@ +%global sdkver 1.3.283.0 + +Name: glslang +Version: 14.2.0 +Release: 3%{?dist} +Summary: OpenGL and OpenGL ES shader front end and validator + +License: BSD-2-Clause AND BSD-3-Clause AND GPL-3.0-or-later AND Apache-2.0 +URL: https://github.com/KhronosGroup/%{name} +Source0: %url/archive/vulkan-sdk-%{sdkver}.tar.gz#/%{name}-sdk-%{sdkver}.tar.gz +# Patch to build against system spirv-tools (rebased locally) +#Patch3: https://patch-diff.githubusercontent.com/raw/KhronosGroup/glslang/pull/1722.patch#/0001-pkg-config-compatibility.patch +Patch3: 0001-pkg-config-compatibility.patch + +BuildRequires: cmake3 +BuildRequires: gcc-c++ +BuildRequires: ninja-build +BuildRequires: spirv-tools-devel + +%description +%{name} is the official reference compiler front end for the OpenGL +ES and OpenGL shading languages. It implements a strict +interpretation of the specifications for these languages. + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +%{name} is the official reference compiler front end for the OpenGL +ES and OpenGL shading languages. It implements a strict +interpretation of the specifications for these languages. + +%prep +%autosetup -p1 -n %{name}-vulkan-sdk-%{sdkver} +# Fix rpmlint warning on debuginfo +find . -name '*.h' -or -name '*.cpp' -or -name '*.hpp'| xargs chmod a-x + +%build +%cmake3 -DBUILD_SHARED_LIBS=OFF +%cmake_build + +%install +%{cmake_install} + +# we don't want them in here +rm -rf %{buildroot}%{_includedir}/SPIRV + +%ifnarch s390x ppc64 +%check +pushd Test +./runtests localResults ../%{_vpath_builddir}/StandAlone/glslangValidator ../%{_vpath_builddir}/StandAlone/spirv-remap +popd +%endif + +%files +%doc README.md README-spirv-remap.txt +%{_bindir}/glslang +%{_bindir}/glslangValidator +%{_bindir}/spirv-remap + +%files devel +%{_includedir}/glslang/ +%{_libdir}/libOSDependent.a +%{_libdir}/libSPIRV.a +%{_libdir}/libSPVRemapper.a +%{_libdir}/libglslang.a +%{_libdir}/libGenericCodeGen.a +%{_libdir}/libMachineIndependent.a +%{_libdir}/libglslang-default-resource-limits.a +%{_libdir}/pkgconfig/glslang.pc +%{_libdir}/pkgconfig/spirv.pc +%{_libdir}/cmake/* + +%changelog +* Thu May 30 2024 José Expósito <jexposit@redhat.com> - 14.2.0-3 +- Fix license identifiers + +* Thu May 30 2024 José Expósito <jexposit@redhat.com> - 14.2.0-2 +- Update license identifiers + +* Tue May 28 2024 José Expósito <jexposit@redhat.com> - 14.2.0-1 +- Update to 1.3.283.0 SDK + +* Wed Jan 17 2024 José Expósito <jexposit@redhat.com> - 13.1.1-1 +- Update to 1.3.268.0 SDK + +* Fri Jul 07 2023 Dave Airlie <airlied@redhat.com> - 11.9.0-5 +- Latest snapshot used in 1.3.250.1 sdk + +* Wed Feb 15 2023 Dave Airlie <airlied@redhat.com> - 11.9.0-4 +- Latest snapshot used in 1.3.239 sdk + +* Fri Aug 26 2022 Dave Airlie <airlied@redhat.com> - 11.9.0-3 +- Latest snapshot used in 1.3.224 sdk + +* Wed Jun 22 2022 Dave Airlie <airlied@redhat.com> - 11.9.0-2 +- Latest snapshot used in 1.3.216 sdk + +* Fri Feb 25 2022 Dave Airlie <airlied@redhat.com> - 11.9.0-1.20220202.git2742e95 +- Latest snapshot used in 1.3.204 sdk + +* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 11.5.0-2.20210623.gitae2a562 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 + +* Fri Jul 30 2021 Dave Airlie <airlied@redhat.com> - 11.5.0-1 +- Latest snapshot used in 1.2.182 sdk + +* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 11.0.0-5.20201208.gitc594de2 +- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 + +* Thu Jan 28 2021 Dave Airlie <airlied@redhat.com> - 11.0.0-4.20201208.gitc594de2 +- Latest snapshot used in 1.2.162 sdk + +* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11.0.0-3.20201104.gitd550beb +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Nov 04 2020 Dave Airlie <airlied@redhat.com> - 11.0.0-2 +- Latest upstream snapshot + +* Wed Aug 05 2020 Dave Airlie <airlied@redhat.com> - 11.0.0-1 +- Latest upstream snapshot + +* Tue Aug 04 2020 Dave Airlie <airlied@redhat.com> - 8.13.3559-5 +- Use cmake macros. + +* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 8.13.3559-4.2020421.gitc9b28b9 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 8.13.3559-3.2020421.gitc9b28b9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Apr 22 2020 Dave Airlie <airlied@redhat.com> - 8.13.3559-2 +- Update to latest git snapshot + +* Wed Jan 29 2020 Dave Airlie <airlied@redhat.com> - 8.13.3559-1 +- Update to latest git snapshot + +* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 7.13.3496-3.20191102.git7f77b2e +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Dec 19 2019 Leigh Scott <leigh123linux@googlemail.com> - 7.13.3496-2.20191102.git7f77b2e +- Add patch for 'Fix a couple relative header paths in header' + +* Wed Nov 13 2019 Dave Airlie <airlied@redhat.com> - 7.13.3496-1 +- Latest upstream snapshot for validation layers build + +* Sat Aug 03 2019 Dave Airlie <airlied@redhat.com> - 7.11.3214-3 +- Latest upstream snapshot for validation layers build + +* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 7.11.3214-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Mon Jun 10 01:27:27 CEST 2019 Robert-André Mauchin <zebob.m@gmail.com> - 7.11.3214-1 +- Release 7.11.3214 +- Add patch to build against system spirv-tools + +* Fri Mar 29 2019 Dave Airlie <airlied@redhat.com> - 3.1-0.13.20190329.gite0d59bb +- Update for vulkan 1.1.101.0 + +* Tue Feb 12 2019 Dave Airlie <airlied@redhat.com> - 3.1-0.12.20190212.git05d12a9 +- Update for vulkan 1.1.92.0 + +* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.1-0.11.20180727.gite99a268 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Tue Aug 07 2018 Leigh Scott <leigh123linux@googlemail.com> - 3.1-0.10.20180727.gite99a268 +- Update for vulkan 1.1.82.0 + +* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.1-0.9.20180416.git3bb4c48 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Mon Apr 23 2018 Leigh Scott <leigh123linux@googlemail.com> - 3.1-0.8.20180416.git3bb4c48 +- Update for vulkan 1.1.73.0 + +* Wed Mar 07 2018 Adam Williamson <awilliam@redhat.com> - 3.1-0.7.20180205.git2651cca +- Rebuild to fix GCC 8 mis-compilation + See https://da.gd/YJVwk ("GCC 8 ABI change on x86_64") + +* Fri Feb 09 2018 Leigh Scott <leigh123linux@googlemail.com> - 3.1-0.6.20180205.git2651cca +- Update for vulkan 1.0.68.0 + +* Fri Feb 09 2018 Leigh Scott <leigh123linux@googlemail.com> - 3.1-0.5.20171028.git715c353 +- Use ninja to build + +* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.1-0.4.20171028.git715c353 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Jan 03 2018 Leigh Scott <leigh123linux@googlemail.com> - 3.1-0.3.20171028.git715c353 +- Exclude s390x and ppc64 from check section + +* Wed Jan 03 2018 Leigh Scott <leigh123linux@googlemail.com> - 3.1-0.2.20171028.git715c353 +- Add check section to run tests +- Split binaries into main package + +* Thu Jul 13 2017 Leigh Scott <leigh123linux@googlemail.com> - 3.1-0.1.20171028.git715c353 +- First build @@ -0,0 +1 @@ +3fdeb75b8439f1d1008679dd9dae782c glslang-sdk-1.3.283.0.tar.gz |