diff options
author | dan sinclair <dj2@everburning.com> | 2018-12-10 15:49:25 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-10 15:49:25 -0500 |
commit | 6a03f7936fd3f0af55fef312edcc314ad234f42d (patch) | |
tree | 9af12d7c23b602e2c84412d0a90143269ee87516 /src/CMakeLists.txt | |
parent | 18f5ae987730381a79b900cdaebcb613362b0410 (diff) | |
download | amber-6a03f7936fd3f0af55fef312edcc314ad234f42d.tar.gz |
Make spirv-tools, googletest and shaderc build optional (#144)
This CL allows spriv-tools, googletest and shaderc to be disabled at
build time. (Disabling spriv-tools will also disable shaderc).
Diffstat (limited to 'src/CMakeLists.txt')
-rw-r--r-- | src/CMakeLists.txt | 44 |
1 files changed, 27 insertions, 17 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index d4b91ad..6ef2910 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -56,7 +56,15 @@ endif() add_library(libamber ${AMBER_SOURCES}) amber_default_compile_options(libamber) set_target_properties(libamber PROPERTIES OUTPUT_NAME "amber") -target_link_libraries(libamber SPIRV-Tools shaderc SPIRV) + +if (${AMBER_ENABLE_SPIRV_TOOLS}) + target_link_libraries(libamber SPIRV-Tools) +endif() + +if (${AMBER_ENABLE_SHADERC}) + target_link_libraries(libamber shaderc SPIRV) +endif() + if (NOT MSVC AND NOT ANDROID) target_link_libraries(libamber pthread) endif() @@ -68,7 +76,8 @@ if (${Dawn_FOUND}) target_link_libraries(libamber libamberenginedawn) endif() -set(TEST_SRCS +if (${AMBER_ENABLE_TESTS}) + set(TEST_SRCS amberscript/parser_test.cc amberscript/pipeline_test.cc amberscript/script_test.cc @@ -85,24 +94,25 @@ set(TEST_SRCS vkscript/format_parser_test.cc vkscript/parser_test.cc vkscript/section_parser_test.cc -) + ) -if (${Vulkan_FOUND}) + if (${Vulkan_FOUND}) list(APPEND TEST_SRCS vulkan/bit_copy_test.cc) -endif() -if (${Dawn_FOUND}) + endif() + if (${Dawn_FOUND}) list(APPEND TEST_SRCS dawn/pipeline_info_test.cc) -endif() + endif() -add_executable(amber_unittests ${TEST_SRCS}) + add_executable(amber_unittests ${TEST_SRCS}) -if (NOT MSVC) - target_compile_options(amber_unittests PRIVATE - -Wno-global-constructors) -endif() + if (NOT MSVC) + target_compile_options(amber_unittests PRIVATE + -Wno-global-constructors) + endif() -target_include_directories(amber_unittests PRIVATE - ${gmock_SOURCE_DIR}/include) -target_link_libraries(amber_unittests libamber gmock_main) -amber_default_compile_options(amber_unittests) -add_test(NAME amber_unittests COMMAND amber_unittests) + target_include_directories(amber_unittests PRIVATE + ${gmock_SOURCE_DIR}/include) + target_link_libraries(amber_unittests libamber gmock_main) + amber_default_compile_options(amber_unittests) + add_test(NAME amber_unittests COMMAND amber_unittests) +endif() |