From b856a1bd4123fe7d5b2b60964997862be9dd448e Mon Sep 17 00:00:00 2001 From: loanselot1 Date: Thu, 29 Apr 2021 23:42:29 +0300 Subject: [PATCH] Update build files --- cmake/3rdparty/glslang.cmake | 7 +++++-- cmake/examples.cmake | 7 ++++++- cmake/shared.cmake | 11 ++++++----- cmake/tools/shaderc.cmake | 2 +- generated/shader.cpp.in | 4 ++++ generated/shader_spirv.cpp.in | 1 - 6 files changed, 22 insertions(+), 10 deletions(-) create mode 100644 generated/shader.cpp.in delete mode 100644 generated/shader_spirv.cpp.in diff --git a/cmake/3rdparty/glslang.cmake b/cmake/3rdparty/glslang.cmake index f58c52bc..df249c01 100644 --- a/cmake/3rdparty/glslang.cmake +++ b/cmake/3rdparty/glslang.cmake @@ -15,7 +15,7 @@ endif() file( GLOB GLSLANG_SOURCES ${BGFX_DIR}/3rdparty/glslang/glslang/GenericCodeGen/*.cpp ${BGFX_DIR}/3rdparty/glslang/glslang/MachineIndependent/*.cpp - ${BGFX_DIR}/3rdparty/glslang/glslang/MachineIndependent/preprocessor/*.cpp + ${BGFX_DIR}/3rdparty/glslang/glslang/MachineIndependent/preprocessor/*.cpp ${BGFX_DIR}/3rdparty/glslang/glslang/HLSL/*.cpp ${BGFX_DIR}/3rdparty/glslang/hlsl/*.cpp ${BGFX_DIR}/3rdparty/glslang/SPIRV/*.cpp @@ -35,6 +35,9 @@ target_include_directories( glslang PUBLIC ${BGFX_DIR}/3rdparty/glslang ${BGFX_DIR}/3rdparty/glslang/glslang/Include ${BGFX_DIR}/3rdparty/glslang/glslang/Public + + PRIVATE + ${BGFX_DIR}/3rdparty ) set_target_properties( glslang PROPERTIES FOLDER "bgfx/3rdparty" ) @@ -92,4 +95,4 @@ endif() target_compile_definitions( glslang PRIVATE ENABLE_OPT=1 ENABLE_HLSL=1 -) +) \ No newline at end of file diff --git a/cmake/examples.cmake b/cmake/examples.cmake index 90769324..dbe7d6f2 100755 --- a/cmake/examples.cmake +++ b/cmake/examples.cmake @@ -268,7 +268,12 @@ if( BGFX_BUILD_EXAMPLES ) # 37-gpudrivenrendering 38-bloom 39-assao -# 40-svt + 40-svt +# 41-tess + 42-bunnylod + 43-denoise + 44-sss + 45-bokeh ) foreach( EXAMPLE ${BGFX_EXAMPLES} ) diff --git a/cmake/shared.cmake b/cmake/shared.cmake index ded8a534..95975975 100644 --- a/cmake/shared.cmake +++ b/cmake/shared.cmake @@ -14,11 +14,12 @@ configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/generated/vertexlayout.cpp.in target_sources( bgfx-vertexlayout INTERFACE ${CMAKE_CURRENT_BINARY_DIR}/generated/vertexlayout.cpp ) target_include_directories( bgfx-vertexlayout INTERFACE ${BGFX_DIR}/include ) -add_library( bgfx-shader-spirv INTERFACE ) -configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/generated/shader_spirv.cpp.in - ${CMAKE_CURRENT_BINARY_DIR}/generated/shader_spirv.cpp ) -target_sources( bgfx-shader-spirv INTERFACE ${CMAKE_CURRENT_BINARY_DIR}/generated/shader_spirv.cpp ) -target_include_directories( bgfx-shader-spirv INTERFACE ${BGFX_DIR}/include ) +add_library( bgfx-shader INTERFACE ) + +configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/generated/shader.cpp.in + ${CMAKE_CURRENT_BINARY_DIR}/generated/shader.cpp ) +target_sources( bgfx-shader INTERFACE ${CMAKE_CURRENT_BINARY_DIR}/generated/shader.cpp ) +target_include_directories( bgfx-shader INTERFACE ${BGFX_DIR}/include ) add_library( bgfx-bounds INTERFACE ) configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/generated/bounds.cpp.in diff --git a/cmake/tools/shaderc.cmake b/cmake/tools/shaderc.cmake index 92f23d01..f3014e1b 100644 --- a/cmake/tools/shaderc.cmake +++ b/cmake/tools/shaderc.cmake @@ -20,7 +20,7 @@ include( cmake/3rdparty/webgpu.cmake ) add_executable( shaderc ${BGFX_DIR}/tools/shaderc/shaderc.cpp ${BGFX_DIR}/tools/shaderc/shaderc.h ${BGFX_DIR}/tools/shaderc/shaderc_glsl.cpp ${BGFX_DIR}/tools/shaderc/shaderc_hlsl.cpp ${BGFX_DIR}/tools/shaderc/shaderc_pssl.cpp ${BGFX_DIR}/tools/shaderc/shaderc_spirv.cpp ${BGFX_DIR}/tools/shaderc/shaderc_metal.cpp ) target_compile_definitions( shaderc PRIVATE "-D_CRT_SECURE_NO_WARNINGS" ) set_target_properties( shaderc PROPERTIES FOLDER "bgfx/tools" ) -target_link_libraries(shaderc PRIVATE bx bimg bgfx-vertexlayout bgfx-shader-spirv fcpp glsl-optimizer glslang spirv-cross spirv-tools webgpu) +target_link_libraries(shaderc PRIVATE bx bimg bgfx-vertexlayout bgfx-shader fcpp glsl-optimizer glslang spirv-cross spirv-tools webgpu) if( BGFX_CUSTOM_TARGETS ) add_dependencies( tools shaderc ) diff --git a/generated/shader.cpp.in b/generated/shader.cpp.in new file mode 100644 index 00000000..9260c653 --- /dev/null +++ b/generated/shader.cpp.in @@ -0,0 +1,4 @@ +#include "@BGFX_DIR@/src/shader.cpp" +#include "@BGFX_DIR@/src/shader_dx9bc.cpp" +#include "@BGFX_DIR@/src/shader_dxbc.cpp" +#include "@BGFX_DIR@/src/shader_spirv.cpp" \ No newline at end of file diff --git a/generated/shader_spirv.cpp.in b/generated/shader_spirv.cpp.in deleted file mode 100644 index 89feeb02..00000000 --- a/generated/shader_spirv.cpp.in +++ /dev/null @@ -1 +0,0 @@ -#include "@BGFX_DIR@/src/shader_spirv.cpp"