From 8035bbb52780e305965be9ddc2986f1e3d0013f1 Mon Sep 17 00:00:00 2001 From: Alejandro Saucedo Date: Sat, 20 Feb 2021 18:40:19 +0000 Subject: [PATCH] glslang no longer optional --- .github/workflows/cpp_tests.yml | 4 +-- CMakeLists.txt | 13 +++----- Makefile | 3 -- src/CMakeLists.txt | 53 ++++++++++++++++----------------- 4 files changed, 30 insertions(+), 43 deletions(-) diff --git a/.github/workflows/cpp_tests.yml b/.github/workflows/cpp_tests.yml index e8b42998f..ecb0d419e 100644 --- a/.github/workflows/cpp_tests.yml +++ b/.github/workflows/cpp_tests.yml @@ -23,9 +23,7 @@ jobs: -DKOMPUTE_OPT_INSTALL=0 \ -DKOMPUTE_OPT_REPO_SUBMODULE_BUILD=1 \ -DKOMPUTE_OPT_BUILD_TESTS=1 \ - -DKOMPUTE_OPT_ENABLE_SPDLOG=1 \ - -DSHADERC_SKIP_TESTS=1 \ - -DSPDLOG_INSTALL=1 + -DKOMPUTE_OPT_ENABLE_SPDLOG=1 - name: build-cpp run: | make mk_build_tests diff --git a/CMakeLists.txt b/CMakeLists.txt index 76aa13073..d4b04c527 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -16,7 +16,6 @@ option(KOMPUTE_OPT_INSTALL "Enable if you want to enable installation" 0) # Build options option(KOMPUTE_OPT_BUILD_PYTHON "Enable if you want to build python bindings" 0) option(KOMPUTE_OPT_ENABLE_SPDLOG "Extra compile flags for Kompute, see docs for full list" 0) -option(KOMPUTE_OPT_DISABLE_GLSLANG "Skip compilation of glslang utilities" 0) option(KOMPUTE_OPT_REPO_SUBMODULE_BUILD, "Use the submodule repos instead of external package manager" 0) option(KOMPUTE_OPT_ANDOID_BUILD "Enable android compilation flags required" 0) option(KOMPUTE_OPT_DISABLE_VK_DEBUG_LAYERS "Explicitly disable debug layers even on debug" 0) @@ -43,14 +42,10 @@ if(KOMPUTE_OPT_DISABLE_VK_DEBUG_LAYERS) set(KOMPUTE_EXTRA_CXX_FLAGS "${KOMPUTE_EXTRA_CXX_FLAGS} -DKOMPUTE_DISABLE_VK_DEBUG_LAYERS=1") endif() -if(KOMPUTE_OPT_DISABLE_GLSLANG) - set(KOMPUTE_EXTRA_CXX_FLAGS "${KOMPUTE_EXTRA_CXX_FLAGS} -DKOMPUTE_DISABLE_GLSLANG=1") -else() - if(KOMPUTE_OPT_INSTALL) - # Enable install parameters for glslang (overrides parameters passed) - set(ENABLE_GLSLANG_INSTALL ON CACHE BOOL "Enables install of glslang" FORCE) - set(BUILD_SHARED_LIBS ON CACHE BOOL "Enables build of shared libraries" FORCE) - endif() +if(KOMPUTE_OPT_INSTALL) + # Enable install parameters for glslang (overrides parameters passed) + set(ENABLE_GLSLANG_INSTALL ON CACHE BOOL "Enables install of glslang" FORCE) + set(BUILD_SHARED_LIBS ON CACHE BOOL "Enables build of shared libraries" FORCE) endif() set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG=1 ${KOMPUTE_EXTRA_CXX_FLAGS} -DUSE_DEBUG_EXTENTIONS") diff --git a/Makefile b/Makefile index 37abad73b..8f39a254a 100644 --- a/Makefile +++ b/Makefile @@ -68,7 +68,6 @@ mk_cmake: -DKOMPUTE_OPT_BUILD_SHADERS=1 \ -DKOMPUTE_OPT_BUILD_SINGLE_HEADER=1 \ -DKOMPUTE_OPT_ENABLE_SPDLOG=1 \ - -DSPDLOG_INSTALL=1 \ -DKOMPUTE_OPT_CODE_COVERAGE=1 \ -G "Unix Makefiles" @@ -122,8 +121,6 @@ vs_cmake: -DKOMPUTE_OPT_BUILD_SHADERS=1 \ -DKOMPUTE_OPT_BUILD_SINGLE_HEADER=1 \ -DKOMPUTE_OPT_ENABLE_SPDLOG=1 \ - -DSPDLOG_INSTALL=1 \ - -DSHADERC_SKIP_TESTS=1 \ -G "Visual Studio 16 2019" vs_build_all: diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 567e18778..9a1c10892 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -109,38 +109,35 @@ endif() #################### GLSLANG ####################### ##################################################### -if(NOT KOMPUTE_OPT_DISABLE_GLSLANG) +if(KOMPUTE_OPT_REPO_SUBMODULE_BUILD) + add_subdirectory(${PROJECT_SOURCE_DIR}/external/glslang + ${CMAKE_CURRENT_BINARY_DIR}/kompute_glslang) - if(KOMPUTE_OPT_REPO_SUBMODULE_BUILD) - add_subdirectory(${PROJECT_SOURCE_DIR}/external/glslang - ${CMAKE_CURRENT_BINARY_DIR}/kompute_glslang) + target_include_directories( + kompute PRIVATE + ${PROJECT_SOURCE_DIR}/external/glslang) - target_include_directories( - kompute PRIVATE - ${PROJECT_SOURCE_DIR}/external/glslang) + target_link_libraries(kompute + # Not including hlsl support + # HLSL + # glslang includes OGLCompiler, OSDependent, MachineIndependent + glslang + SPIRV + glslang-default-resource-limits) +else() + find_package(glslang CONFIG REQUIRED) - target_link_libraries(kompute - # Not including hlsl support - # HLSL - # glslang includes OGLCompiler, OSDependent, MachineIndependent - glslang - SPIRV - glslang-default-resource-limits) - else() - find_package(glslang CONFIG REQUIRED) + target_include_directories( + kompute PRIVATE + ${GLSLANG_GENERATED_INCLUDEDIR}) - target_include_directories( - kompute PRIVATE - ${GLSLANG_GENERATED_INCLUDEDIR}) - - target_link_libraries(kompute - # Not including hlsl support - # glslang::HLSL - # Adding explicit dependencies to match above - glslang - SPIRV - glslang-default-resource-limits) - endif() + target_link_libraries(kompute + # Not including hlsl support + # glslang::HLSL + # Adding explicit dependencies to match above + glslang + SPIRV + glslang-default-resource-limits) endif()