Skip to content

Commit 3b11b02

Browse files
authored
cmake: Allow external control of test and install options (KhronosGroup#418)
Test and install by default when the project is top level. In any case, they can be controlled via CMake variables SPIRV_HEADERS_ENABLE_TEST and SPIRV_HEADERS_ENABLE_INSTALL Rename the simple test target to spirv_headers_simple_test
1 parent d3c2a6f commit 3b11b02

File tree

2 files changed

+10
-8
lines changed

2 files changed

+10
-8
lines changed

CMakeLists.txt

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,14 @@ add_library(SPIRV-Headers INTERFACE)
3535
add_library(SPIRV-Headers::SPIRV-Headers ALIAS SPIRV-Headers)
3636
target_include_directories(SPIRV-Headers INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>)
3737

38-
if (PROJECT_IS_TOP_LEVEL)
39-
option(BUILD_TESTS "Build the tests")
40-
if (BUILD_TESTS)
41-
add_subdirectory(tests)
42-
endif()
38+
option(SPIRV_HEADERS_ENABLE_TESTS "Test SPIRV-Headers" ${PROJECT_IS_TOP_LEVEL})
39+
option(SPIRV_HEADERS_ENABLE_INSTALL "Install SPIRV-Headers" ${PROJECT_IS_TOP_LEVEL})
40+
41+
if(SPIRV_HEADERS_ENABLE_TESTS)
42+
add_subdirectory(tests)
43+
endif()
4344

45+
if(SPIRV_HEADERS_ENABLE_INSTALL)
4446
include(GNUInstallDirs)
4547
include(CMakePackageConfigHelpers)
4648

tests/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@
2424
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
2525
# MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
2626

27-
add_library(simple_test STATIC)
27+
add_library(spirv_headers_simple_test STATIC)
2828

29-
target_sources(simple_test PRIVATE
29+
target_sources(spirv_headers_simple_test PRIVATE
3030
example.cpp
3131
)
3232

33-
target_link_libraries(simple_test PRIVATE
33+
target_link_libraries(spirv_headers_simple_test PRIVATE
3434
SPIRV-Headers::SPIRV-Headers
3535
)
3636

0 commit comments

Comments
 (0)