Compare commits
55 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7cfe9fc425 | ||
|
|
a329a0be6f | ||
|
|
03bb698512 | ||
|
|
296e1ebf6d | ||
|
|
43567d2f46 | ||
|
|
b08e5bcfdc | ||
|
|
03213de09a | ||
|
|
98bfc81aeb | ||
|
|
778f507aee | ||
|
|
ebaa6f9175 | ||
|
|
9a300b042a | ||
|
|
e9b1585281 | ||
|
|
b5145be5a7 | ||
|
|
b32e668d9d | ||
|
|
e2ea6da7a4 | ||
|
|
69ab0ca763 | ||
|
|
532876f399 | ||
|
|
e319f19c4b | ||
|
|
66374dd34e | ||
|
|
015b5d055c | ||
|
|
a317187e65 | ||
|
|
c39ab21c8f | ||
| 4a5f8f6b07 | |||
|
|
e372b7585c | ||
|
|
2ad635f2b0 | ||
|
|
49f19ee582 | ||
| c30203295b | |||
|
|
80bbfbd100 | ||
|
|
d0f8d4b689 | ||
|
|
4987ecd9e0 | ||
|
|
c51ae85d16 | ||
|
|
7549837cf6 | ||
|
|
5012bf8856 | ||
|
|
636d983a46 | ||
|
|
ff40768c64 | ||
|
|
d7061f6fa5 | ||
|
|
a2698b1c1c | ||
|
|
1150544b5c | ||
|
|
5d69c02a1f | ||
|
|
350f8f9131 | ||
|
|
719bd557e2 | ||
|
|
3b1492aaef | ||
|
|
aab6525b62 | ||
|
|
8ad38eb650 |
||
|
|
e8a0957709 |
||
|
|
1987df224e | ||
|
|
d9cd506315 |
||
|
|
dcdcb8c38a |
||
|
|
fac8674882 | ||
|
|
268e1560c3 | ||
|
|
180856cf7d | ||
|
|
9eed86af39 | ||
|
|
10c0266890 | ||
|
|
64f3b94f91 | ||
|
|
81471bb086 |
9 changed files with 179 additions and 655 deletions
24
.gitignore
vendored
24
.gitignore
vendored
|
|
@ -1,2 +1,26 @@
|
|||
/shaderc-7a23a01.tar.gz
|
||||
/shaderc-7d8582b.tar.gz
|
||||
/shaderc-34c412f.tar.gz
|
||||
/shaderc-f76bb2f.tar.gz
|
||||
/shaderc-7c2aa93.tar.gz
|
||||
/shaderc-4162bb1.tar.gz
|
||||
/shaderc-1fce597.tar.gz
|
||||
/shaderc-0dbd899.tar.gz
|
||||
/shaderc-24275a1.tar.gz
|
||||
/shaderc-bdd134d.tar.gz
|
||||
/shaderc-adca18d.tar.gz
|
||||
/shaderc-1701a27.tar.gz
|
||||
/shaderc-551f106.tar.gz
|
||||
/shaderc-d0b0222.tar.gz
|
||||
/shaderc-2023.3.tar.gz
|
||||
/shaderc-2023.7.tar.gz
|
||||
/shaderc-2023.8.tar.gz
|
||||
/shaderc-2024.0.tar.gz
|
||||
/3ac03b8ad85a8e328a6182cddee8d05810bd5a2c.tar.gz
|
||||
/ff84893dd52d28f0b1737d2635733d952013bd9c.tar.gz
|
||||
/caa54d9779d5605aca4e1a0c0c962a3d8f4aeb31.tar.gz
|
||||
/3362e24c42ab5bf7ad32c0fec64b0a0ddeb2fda1.tar.gz
|
||||
/8c2e602ce440b7739c95ff3d69cecb1adf6becda.tar.gz
|
||||
/73743588fe9c39f2f1c780a087d94afac691a189.tar.gz
|
||||
/301b4ede53d59b68bf55f95bb26412d9233c8187.tar.gz
|
||||
/d5f08ae5c5a9a45165578445cbd0f9adf0223448.tar.gz
|
||||
|
|
|
|||
22
.packit.yaml
Normal file
22
.packit.yaml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
# packit config for shaderc
|
||||
# Build Stage 4 - depends on glslang
|
||||
|
||||
jobs:
|
||||
- job: koji_build
|
||||
trigger: commit | koji_build
|
||||
allowed_committers: [all_committers]
|
||||
allowed_pr_authors: ['asrivats','jexposit']
|
||||
dist_git_branches:
|
||||
- fedora-all
|
||||
sidetag_group: vulkan-sdk-releases
|
||||
dependencies:
|
||||
- glslang
|
||||
|
||||
- job: bodhi_update
|
||||
trigger: koji_build
|
||||
dist_git_branches:
|
||||
- fedora-all
|
||||
sidetag_group: vulkan-sdk-releases
|
||||
dependencies:
|
||||
- vulkan-validation-layers
|
||||
- vulkan-tools
|
||||
|
|
@ -1,21 +1,7 @@
|
|||
From f3e0470ccf96a48f6e5701aa64aa831d51769d8e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= <zebob.m@gmail.com>
|
||||
Date: Sun, 30 Sep 2018 20:53:08 +0200
|
||||
Subject: [PATCH] Drop third party code in CMakeLists.txt
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Robert-André Mauchin <zebob.m@gmail.com>
|
||||
---
|
||||
CMakeLists.txt | 6 ------
|
||||
1 file changed, 6 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index b9bd0df..bd2c9f7 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -52,15 +52,9 @@ endif(MSVC)
|
||||
diff -up shaderc-24275a11d81a6b33ef345878f8a4ef929c95a116/CMakeLists.txt.orig shaderc-24275a11d81a6b33ef345878f8a4ef929c95a116/CMakeLists.txt
|
||||
--- shaderc-24275a11d81a6b33ef345878f8a4ef929c95a116/CMakeLists.txt.orig 2021-03-05 13:50:35.469018657 +0100
|
||||
+++ shaderc-24275a11d81a6b33ef345878f8a4ef929c95a116/CMakeLists.txt 2021-03-05 13:52:02.679524176 +0100
|
||||
@@ -112,20 +112,10 @@ endif(MSVC)
|
||||
|
||||
# Configure subdirectories.
|
||||
# We depend on these for later projects, so they should come first.
|
||||
|
|
@ -24,13 +10,15 @@ index b9bd0df..bd2c9f7 100644
|
|||
add_subdirectory(libshaderc_util)
|
||||
add_subdirectory(libshaderc)
|
||||
add_subdirectory(glslc)
|
||||
add_subdirectory(examples)
|
||||
|
||||
-if(${SHADERC_ENABLE_EXAMPLES})
|
||||
- add_subdirectory(examples)
|
||||
-endif()
|
||||
-
|
||||
-add_custom_target(build-version
|
||||
- ${PYTHON_EXE}
|
||||
- ${Python_EXECUTABLE}
|
||||
- ${CMAKE_CURRENT_SOURCE_DIR}/utils/update_build_version.py
|
||||
- ${shaderc_SOURCE_DIR} ${spirv-tools_SOURCE_DIR} ${glslang_SOURCE_DIR}
|
||||
- ${shaderc_SOURCE_DIR} ${spirv-tools_SOURCE_DIR} ${glslang_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}/build-version.inc
|
||||
- COMMENT "Update build-version.inc in the Shaderc build directory (if necessary).")
|
||||
--
|
||||
2.19.0
|
||||
|
||||
|
||||
function(define_pkg_config_file NAME LIBS)
|
||||
add_custom_target(${NAME}-pkg-config ALL
|
||||
|
|
|
|||
|
|
@ -1,44 +0,0 @@
|
|||
From 21c8be385b3fab5edcb934a6d99f69fd389c4e67 Mon Sep 17 00:00:00 2001
|
||||
From: Niklas Haas <git@haasn.xyz>
|
||||
Date: Tue, 29 May 2018 07:34:00 +0200
|
||||
Subject: [PATCH] Fix the link order of libglslang and libHLSL
|
||||
|
||||
libglslang depends on libHLSL, so the latter needs to be specified last.
|
||||
This fixes an issue when trying to build shaderc against system-wide
|
||||
versions of libglslang/libHLSL, rather than the in-tree versions from
|
||||
third_party.
|
||||
|
||||
Additionally, libshaderc_util also depends on SPIRV-Tools
|
||||
---
|
||||
glslc/CMakeLists.txt | 2 +-
|
||||
libshaderc_util/CMakeLists.txt | 4 ++--
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/glslc/CMakeLists.txt b/glslc/CMakeLists.txt
|
||||
index acf6fb0..0f5d888 100644
|
||||
--- a/glslc/CMakeLists.txt
|
||||
+++ b/glslc/CMakeLists.txt
|
||||
@@ -18,7 +18,7 @@ add_library(glslc STATIC
|
||||
shaderc_default_compile_options(glslc)
|
||||
target_include_directories(glslc PUBLIC ${glslang_SOURCE_DIR})
|
||||
target_link_libraries(glslc PRIVATE glslang OSDependent OGLCompiler
|
||||
- HLSL glslang SPIRV ${CMAKE_THREAD_LIBS_INIT})
|
||||
+ glslang SPIRV HLSL ${CMAKE_THREAD_LIBS_INIT})
|
||||
target_link_libraries(glslc PRIVATE shaderc_util shaderc)
|
||||
|
||||
add_executable(glslc_exe src/main.cc)
|
||||
diff --git a/libshaderc_util/CMakeLists.txt b/libshaderc_util/CMakeLists.txt
|
||||
index 873540a..6d0c465 100644
|
||||
--- a/libshaderc_util/CMakeLists.txt
|
||||
+++ b/libshaderc_util/CMakeLists.txt
|
||||
@@ -34,8 +34,8 @@ endif(SHADERC_ENABLE_INSTALL)
|
||||
|
||||
find_package(Threads)
|
||||
target_link_libraries(shaderc_util PRIVATE
|
||||
- glslang OSDependent OGLCompiler HLSL glslang SPIRV
|
||||
- SPIRV-Tools-opt ${CMAKE_THREAD_LIBS_INIT})
|
||||
+ glslang OSDependent OGLCompiler glslang HLSL SPIRV
|
||||
+ SPIRV-Tools-opt SPIRV-Tools ${CMAKE_THREAD_LIBS_INIT})
|
||||
|
||||
shaderc_add_tests(
|
||||
TEST_PREFIX shaderc_util
|
||||
|
|
@ -1,521 +0,0 @@
|
|||
From 7867887019541322b08cc31257c447d20e79a40c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= <zebob.m@gmail.com>
|
||||
Date: Wed, 3 Oct 2018 16:37:42 +0200
|
||||
Subject: [PATCH] Revert "Add-support-for-SPV_NV_mesh_shader"
|
||||
|
||||
This reverts commit e8ffa069fa40f79824cb1499eaa78cb56af84d0a.
|
||||
---
|
||||
CMakeLists.txt | 8 --
|
||||
glslc/src/shader_stage.cc | 23 +-----
|
||||
glslc/src/stage_test.cc | 25 ------
|
||||
libshaderc/include/shaderc/shaderc.h | 27 -------
|
||||
libshaderc/src/common_shaders_for_test.h | 38 ----------
|
||||
libshaderc/src/shaderc.cc | 57 --------------
|
||||
libshaderc/src/shaderc_private.h | 18 -----
|
||||
libshaderc/src/shaderc_private_test.cc | 18 -----
|
||||
libshaderc/src/shaderc_test.cc | 76 -------------------
|
||||
.../include/libshaderc_util/compiler.h | 34 +--------
|
||||
libshaderc_util/src/resources.cc | 10 ---
|
||||
11 files changed, 5 insertions(+), 329 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index b982eab..422d9c2 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -19,19 +19,11 @@ else()
|
||||
message(STATUS "Configuring Shaderc to avoid building tests.")
|
||||
endif()
|
||||
|
||||
-set (CMAKE_CXX_STANDARD 11)
|
||||
-
|
||||
-option(SHADERC_ENABLE_NV_EXTENSIONS "Enables support of Nvidia-specific extensions" ON)
|
||||
|
||||
include(GNUInstallDirs)
|
||||
include(cmake/setup_build.cmake)
|
||||
include(cmake/utils.cmake)
|
||||
|
||||
-
|
||||
-if(SHADERC_ENABLE_NV_EXTENSIONS)
|
||||
- add_definitions(-DNV_EXTENSIONS)
|
||||
-endif(SHADERC_ENABLE_NV_EXTENSIONS)
|
||||
-
|
||||
add_custom_target(check-copyright ALL
|
||||
${PYTHON_EXE} ${CMAKE_CURRENT_SOURCE_DIR}/utils/add_copyright.py
|
||||
--check
|
||||
diff --git a/glslc/src/shader_stage.cc b/glslc/src/shader_stage.cc
|
||||
index 3e4716d..142195a 100644
|
||||
--- a/glslc/src/shader_stage.cc
|
||||
+++ b/glslc/src/shader_stage.cc
|
||||
@@ -43,18 +43,7 @@ shaderc_shader_kind MapStageNameToForcedKind(const string_piece& stage_name) {
|
||||
{"geometry", shaderc_glsl_geometry_shader},
|
||||
{"geom", shaderc_glsl_geometry_shader},
|
||||
{"compute", shaderc_glsl_compute_shader},
|
||||
- {"comp", shaderc_glsl_compute_shader},
|
||||
-#ifdef NV_EXTENSIONS
|
||||
- {"rgen", shaderc_glsl_raygen_shader },
|
||||
- {"rahit", shaderc_glsl_anyhit_shader },
|
||||
- {"rchit", shaderc_glsl_closesthit_shader },
|
||||
- {"rmiss", shaderc_glsl_miss_shader },
|
||||
- {"rint", shaderc_glsl_intersection_shader },
|
||||
- {"rcall", shaderc_glsl_callable_shader },
|
||||
- {"task", shaderc_glsl_task_shader },
|
||||
- {"mesh", shaderc_glsl_mesh_shader },
|
||||
-#endif
|
||||
- };
|
||||
+ {"comp", shaderc_glsl_compute_shader}};
|
||||
for (const auto& entry : string_to_kind) {
|
||||
if (stage_name == entry.id) return entry.stage;
|
||||
}
|
||||
@@ -79,16 +68,6 @@ shaderc_shader_kind DeduceDefaultShaderKindFromFileName(
|
||||
{"geom", shaderc_glsl_default_geometry_shader},
|
||||
{"comp", shaderc_glsl_default_compute_shader},
|
||||
{"spvasm", shaderc_spirv_assembly},
|
||||
-#ifdef NV_EXTENSIONS
|
||||
- {"rgen", shaderc_glsl_default_raygen_shader },
|
||||
- {"rahit", shaderc_glsl_default_anyhit_shader },
|
||||
- {"rchit", shaderc_glsl_default_closesthit_shader },
|
||||
- {"rmiss", shaderc_glsl_default_miss_shader },
|
||||
- {"rint", shaderc_glsl_default_intersection_shader },
|
||||
- {"rcall", shaderc_glsl_default_callable_shader },
|
||||
- {"task", shaderc_glsl_default_task_shader },
|
||||
- {"mesh", shaderc_glsl_default_mesh_shader },
|
||||
-#endif
|
||||
};
|
||||
|
||||
const string_piece extension = glslc::GetFileExtension(file_name);
|
||||
diff --git a/glslc/src/stage_test.cc b/glslc/src/stage_test.cc
|
||||
index 80eef92..2ee0271 100644
|
||||
--- a/glslc/src/stage_test.cc
|
||||
+++ b/glslc/src/stage_test.cc
|
||||
@@ -49,31 +49,6 @@ TEST(DeduceDefaultShaderKindFromFileName, ValidStage) {
|
||||
EXPECT_EQ(shaderc_glsl_default_compute_shader,
|
||||
glslc::DeduceDefaultShaderKindFromFileName("a.comp"));
|
||||
|
||||
-#ifdef NV_EXTENSIONS
|
||||
- EXPECT_EQ(shaderc_glsl_default_raygen_shader,
|
||||
- glslc::DeduceDefaultShaderKindFromFileName("a.rgen"));
|
||||
-
|
||||
- EXPECT_EQ(shaderc_glsl_default_anyhit_shader,
|
||||
- glslc::DeduceDefaultShaderKindFromFileName("a.rahit"));
|
||||
-
|
||||
- EXPECT_EQ(shaderc_glsl_default_closesthit_shader,
|
||||
- glslc::DeduceDefaultShaderKindFromFileName("a.rchit"));
|
||||
-
|
||||
- EXPECT_EQ(shaderc_glsl_default_miss_shader,
|
||||
- glslc::DeduceDefaultShaderKindFromFileName("a.rmiss"));
|
||||
-
|
||||
- EXPECT_EQ(shaderc_glsl_default_intersection_shader,
|
||||
- glslc::DeduceDefaultShaderKindFromFileName("a.rint"));
|
||||
-
|
||||
- EXPECT_EQ(shaderc_glsl_default_callable_shader,
|
||||
- glslc::DeduceDefaultShaderKindFromFileName("a.rcall"));
|
||||
-
|
||||
- EXPECT_EQ(shaderc_glsl_default_task_shader,
|
||||
- glslc::DeduceDefaultShaderKindFromFileName("a.task"));
|
||||
-
|
||||
- EXPECT_EQ(shaderc_glsl_default_mesh_shader,
|
||||
- glslc::DeduceDefaultShaderKindFromFileName("a.mesh"));
|
||||
-#endif
|
||||
}
|
||||
|
||||
TEST(DeduceDefaultShaderKindFromFileName, InvalidStage) {
|
||||
diff --git a/libshaderc/include/shaderc/shaderc.h b/libshaderc/include/shaderc/shaderc.h
|
||||
index 6addebf..093bb12 100644
|
||||
--- a/libshaderc/include/shaderc/shaderc.h
|
||||
+++ b/libshaderc/include/shaderc/shaderc.h
|
||||
@@ -64,7 +64,6 @@ typedef enum {
|
||||
shaderc_glsl_geometry_shader = shaderc_geometry_shader,
|
||||
shaderc_glsl_tess_control_shader = shaderc_tess_control_shader,
|
||||
shaderc_glsl_tess_evaluation_shader = shaderc_tess_evaluation_shader,
|
||||
-
|
||||
// Deduce the shader kind from #pragma annotation in the source code. Compiler
|
||||
// will emit error if #pragma annotation is not found.
|
||||
shaderc_glsl_infer_from_source,
|
||||
@@ -78,32 +77,6 @@ typedef enum {
|
||||
shaderc_glsl_default_tess_control_shader,
|
||||
shaderc_glsl_default_tess_evaluation_shader,
|
||||
shaderc_spirv_assembly,
|
||||
-#ifdef NV_EXTENSIONS
|
||||
- shaderc_raygen_shader,
|
||||
- shaderc_anyhit_shader,
|
||||
- shaderc_closesthit_shader,
|
||||
- shaderc_miss_shader,
|
||||
- shaderc_intersection_shader,
|
||||
- shaderc_callable_shader,
|
||||
- shaderc_glsl_raygen_shader = shaderc_raygen_shader,
|
||||
- shaderc_glsl_anyhit_shader = shaderc_anyhit_shader,
|
||||
- shaderc_glsl_closesthit_shader = shaderc_closesthit_shader,
|
||||
- shaderc_glsl_miss_shader = shaderc_miss_shader,
|
||||
- shaderc_glsl_intersection_shader = shaderc_intersection_shader,
|
||||
- shaderc_glsl_callable_shader = shaderc_callable_shader,
|
||||
- shaderc_glsl_default_raygen_shader,
|
||||
- shaderc_glsl_default_anyhit_shader,
|
||||
- shaderc_glsl_default_closesthit_shader,
|
||||
- shaderc_glsl_default_miss_shader,
|
||||
- shaderc_glsl_default_intersection_shader,
|
||||
- shaderc_glsl_default_callable_shader,
|
||||
- shaderc_task_shader,
|
||||
- shaderc_mesh_shader,
|
||||
- shaderc_glsl_task_shader = shaderc_task_shader,
|
||||
- shaderc_glsl_mesh_shader = shaderc_mesh_shader,
|
||||
- shaderc_glsl_default_task_shader,
|
||||
- shaderc_glsl_default_mesh_shader,
|
||||
-#endif
|
||||
} shaderc_shader_kind;
|
||||
|
||||
typedef enum {
|
||||
diff --git a/libshaderc/src/common_shaders_for_test.h b/libshaderc/src/common_shaders_for_test.h
|
||||
index e1e52be..d4e15c1 100644
|
||||
--- a/libshaderc/src/common_shaders_for_test.h
|
||||
+++ b/libshaderc/src/common_shaders_for_test.h
|
||||
@@ -259,44 +259,6 @@ const char kGlslShaderComputeSubgroupBarrier[] =
|
||||
#extension GL_KHR_shader_subgroup_basic : enable
|
||||
void main() { subgroupBarrier(); })";
|
||||
|
||||
-#ifdef NV_EXTENSIONS
|
||||
-// A GLSL task shader using a regular barrier.
|
||||
-const char kGlslShaderTaskBarrier[] =
|
||||
- R"(#version 450
|
||||
- #extension GL_NV_mesh_shader : enable
|
||||
- layout(local_size_x = 32) in;
|
||||
- void main() { barrier(); })";
|
||||
-
|
||||
-// A GLSL task shader using the Subgroups feature.
|
||||
-const char kGlslShaderTaskSubgroupBarrier[] =
|
||||
- R"(#version 450
|
||||
- #extension GL_NV_mesh_shader : enable
|
||||
- #extension GL_KHR_shader_subgroup_basic : enable
|
||||
- layout(local_size_x = 32) in;
|
||||
- void main() { subgroupBarrier(); })";
|
||||
-
|
||||
-// A GLSL mesh shader using a regular barrier.
|
||||
-const char kGlslShaderMeshBarrier[] =
|
||||
- R"(#version 450
|
||||
- #extension GL_NV_mesh_shader : enable
|
||||
- layout(local_size_x = 32) in;
|
||||
- layout(max_vertices=81) out;
|
||||
- layout(max_primitives=32) out;
|
||||
- layout(triangles) out;
|
||||
- void main() { barrier(); })";
|
||||
-
|
||||
-// A GLSL mesh shader using the Subgroups feature.
|
||||
-const char kGlslShaderMeshSubgroupBarrier[] =
|
||||
- R"(#version 450
|
||||
- #extension GL_NV_mesh_shader : enable
|
||||
- #extension GL_KHR_shader_subgroup_basic : enable
|
||||
- layout(local_size_x = 32) in;
|
||||
- layout(max_vertices=81) out;
|
||||
- layout(max_primitives=32) out;
|
||||
- layout(triangles) out;
|
||||
- void main() { subgroupBarrier(); })";
|
||||
-#endif
|
||||
-
|
||||
const char kGlslMultipleFnShader[] =
|
||||
R"(#version 450
|
||||
layout(location=0) flat in int inVal;
|
||||
diff --git a/libshaderc/src/shaderc.cc b/libshaderc/src/shaderc.cc
|
||||
index 5f5db16..17a6562 100644
|
||||
--- a/libshaderc/src/shaderc.cc
|
||||
+++ b/libshaderc/src/shaderc.cc
|
||||
@@ -56,26 +56,6 @@ EShLanguage GetForcedStage(shaderc_shader_kind kind) {
|
||||
return EShLangTessControl;
|
||||
case shaderc_glsl_tess_evaluation_shader:
|
||||
return EShLangTessEvaluation;
|
||||
-
|
||||
-#ifdef NV_EXTENSIONS
|
||||
- case shaderc_glsl_raygen_shader:
|
||||
- return EShLangRayGenNV;
|
||||
- case shaderc_glsl_anyhit_shader:
|
||||
- return EShLangAnyHitNV;
|
||||
- case shaderc_glsl_closesthit_shader:
|
||||
- return EShLangClosestHitNV;
|
||||
- case shaderc_glsl_miss_shader:
|
||||
- return EShLangMissNV;
|
||||
- case shaderc_glsl_intersection_shader:
|
||||
- return EShLangIntersectNV;
|
||||
- case shaderc_glsl_callable_shader:
|
||||
- return EShLangCallableNV;
|
||||
- case shaderc_glsl_task_shader:
|
||||
- return EShLangTaskNV;
|
||||
- case shaderc_glsl_mesh_shader:
|
||||
- return EShLangMeshNV;
|
||||
-#endif
|
||||
-
|
||||
case shaderc_glsl_infer_from_source:
|
||||
case shaderc_glsl_default_vertex_shader:
|
||||
case shaderc_glsl_default_fragment_shader:
|
||||
@@ -83,16 +63,6 @@ EShLanguage GetForcedStage(shaderc_shader_kind kind) {
|
||||
case shaderc_glsl_default_geometry_shader:
|
||||
case shaderc_glsl_default_tess_control_shader:
|
||||
case shaderc_glsl_default_tess_evaluation_shader:
|
||||
-#ifdef NV_EXTENSIONS
|
||||
- case shaderc_glsl_default_raygen_shader:
|
||||
- case shaderc_glsl_default_anyhit_shader:
|
||||
- case shaderc_glsl_default_closesthit_shader:
|
||||
- case shaderc_glsl_default_miss_shader:
|
||||
- case shaderc_glsl_default_intersection_shader:
|
||||
- case shaderc_glsl_default_callable_shader:
|
||||
- case shaderc_glsl_default_task_shader:
|
||||
- case shaderc_glsl_default_mesh_shader:
|
||||
-#endif
|
||||
case shaderc_spirv_assembly:
|
||||
return EShLangCount;
|
||||
}
|
||||
@@ -150,16 +120,6 @@ class StageDeducer {
|
||||
case shaderc_glsl_tess_control_shader:
|
||||
case shaderc_glsl_tess_evaluation_shader:
|
||||
case shaderc_glsl_infer_from_source:
|
||||
-#ifdef NV_EXTENSIONS
|
||||
- case shaderc_glsl_raygen_shader:
|
||||
- case shaderc_glsl_anyhit_shader:
|
||||
- case shaderc_glsl_closesthit_shader:
|
||||
- case shaderc_glsl_miss_shader:
|
||||
- case shaderc_glsl_intersection_shader:
|
||||
- case shaderc_glsl_callable_shader:
|
||||
- case shaderc_glsl_task_shader:
|
||||
- case shaderc_glsl_mesh_shader:
|
||||
-#endif
|
||||
return EShLangCount;
|
||||
case shaderc_glsl_default_vertex_shader:
|
||||
return EShLangVertex;
|
||||
@@ -173,23 +133,6 @@ class StageDeducer {
|
||||
return EShLangTessControl;
|
||||
case shaderc_glsl_default_tess_evaluation_shader:
|
||||
return EShLangTessEvaluation;
|
||||
-#ifdef NV_EXTENSIONS
|
||||
- case shaderc_glsl_default_raygen_shader:
|
||||
- return EShLangRayGenNV;
|
||||
- case shaderc_glsl_default_anyhit_shader:
|
||||
- return EShLangAnyHitNV;
|
||||
- case shaderc_glsl_default_closesthit_shader:
|
||||
- return EShLangClosestHitNV;
|
||||
- case shaderc_glsl_default_miss_shader:
|
||||
- return EShLangMissNV;
|
||||
- case shaderc_glsl_default_intersection_shader:
|
||||
- return EShLangIntersectNV;
|
||||
- case shaderc_glsl_default_callable_shader:
|
||||
- return EShLangCallableNV;
|
||||
- case shaderc_glsl_default_task_shader:
|
||||
- return EShLangTaskNV;
|
||||
- case shaderc_glsl_default_mesh_shader:
|
||||
-#endif
|
||||
case shaderc_spirv_assembly:
|
||||
return EShLangCount;
|
||||
}
|
||||
diff --git a/libshaderc/src/shaderc_private.h b/libshaderc/src/shaderc_private.h
|
||||
index 30dc863..47de8f5 100644
|
||||
--- a/libshaderc/src/shaderc_private.h
|
||||
+++ b/libshaderc/src/shaderc_private.h
|
||||
@@ -111,24 +111,6 @@ inline shaderc_util::Compiler::Stage shaderc_convert_specific_stage(
|
||||
return shaderc_util::Compiler::Stage::Geometry;
|
||||
case shaderc_compute_shader:
|
||||
return shaderc_util::Compiler::Stage::Compute;
|
||||
-#if NV_EXTENSIONS
|
||||
- case shaderc_raygen_shader:
|
||||
- return shaderc_util::Compiler::Stage::RayGenNV;
|
||||
- case shaderc_intersection_shader:
|
||||
- return shaderc_util::Compiler::Stage::IntersectNV;
|
||||
- case shaderc_anyhit_shader:
|
||||
- return shaderc_util::Compiler::Stage::AnyHitNV;
|
||||
- case shaderc_closesthit_shader:
|
||||
- return shaderc_util::Compiler::Stage::ClosestHitNV;
|
||||
- case shaderc_miss_shader:
|
||||
- return shaderc_util::Compiler::Stage::MissNV;
|
||||
- case shaderc_callable_shader:
|
||||
- return shaderc_util::Compiler::Stage::CallableNV;
|
||||
- case shaderc_task_shader:
|
||||
- return shaderc_util::Compiler::Stage::TaskNV;
|
||||
- case shaderc_mesh_shader:
|
||||
- return shaderc_util::Compiler::Stage::MeshNV;
|
||||
-#endif
|
||||
default:
|
||||
// We don't care about the other kinds.
|
||||
break;
|
||||
diff --git a/libshaderc/src/shaderc_private_test.cc b/libshaderc/src/shaderc_private_test.cc
|
||||
index 3b64551..2d6ebf8 100644
|
||||
--- a/libshaderc/src/shaderc_private_test.cc
|
||||
+++ b/libshaderc/src/shaderc_private_test.cc
|
||||
@@ -30,23 +30,5 @@ TEST(ConvertSpecificStage, Exhaustive) {
|
||||
shaderc_convert_specific_stage(shaderc_geometry_shader));
|
||||
EXPECT_EQ(shaderc_util::Compiler::Stage::Compute,
|
||||
shaderc_convert_specific_stage(shaderc_compute_shader));
|
||||
-#ifdef NV_EXTENSIONS
|
||||
- EXPECT_EQ(shaderc_util::Compiler::Stage::RayGenNV,
|
||||
- shaderc_convert_specific_stage(shaderc_raygen_shader));
|
||||
- EXPECT_EQ(shaderc_util::Compiler::Stage::AnyHitNV,
|
||||
- shaderc_convert_specific_stage(shaderc_anyhit_shader));
|
||||
- EXPECT_EQ(shaderc_util::Compiler::Stage::ClosestHitNV,
|
||||
- shaderc_convert_specific_stage(shaderc_closesthit_shader));
|
||||
- EXPECT_EQ(shaderc_util::Compiler::Stage::IntersectNV,
|
||||
- shaderc_convert_specific_stage(shaderc_intersection_shader));
|
||||
- EXPECT_EQ(shaderc_util::Compiler::Stage::MissNV,
|
||||
- shaderc_convert_specific_stage(shaderc_miss_shader));
|
||||
- EXPECT_EQ(shaderc_util::Compiler::Stage::CallableNV,
|
||||
- shaderc_convert_specific_stage(shaderc_callable_shader));
|
||||
- EXPECT_EQ(shaderc_util::Compiler::Stage::TaskNV,
|
||||
- shaderc_convert_specific_stage(shaderc_task_shader));
|
||||
- EXPECT_EQ(shaderc_util::Compiler::Stage::MeshNV,
|
||||
- shaderc_convert_specific_stage(shaderc_mesh_shader));
|
||||
-#endif
|
||||
}
|
||||
} // anonymous namespace
|
||||
diff --git a/libshaderc/src/shaderc_test.cc b/libshaderc/src/shaderc_test.cc
|
||||
index e68ebcb..93acc09 100644
|
||||
--- a/libshaderc/src/shaderc_test.cc
|
||||
+++ b/libshaderc/src/shaderc_test.cc
|
||||
@@ -1198,82 +1198,6 @@ TEST_F(CompileStringWithOptionsTest,
|
||||
shaderc_glsl_compute_shader, options_.get()));
|
||||
}
|
||||
|
||||
-#ifdef NV_EXTENSIONS
|
||||
-// task shader
|
||||
-TEST_F(CompileStringWithOptionsTest,
|
||||
- TargetEnvRespectedWhenCompilingVulkan1_0TaskShaderToVulkan1_0Succeeds) {
|
||||
- shaderc_compile_options_set_target_env(options_.get(),
|
||||
- shaderc_target_env_vulkan,
|
||||
- shaderc_env_version_vulkan_1_0);
|
||||
- EXPECT_TRUE(CompilesToValidSpv(compiler_, kGlslShaderTaskBarrier,
|
||||
- shaderc_glsl_task_shader, options_.get()));
|
||||
-}
|
||||
-
|
||||
-TEST_F(CompileStringWithOptionsTest,
|
||||
- TargetEnvRespectedWhenCompilingVulkan1_0TaskShaderToVulkan1_1Succeeds) {
|
||||
- shaderc_compile_options_set_target_env(options_.get(),
|
||||
- shaderc_target_env_vulkan,
|
||||
- shaderc_env_version_vulkan_1_1);
|
||||
- EXPECT_TRUE(CompilesToValidSpv(compiler_, kGlslShaderTaskBarrier,
|
||||
- shaderc_glsl_task_shader, options_.get()));
|
||||
-}
|
||||
-
|
||||
-TEST_F(CompileStringWithOptionsTest,
|
||||
- TargetEnvRespectedWhenCompilingVulkan1_1TaskShaderToVulkan1_0Fails) {
|
||||
- shaderc_compile_options_set_target_env(options_.get(),
|
||||
- shaderc_target_env_vulkan,
|
||||
- shaderc_env_version_vulkan_1_0);
|
||||
- EXPECT_FALSE(CompilesToValidSpv(compiler_, kGlslShaderTaskSubgroupBarrier,
|
||||
- shaderc_glsl_task_shader, options_.get()));
|
||||
-}
|
||||
-
|
||||
-TEST_F(CompileStringWithOptionsTest,
|
||||
- TargetEnvRespectedWhenCompilingVulkan1_1TaskShaderToVulkan1_1Succeeds) {
|
||||
- shaderc_compile_options_set_target_env(options_.get(),
|
||||
- shaderc_target_env_vulkan,
|
||||
- shaderc_env_version_vulkan_1_1);
|
||||
- EXPECT_TRUE(CompilesToValidSpv(compiler_, kGlslShaderTaskSubgroupBarrier,
|
||||
- shaderc_glsl_task_shader, options_.get()));
|
||||
-}
|
||||
-
|
||||
-// mesh shader
|
||||
-TEST_F(CompileStringWithOptionsTest,
|
||||
- TargetEnvRespectedWhenCompilingVulkan1_0MeshShaderToVulkan1_0Succeeds) {
|
||||
- shaderc_compile_options_set_target_env(options_.get(),
|
||||
- shaderc_target_env_vulkan,
|
||||
- shaderc_env_version_vulkan_1_0);
|
||||
- EXPECT_TRUE(CompilesToValidSpv(compiler_, kGlslShaderMeshBarrier,
|
||||
- shaderc_glsl_mesh_shader, options_.get()));
|
||||
-}
|
||||
-
|
||||
-TEST_F(CompileStringWithOptionsTest,
|
||||
- TargetEnvRespectedWhenCompilingVulkan1_0MeshShaderToVulkan1_1Succeeds) {
|
||||
- shaderc_compile_options_set_target_env(options_.get(),
|
||||
- shaderc_target_env_vulkan,
|
||||
- shaderc_env_version_vulkan_1_1);
|
||||
- EXPECT_TRUE(CompilesToValidSpv(compiler_, kGlslShaderMeshBarrier,
|
||||
- shaderc_glsl_mesh_shader, options_.get()));
|
||||
-}
|
||||
-
|
||||
-TEST_F(CompileStringWithOptionsTest,
|
||||
- TargetEnvRespectedWhenCompilingVulkan1_1MeshShaderToVulkan1_0Fails) {
|
||||
- shaderc_compile_options_set_target_env(options_.get(),
|
||||
- shaderc_target_env_vulkan,
|
||||
- shaderc_env_version_vulkan_1_0);
|
||||
- EXPECT_FALSE(CompilesToValidSpv(compiler_, kGlslShaderMeshSubgroupBarrier,
|
||||
- shaderc_glsl_mesh_shader, options_.get()));
|
||||
-}
|
||||
-
|
||||
-TEST_F(CompileStringWithOptionsTest,
|
||||
- TargetEnvRespectedWhenCompilingVulkan1_1MeshShaderToVulkan1_1Succeeds) {
|
||||
- shaderc_compile_options_set_target_env(options_.get(),
|
||||
- shaderc_target_env_vulkan,
|
||||
- shaderc_env_version_vulkan_1_1);
|
||||
- EXPECT_TRUE(CompilesToValidSpv(compiler_, kGlslShaderMeshSubgroupBarrier,
|
||||
- shaderc_glsl_mesh_shader, options_.get()));
|
||||
-}
|
||||
-#endif
|
||||
-
|
||||
TEST_F(CompileStringWithOptionsTest,
|
||||
DISABLED_TargetEnvIgnoredWhenPreprocessing) {
|
||||
// This test is disabled since some versions of glslang may refuse to compile
|
||||
diff --git a/libshaderc_util/include/libshaderc_util/compiler.h b/libshaderc_util/include/libshaderc_util/compiler.h
|
||||
index f36a97f..bbbab86 100644
|
||||
--- a/libshaderc_util/include/libshaderc_util/compiler.h
|
||||
+++ b/libshaderc_util/include/libshaderc_util/compiler.h
|
||||
@@ -171,40 +171,14 @@ class Compiler {
|
||||
Geometry,
|
||||
Fragment,
|
||||
Compute,
|
||||
-#ifdef NV_EXTENSIONS
|
||||
- RayGenNV,
|
||||
- IntersectNV,
|
||||
- AnyHitNV,
|
||||
- ClosestHitNV,
|
||||
- MissNV,
|
||||
- CallableNV,
|
||||
- TaskNV,
|
||||
- MeshNV,
|
||||
-#endif
|
||||
- StageEnd,
|
||||
};
|
||||
- enum { kNumStages = int(Stage::StageEnd) };
|
||||
+ enum { kNumStages = int(Stage::Compute) + 1 };
|
||||
|
||||
// Returns a std::array of all the Stage values.
|
||||
const std::array<Stage, kNumStages>& stages() const {
|
||||
- static std::array<Stage, kNumStages> values{{
|
||||
- Stage::Vertex,
|
||||
- Stage::TessEval,
|
||||
- Stage::TessControl,
|
||||
- Stage::Geometry,
|
||||
- Stage::Fragment,
|
||||
- Stage::Compute,
|
||||
-#ifdef NV_EXTENSIONS
|
||||
- Stage::RayGenNV,
|
||||
- Stage::IntersectNV,
|
||||
- Stage::AnyHitNV,
|
||||
- Stage::ClosestHitNV,
|
||||
- Stage::MissNV,
|
||||
- Stage::CallableNV,
|
||||
- Stage::TaskNV,
|
||||
- Stage::MeshNV,
|
||||
-#endif
|
||||
- }};
|
||||
+ static std::array<Stage, kNumStages> values{
|
||||
+ {Stage::Vertex, Stage::TessEval, Stage::TessControl, Stage::Geometry,
|
||||
+ Stage::Fragment, Stage::Compute}};
|
||||
return values;
|
||||
}
|
||||
|
||||
diff --git a/libshaderc_util/src/resources.cc b/libshaderc_util/src/resources.cc
|
||||
index 458a63f..1617b0a 100644
|
||||
--- a/libshaderc_util/src/resources.cc
|
||||
+++ b/libshaderc_util/src/resources.cc
|
||||
@@ -116,16 +116,6 @@ const TBuiltInResource kDefaultTBuiltInResource = {
|
||||
/*.maxCullDistances = */ 8, // ARB_cull_distance.
|
||||
/*.maxCombinedClipAndCullDistances = */ 8, // ARB_cull_distance.
|
||||
/*.maxSamples = */ 4,
|
||||
- /* .maxMeshOutputVerticesNV = */ 256,
|
||||
- /* .maxMeshOutputPrimitivesNV = */ 512,
|
||||
- /* .maxMeshWorkGroupSizeX_NV = */ 32,
|
||||
- /* .maxMeshWorkGroupSizeY_NV = */ 1,
|
||||
- /* .maxMeshWorkGroupSizeZ_NV = */ 1,
|
||||
- /* .maxTaskWorkGroupSizeX_NV = */ 32,
|
||||
- /* .maxTaskWorkGroupSizeY_NV = */ 1,
|
||||
- /* .maxTaskWorkGroupSizeZ_NV = */ 1,
|
||||
- /* .maxMeshViewCountNV = */ 4,
|
||||
-
|
||||
// This is the glslang TLimits structure.
|
||||
// It defines whether or not the following features are enabled.
|
||||
// We want them to all be enabled.
|
||||
--
|
||||
2.19.0
|
||||
|
||||
57
changelog
Normal file
57
changelog
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2021.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Sun May 30 11:26:42 CEST 2021 Robert-André Mauchin <zebob.m@gmail.com> - 2021.0-2
|
||||
- Update to 2021.0
|
||||
- Fix changelog
|
||||
- Close: rhbz#1952332
|
||||
|
||||
* Fri Mar 5 13:43:44 CET 2021 Robert-André Mauchin <zebob.m@gmail.com> - 2020.5-1
|
||||
- Update to 2020.5
|
||||
- Close: rhbz#1931006
|
||||
|
||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2020.4-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Sat Dec 26 15:21:39 CET 2020 Robert-André Mauchin <zebob.m@gmail.com> - 2020.4-1
|
||||
- Update to 2020.4
|
||||
- Close: rhbz#1906260
|
||||
|
||||
* Sat Dec 05 2020 Robert-André Mauchin <zebob.m@gmail.com> - 2020.3-1
|
||||
- Update to 2020.3
|
||||
- Close: rhbz#1875183
|
||||
|
||||
* Sat Aug 08 2020 Robert-André Mauchin <zebob.m@gmail.com> - 2020.2-1
|
||||
- Update to 2020.2
|
||||
|
||||
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2020.1-3
|
||||
- Second attempt - Rebuilt for
|
||||
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2020.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Wed Jun 17 20:15:27 CEST 2020 Robert-André Mauchin <zebob.m@gmail.com> - 2020.1-1
|
||||
- Update to 2020.1
|
||||
|
||||
* Sun Feb 02 20:53:01 CET 2020 Robert-André Mauchin <zebob.m@gmail.com> - 2019.1-1
|
||||
- Update to 2019.1
|
||||
|
||||
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2019.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2019.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Mon Jun 10 00:18:18 CEST 2019 Robert-André Mauchin <zebob.m@gmail.com> - 2019.0-1
|
||||
- Release 2019.0
|
||||
|
||||
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2018.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Wed Oct 03 2018 Robert-André Mauchin <zebob.m@gmail.com> - 2018.0-1
|
||||
- Release 2018.0
|
||||
|
||||
* Mon Sep 24 2018 Robert-André Mauchin <zebob.m@gmail.com> - 2017.2-1
|
||||
- Initial build
|
||||
|
||||
24
glslang_linker_flags.patch
Normal file
24
glslang_linker_flags.patch
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
--- a/libshaderc_util/CMakeLists.txt
|
||||
+++ b/libshaderc_util/CMakeLists.txt
|
||||
@@ -47,7 +47,7 @@ add_definitions(-DENABLE_HLSL)
|
||||
find_package(Threads)
|
||||
target_link_libraries(shaderc_util PRIVATE
|
||||
glslang SPIRV
|
||||
- SPIRV-Tools-opt ${CMAKE_THREAD_LIBS_INIT})
|
||||
+ SPIRV-Tools-opt MachineIndependent GenericCodeGen ${CMAKE_THREAD_LIBS_INIT})
|
||||
|
||||
shaderc_add_tests(
|
||||
TEST_PREFIX shaderc_util
|
||||
|
||||
--- a/glslc/CMakeLists.txt
|
||||
+++ b/glslc/CMakeLists.txt
|
||||
@@ -43,7 +43,7 @@ if (SHADERC_ENABLE_WGSL_OUTPUT)
|
||||
endif(SHADERC_ENABLE_WGSL_OUTPUT)
|
||||
|
||||
target_link_libraries(glslc PRIVATE
|
||||
- glslang SPIRV # Glslang libraries
|
||||
+ glslang SPIRV MachineIndependent GenericCodeGen # Glslang libraries
|
||||
$<$<BOOL:${SHADERC_ENABLE_WGSL_OUTPUT}>:libtint> # Tint libraries, optional
|
||||
shaderc_util shaderc # internal Shaderc libraries
|
||||
${CMAKE_THREAD_LIBS_INIT})
|
||||
|
||||
104
shaderc.spec
104
shaderc.spec
|
|
@ -1,64 +1,52 @@
|
|||
# Release 2018.0
|
||||
%global commit 7d8582bb10c94889f0fc603cb10728faa58b93e1
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
%global snapshotdate 20181003
|
||||
%global gitversion v2018.0
|
||||
|
||||
# Need to keep this in sync with spirv-tools
|
||||
%global spirv_commit 26a698c34788bb69123a1f3789970a16cf4d9641
|
||||
# Glslang revision from packaged version
|
||||
%global glslang_version d5f08ae5c5a9a45165578445cbd0f9adf0223448
|
||||
|
||||
Name: shaderc
|
||||
Version: 2018.0
|
||||
Release: 2%{?dist}
|
||||
Summary: A collection of tools, libraries, and tests for Vulkan shader compilation
|
||||
Version: 2026.2
|
||||
Release: %autorelease
|
||||
Summary: Collection of tools, libraries, and tests for Vulkan shader compilation
|
||||
|
||||
License: ASL 2.0
|
||||
License: Apache-2.0
|
||||
URL: https://github.com/google/shaderc
|
||||
Source0: %url/archive/%{commit}/%{name}-%{shortcommit}.tar.gz
|
||||
|
||||
# https://github.com/google/shaderc/pull/463
|
||||
Patch0: https://patch-diff.githubusercontent.com/raw/google/shaderc/pull/463.patch#/0001-Fix-the-link-order-of-libglslang-and-libHLSL.patch
|
||||
Source: %{url}/archive/%{glslang_version}.tar.gz
|
||||
# Patch to unbundle 3rd party code
|
||||
Patch1: 0001-Drop-third-party-code-in-CMakeLists.txt.patch
|
||||
# SPV_NV_mesh_shader is only available in theGIT master of glslang
|
||||
# Delaying inclusion until neyt glslang release
|
||||
Patch2: 0001-Revert-Add-support-for-SPV_NV_mesh_shader.patch
|
||||
Patch: 0001-Drop-third-party-code-in-CMakeLists.txt.patch
|
||||
Patch: glslang_linker_flags.patch
|
||||
|
||||
BuildRequires: cmake3
|
||||
BuildRequires: cmake
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: ninja-build
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: glslang-devel
|
||||
BuildRequires: spirv-headers-devel
|
||||
BuildRequires: sed
|
||||
BuildRequires: spirv-tools
|
||||
|
||||
BuildRequires: glslang-devel
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: spirv-headers-devel
|
||||
BuildRequires: spirv-tools-devel
|
||||
|
||||
%description
|
||||
A collection of tools, libraries and tests for shader compilation.
|
||||
A collection of tools, libraries and tests for shader compilation.
|
||||
|
||||
Shaderc aims to to provide:
|
||||
- a command line compiler with GCC- and Clang-like usage, for better
|
||||
- a command line compiler with GCC- and Clang-like usage, for better
|
||||
integration with build systems
|
||||
- an API where functionality can be added without breaking existing clients
|
||||
- an API supporting standard concurrency patterns across multiple
|
||||
- an API supporting standard concurrency patterns across multiple
|
||||
operating systems
|
||||
- increased functionality such as file #include support
|
||||
|
||||
|
||||
%package -n glslc
|
||||
Summary: A command line compiler for GLSL/HLSL to SPIR-V
|
||||
|
||||
%description -n glslc
|
||||
A command line compiler for GLSL/HLSL to SPIR-V.
|
||||
|
||||
|
||||
%package -n libshaderc
|
||||
Summary: A library for compiling shader strings into SPIR-V
|
||||
|
||||
%description -n libshaderc
|
||||
A library for compiling shader strings into SPIR-V.
|
||||
|
||||
|
||||
%package -n libshaderc-devel
|
||||
Summary: Development files for libshaderc
|
||||
Requires: libshaderc%{?_isa} = %{version}-%{release}
|
||||
|
|
@ -68,7 +56,6 @@ A library for compiling shader strings into SPIR-V.
|
|||
|
||||
Development files for libshaderc.
|
||||
|
||||
|
||||
%package -n libshaderc-static
|
||||
Summary: A library for compiling shader strings into SPIR-V (static libraries)
|
||||
|
||||
|
|
@ -77,74 +64,61 @@ A library for compiling shader strings into SPIR-V.
|
|||
|
||||
Static libraries for libshaderc.
|
||||
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n %{name}-%{commit}
|
||||
%autosetup -p1 -n %{name}-%{glslang_version}
|
||||
|
||||
rm -rf third_party
|
||||
rm -r third_party
|
||||
|
||||
# Stolen from Gentoo
|
||||
# Create build-version.inc since we want to use our packaged
|
||||
# Create build-version.inc since we want to use our packaged
|
||||
# SPIRV-Tools and glslang
|
||||
echo \"shaderc $(grep -m1 -o '^v[[:digit:]]\{4\}\.[[:digit:]]\(-dev\)\?' CHANGES) %{gitversion}\" \
|
||||
sed -i -e '/build-version/d' glslc/CMakeLists.txt
|
||||
echo \"shaderc $(grep -m1 -o '^v[[:digit:]]\{4\}\.[[:digit:]]\(-dev\)\? [[:digit:]]\{4\}-[[:digit:]]\{2\}-[[:digit:]]\{2\}$' CHANGES)\" \
|
||||
> glslc/src/build-version.inc
|
||||
echo \"spirv-tools $(grep -m1 -o '^v[[:digit:]]\{4\}\.[[:digit:]]\(-dev\)\?' /usr/share/doc/spirv-tools/CHANGES) %{spirv_commit}\" \
|
||||
echo \"spirv-tools $(grep -m1 -o '^v[[:digit:]]\{4\}\.[[:digit:]]\(-dev\)\? [[:digit:]]\{4\}-[[:digit:]]\{2\}-[[:digit:]]\{2\}$' /usr/share/doc/spirv-tools/CHANGES)\" \
|
||||
>> glslc/src/build-version.inc
|
||||
echo \"glslang \'\'\" >> glslc/src/build-version.inc
|
||||
echo \"glslang %{glslang_version}\" >> glslc/src/build-version.inc
|
||||
|
||||
# Point to correct include
|
||||
sed -i 's|SPIRV/GlslangToSpv.h|glslang/SPIRV/GlslangToSpv.h|' libshaderc_util/src/compiler.cc
|
||||
|
||||
%build
|
||||
mkdir %_target_platform
|
||||
cd %_target_platform
|
||||
# We disable the tests because they don't work with our unbundling of 3rd party.
|
||||
# See https://github.com/google/shaderc/issues/470
|
||||
%cmake3 -DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
-DCMAKE_SKIP_RPATH=True \
|
||||
-DSHADERC_SKIP_TESTS=True \
|
||||
-DPYTHON_EXE=%{__python3} \
|
||||
-GNinja ..
|
||||
%ninja_build
|
||||
|
||||
%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
-DCMAKE_SKIP_RPATH=True \
|
||||
-DSHADERC_SKIP_TESTS=True \
|
||||
-DPYTHON_EXECUTABLE=%{python3} \
|
||||
-GNinja
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%ninja_install -C %_target_platform
|
||||
|
||||
%cmake_install
|
||||
|
||||
%check
|
||||
ctest -V
|
||||
|
||||
%ctest
|
||||
|
||||
%files -n glslc
|
||||
%doc glslc/README.asciidoc
|
||||
%license LICENSE
|
||||
%{_bindir}/glslc
|
||||
|
||||
|
||||
%files -n libshaderc
|
||||
%doc AUTHORS CHANGES CONTRIBUTORS README.md
|
||||
%license LICENSE
|
||||
%{_libdir}/libshaderc_shared.so.1*
|
||||
|
||||
|
||||
%files -n libshaderc-devel
|
||||
%{_includedir}/%{name}/
|
||||
%{_libdir}/libshaderc_shared.so
|
||||
|
||||
%{_libdir}/pkgconfig/shaderc.pc
|
||||
|
||||
%files -n libshaderc-static
|
||||
%license LICENSE
|
||||
%{_libdir}/libshaderc.a
|
||||
%{_libdir}/libshaderc_combined.a
|
||||
%{_libdir}/libshaderc_util.a
|
||||
|
||||
%{_libdir}/pkgconfig/shaderc_static.pc
|
||||
%{_libdir}/pkgconfig/shaderc_combined.pc
|
||||
|
||||
%changelog
|
||||
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2018.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Wed Oct 03 2018 Robert-André Mauchin <zebob.m@gmail.com> - 2018.0-1
|
||||
- Release 2018.0
|
||||
|
||||
* Mon Sep 24 2018 Robert-André Mauchin <zebob.m@gmail.com> - 2017.2-1
|
||||
- Initial build
|
||||
|
||||
%autochangelog
|
||||
|
|
|
|||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (shaderc-7d8582b.tar.gz) = 20c77170265bb5dba61a47df7c369fdbece1d7a457f78f04c0a1ee4c728802b673857da8f91456de35627832781d2064ba2daf2b6859a4f1b14bfd53fc6e8588
|
||||
SHA512 (d5f08ae5c5a9a45165578445cbd0f9adf0223448.tar.gz) = 91223ef1c85a8e7a5dff8b220e816afe278830f9fb3f7a15e88fd814995b2ea453aaba0370d22102520e9c4acd375436ff79b2ddd6cdbf03aab72541523d5592
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue