Release 2019.0
Signed-off-by: Robert-André Mauchin <zebob.m@gmail.com>
This commit is contained in:
parent
f8b120b21d
commit
81471bb086
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,2 +1,3 @@
|
||||
/shaderc-7a23a01.tar.gz
|
||||
/shaderc-7d8582b.tar.gz
|
||||
/shaderc-34c412f.tar.gz
|
||||
|
@ -1,36 +1,24 @@
|
||||
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-34c412f21f945f4ef6ed4453f8b5dc4bb9d739e4/CMakeLists.txt.unbundle shaderc-34c412f21f945f4ef6ed4453f8b5dc4bb9d739e4/CMakeLists.txt
|
||||
--- shaderc-34c412f21f945f4ef6ed4453f8b5dc4bb9d739e4/CMakeLists.txt.unbundle 2019-06-10 00:30:41.954316517 +0200
|
||||
+++ shaderc-34c412f21f945f4ef6ed4453f8b5dc4bb9d739e4/CMakeLists.txt 2019-06-10 01:10:11.672758769 +0200
|
||||
@@ -70,7 +70,6 @@ endif(MSVC)
|
||||
|
||||
# Configure subdirectories.
|
||||
# We depend on these for later projects, so they should come first.
|
||||
-add_subdirectory(third_party)
|
||||
|
||||
add_subdirectory(libshaderc_util)
|
||||
add_subdirectory(libshaderc)
|
||||
if(SHADERC_ENABLE_SPVC)
|
||||
add_subdirectory(libshaderc_spvc)
|
||||
@@ -81,12 +80,6 @@ add_subdirectory(libshaderc)
|
||||
add_subdirectory(glslc)
|
||||
add_subdirectory(examples)
|
||||
|
||||
-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}
|
||||
- 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
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
|
@ -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
|
||||
|
36
shaderc.spec
36
shaderc.spec
@ -1,15 +1,16 @@
|
||||
# Release 2018.0
|
||||
%global commit 7d8582bb10c94889f0fc603cb10728faa58b93e1
|
||||
# Release 2019.0
|
||||
%global commit 34c412f21f945f4ef6ed4453f8b5dc4bb9d739e4
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
%global snapshotdate 20181003
|
||||
%global gitversion v2018.0
|
||||
%global snapshotdate 20190609
|
||||
%global gitversion v2019.0
|
||||
|
||||
# Need to keep this in sync with spirv-tools
|
||||
%global spirv_commit 26a698c34788bb69123a1f3789970a16cf4d9641
|
||||
%global spirv_commit 2297d4a3dfcbfd2a8b4312fab055ae26e3289fd3
|
||||
%global spirv_version v2019.1
|
||||
|
||||
Name: shaderc
|
||||
Version: 2018.0
|
||||
Release: 2%{?dist}
|
||||
Version: 2019.0
|
||||
Release: 1%{?dist}
|
||||
Summary: A collection of tools, libraries, and tests for Vulkan shader compilation
|
||||
|
||||
License: ASL 2.0
|
||||
@ -20,9 +21,6 @@ Source0: %url/archive/%{commit}/%{name}-%{shortcommit}.tar.gz
|
||||
Patch0: https://patch-diff.githubusercontent.com/raw/google/shaderc/pull/463.patch#/0001-Fix-the-link-order-of-libglslang-and-libHLSL.patch
|
||||
# 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
|
||||
|
||||
BuildRequires: cmake3
|
||||
BuildRequires: gcc-c++
|
||||
@ -34,13 +32,13 @@ BuildRequires: spirv-tools
|
||||
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
|
||||
|
||||
@ -84,11 +82,11 @@ Static libraries for libshaderc.
|
||||
rm -rf 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}\" \
|
||||
> 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\)\?' /usr/share/doc/spirv-tools/CHANGES) %{spirv_version}\" \
|
||||
>> glslc/src/build-version.inc
|
||||
echo \"glslang \'\'\" >> glslc/src/build-version.inc
|
||||
|
||||
@ -129,16 +127,22 @@ ctest -V
|
||||
%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
|
||||
* 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
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (shaderc-7d8582b.tar.gz) = 20c77170265bb5dba61a47df7c369fdbece1d7a457f78f04c0a1ee4c728802b673857da8f91456de35627832781d2064ba2daf2b6859a4f1b14bfd53fc6e8588
|
||||
SHA512 (shaderc-34c412f.tar.gz) = bbc17c350e094230c53b22f80eef95d9dfac3716d3653764862fffe210f3d0fbaa60f204c9aa93e91390f60b4a8a5f153d940ba1e450eff89ff53b587f295ce7
|
||||
|
Loading…
Reference in New Issue
Block a user