calamares/src/modules/users/CMakeLists.txt
Adriaan de Groot 3ecab4bedb [users] Fix test building
- now Config can create jobs, tests that consume Config need
  to build the jobs as well; re-jig CMakeLists to make
  those a little easier.
2020-08-18 11:41:43 +02:00

87 lines
1.8 KiB
CMake

find_package( Qt5 ${QT_VERSION} CONFIG REQUIRED Core DBus Network )
find_package( Crypt REQUIRED )
# Add optional libraries here
set( USER_EXTRA_LIB )
find_package( LibPWQuality )
set_package_properties(
LibPWQuality PROPERTIES
PURPOSE "Extra checks of password quality"
)
if( LibPWQuality_FOUND )
list( APPEND USER_EXTRA_LIB ${LibPWQuality_LIBRARIES} )
include_directories( ${LibPWQuality_INCLUDE_DIRS} )
add_definitions( -DCHECK_PWQUALITY -DHAVE_LIBPWQUALITY )
endif()
include_directories( ${PROJECT_BINARY_DIR}/src/libcalamaresui )
set( JOB_SRC
CreateUserJob.cpp
SetPasswordJob.cpp
SetHostNameJob.cpp
)
set( CONFIG_SRC
CheckPWQuality.cpp
Config.cpp
)
calamares_add_plugin( users
TYPE viewmodule
EXPORT_MACRO PLUGINDLLEXPORT_PRO
SOURCES
UsersViewStep.cpp
UsersPage.cpp
${JOB_SRC}
${CONFIG_SRC}
UI
page_usersetup.ui
RESOURCES
users.qrc
LINK_PRIVATE_LIBRARIES
calamaresui
${CRYPT_LIBRARIES}
${USER_EXTRA_LIB}
Qt5::DBus
SHARED_LIB
)
calamares_add_test(
userspasswordtest
SOURCES
TestPasswordJob.cpp
SetPasswordJob.cpp
LIBRARIES
${CRYPT_LIBRARIES}
)
calamares_add_test(
userscreatetest
SOURCES
TestCreateUserJob.cpp
CreateUserJob.cpp
)
calamares_add_test(
usershostnametest
SOURCES
TestSetHostNameJob.cpp
SetHostNameJob.cpp
LIBRARIES
Qt5::DBus # HostName job can use DBus to systemd
)
calamares_add_test(
userstest
SOURCES
Tests.cpp
${JOB_SRC}
${CONFIG_SRC}
LIBRARIES
${USER_EXTRA_LIB}
Qt5::DBus # HostName job can use DBus to systemd
${CRYPT_LIBRARIES} # SetPassword job uses crypt()
)