@@ -23,37 +23,45 @@ install(DIRECTORY include/vsync DESTINATION include)
23
23
install (FILES vmm.cat DESTINATION share/vsync/ )
24
24
install (TARGETS vatomic EXPORT ${PROJECT_TARGETS} )
25
25
26
- # Atomic templating
27
- add_subdirectory (template )
28
- add_subdirectory (tmplr )
29
-
30
- # Basic format sanitization
31
- add_custom_target (
32
- sanitize-vatomic
33
- COMMAND ${PROJECT_SOURCE_DIR} /scripts/sanitize.sh include
34
- COMMAND ${PROJECT_SOURCE_DIR} /scripts/sanitize.sh test
35
- COMMAND ${PROJECT_SOURCE_DIR} /scripts/license-check.sh
36
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} )
37
-
38
- # CMake formating checks
39
- set (CMAKE_FMT_CMD ${PROJECT_SOURCE_DIR} /scripts/cmake-format.sh
40
- ${CMAKE_SOURCE_DIR} )
41
- set (CMAKE_STYLE_FILE ${PROJECT_SOURCE_DIR} /.cmake-format )
42
- add_custom_target (cmake-format-apply COMMAND env STYLE=${CMAKE_STYLE_FILE}
43
- SILENT=true ${CMAKE_FMT_CMD} )
44
- # Clang formating checks
45
- set (CLANG_FMT_CMD ${PROJECT_SOURCE_DIR} /scripts/clang-format.sh
46
- ${CMAKE_SOURCE_DIR} )
47
- set (CLANG_STYLE_FILE ${PROJECT_SOURCE_DIR} /.clang-format )
48
- add_custom_target (clang-format-apply COMMAND env STYLE=${CLANG_STYLE_FILE}
49
- SILENT=true ${CLANG_FMT_CMD} )
50
- add_dependencies (clang-format-apply sanitize-vatomic )
51
-
52
- # General diff check for pipeline
53
- add_custom_target (diff-check COMMAND git --no-pager diff --exit-code )
54
-
55
- # Enable testing and verification only if this is the top level project
26
+ # Enable development targets only if this is the top level project
56
27
if (CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME )
28
+ set (VATOMIC_DEV_DEFAULT ON )
29
+ else ()
30
+ set (VATOMIC_DEV_DEFAULT OFF )
31
+ endif ()
32
+
33
+ option (VATOMIC_DEV "Enable development targets" ${VATOMIC_DEV_DEFAULT} )
34
+
35
+ if (VATOMIC_DEV )
36
+ # Atomic templating
37
+ add_subdirectory (template )
38
+ add_subdirectory (tmplr )
39
+
40
+ # Basic format sanitization
41
+ add_custom_target (
42
+ sanitize-vatomic
43
+ COMMAND ${PROJECT_SOURCE_DIR} /scripts/sanitize.sh include
44
+ COMMAND ${PROJECT_SOURCE_DIR} /scripts/sanitize.sh test
45
+ COMMAND ${PROJECT_SOURCE_DIR} /scripts/license-check.sh
46
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} )
47
+
48
+ # CMake formating checks
49
+ set (CMAKE_FMT_CMD ${PROJECT_SOURCE_DIR} /scripts/cmake-format.sh
50
+ ${CMAKE_SOURCE_DIR} )
51
+ set (CMAKE_STYLE_FILE ${PROJECT_SOURCE_DIR} /.cmake-format )
52
+ add_custom_target (cmake-format-apply COMMAND env STYLE=${CMAKE_STYLE_FILE}
53
+ SILENT=true ${CMAKE_FMT_CMD} )
54
+ # Clang formating checks
55
+ set (CLANG_FMT_CMD ${PROJECT_SOURCE_DIR} /scripts/clang-format.sh
56
+ ${CMAKE_SOURCE_DIR} )
57
+ set (CLANG_STYLE_FILE ${PROJECT_SOURCE_DIR} /.clang-format )
58
+ add_custom_target (clang-format-apply COMMAND env STYLE=${CLANG_STYLE_FILE}
59
+ SILENT=true ${CLANG_FMT_CMD} )
60
+ add_dependencies (clang-format-apply sanitize-vatomic )
61
+
62
+ # General diff check for pipeline
63
+ add_custom_target (diff-check COMMAND git --no-pager diff --exit-code )
64
+
57
65
include (CTest )
58
66
include (ProcessorCount )
59
67
include (cmake/v_add_test.cmake )
0 commit comments