Merge branch '3.1.x-stable'
This commit is contained in:
commit
03dd487fc2
@ -3,15 +3,27 @@ include( CalamaresAddTranslations )
|
||||
|
||||
set( MODULE_DATA_DESTINATION share/calamares/modules )
|
||||
|
||||
# Convenience function to indicate that a module has been skipped
|
||||
# (optionally also why). Call this in the module's CMakeLists.txt
|
||||
macro( calamares_skip_module )
|
||||
set( SKIPPED_MODULES ${SKIPPED_MODULES} ${ARGV} PARENT_SCOPE )
|
||||
endmacro()
|
||||
|
||||
function( calamares_add_module_subdirectory )
|
||||
set( SUBDIRECTORY ${ARGV0} )
|
||||
|
||||
set( SKIPPED_MODULES )
|
||||
set( MODULE_CONFIG_FILES "" )
|
||||
|
||||
# If this subdirectory has a CMakeLists.txt, we add_subdirectory it...
|
||||
if( EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}/CMakeLists.txt" )
|
||||
add_subdirectory( ${SUBDIRECTORY} )
|
||||
file( GLOB MODULE_CONFIG_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY} "${SUBDIRECTORY}/*.conf" )
|
||||
# Module has indicated it should be skipped, show that in
|
||||
# the calling CMakeLists (which is src/modules/CMakeLists.txt normally).
|
||||
if ( SKIPPED_MODULES )
|
||||
set( SKIPPED_MODULES ${SKIPPED_MODULES} PARENT_SCOPE )
|
||||
endif()
|
||||
# ...otherwise, we look for a module.desc.
|
||||
elseif( EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}/module.desc" )
|
||||
set( MODULES_DIR ${CMAKE_INSTALL_LIBDIR}/calamares/modules )
|
||||
|
@ -1,5 +1,11 @@
|
||||
include( CMakeColors )
|
||||
|
||||
# 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} )
|
||||
@ -14,11 +20,24 @@ foreach( SUBDIRECTORY ${SUBDIRECTORIES} )
|
||||
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()
|
||||
|
||||
if ( LIST_SKIPPED_MODULES )
|
||||
message( "${ColorReset}-- Skipped modules:" )
|
||||
foreach( SUBDIRECTORY ${LIST_SKIPPED_MODULES} )
|
||||
message( "${ColorReset}-- Skipped ${BoldRed}${SUBDIRECTORY}${ColorReset}." )
|
||||
endforeach()
|
||||
message( "" )
|
||||
endif()
|
||||
|
||||
include( CalamaresAddTranslations )
|
||||
add_calamares_python_translations( ${CALAMARES_TRANSLATION_LANGUAGES} )
|
||||
|
@ -1,6 +1,22 @@
|
||||
find_package(ECM ${ECM_VERSION} REQUIRED NO_MODULE)
|
||||
|
||||
find_package( KF5 5.29 REQUIRED CoreAddons Plasma Package )
|
||||
# Requires a sufficiently recent Plasma framework, but also
|
||||
# needs a runtime support component (which we don't test for).
|
||||
set( lnf_ver 5.41 )
|
||||
|
||||
find_package( KF5Plasma ${lnf_ver} )
|
||||
find_package( KF5Package ${lnf_ver} )
|
||||
set_package_properties(
|
||||
KF5Plasma PROPERTIES
|
||||
PURPOSE "For Plasma Look-and-Feel selection"
|
||||
)
|
||||
set_package_properties(
|
||||
KF5Package PROPERTIES
|
||||
PURPOSE "For Plasma Look-and-Feel selection"
|
||||
)
|
||||
|
||||
if ( KF5Plasma_FOUND AND KF5Package_FOUND )
|
||||
find_package( KF5 ${lnf_ver} REQUIRED CoreAddons Plasma Package )
|
||||
|
||||
calamares_add_plugin( plasmalnf
|
||||
TYPE viewmodule
|
||||
@ -20,3 +36,6 @@ calamares_add_plugin( plasmalnf
|
||||
KF5::Plasma
|
||||
SHARED_LIB
|
||||
)
|
||||
else()
|
||||
calamares_skip_module( "plasmalnf (missing requirements)" )
|
||||
endif()
|
||||
|
Loading…
Reference in New Issue
Block a user