41 lines
1.5 KiB
CMake
41 lines
1.5 KiB
CMake
# The variable SKIP_MODULES can be set to skip particular modules;
|
|
# individual modules can also decide they must be skipped (e.g. OS-specific
|
|
# modules, or ones with unmet dependencies). Collect the skipped modules
|
|
# in this list.
|
|
set( LIST_SKIPPED_MODULES "" )
|
|
|
|
if( BUILD_TESTING )
|
|
add_executable( test_conf test_conf.cpp )
|
|
target_link_libraries( test_conf ${YAMLCPP_LIBRARY} )
|
|
target_include_directories( test_conf PUBLIC ${YAMLCPP_INCLUDE_DIR} )
|
|
endif()
|
|
|
|
string( REPLACE " " ";" SKIP_LIST "${SKIP_MODULES}" )
|
|
|
|
file( GLOB SUBDIRECTORIES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*" )
|
|
list( SORT SUBDIRECTORIES )
|
|
|
|
foreach( SUBDIRECTORY ${SUBDIRECTORIES} )
|
|
list( FIND SKIP_LIST ${SUBDIRECTORY} DO_SKIP )
|
|
|
|
if( NOT DO_SKIP EQUAL -1 )
|
|
message( "${ColorReset}-- Skipping module ${BoldRed}${SUBDIRECTORY}${ColorReset}." )
|
|
message( "" )
|
|
list( APPEND LIST_SKIPPED_MODULES "${SUBDIRECTORY} (user request)" )
|
|
elseif( ( IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}" ) AND
|
|
( DO_SKIP EQUAL -1 ) )
|
|
set( SKIPPED_MODULES )
|
|
calamares_add_module_subdirectory( ${SUBDIRECTORY} )
|
|
if ( SKIPPED_MODULES )
|
|
list( APPEND LIST_SKIPPED_MODULES "${SKIPPED_MODULES}" )
|
|
endif()
|
|
endif()
|
|
endforeach()
|
|
|
|
# This is *also* done in top-level, so list is displayed
|
|
# both before and after the feature summary.
|
|
calamares_explain_skipped_modules( ${LIST_SKIPPED_MODULES} )
|
|
|
|
include( CalamaresAddTranslations )
|
|
add_calamares_python_translations( ${CALAMARES_TRANSLATION_LANGUAGES} )
|