45 lines
1.8 KiB
CMake
45 lines
1.8 KiB
CMake
cmake_minimum_required(VERSION 3.20)
|
|
project(Adminive VERSION 1.0.0 LANGUAGES CXX)
|
|
include(CTest)
|
|
include("${CMAKE_CURRENT_LIST_DIR}/cmake/AdminiveVerification.cmake")
|
|
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/third_party/Structive")
|
|
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/backend")
|
|
set(adminive_package_includes
|
|
"/.gitignore"
|
|
"/backend/"
|
|
"/cmake/"
|
|
"/config/"
|
|
"/CMakeLists.txt"
|
|
"/frontend/"
|
|
"/install_consumer/"
|
|
"/README.md"
|
|
"/scripts/"
|
|
"/third_party/"
|
|
)
|
|
set(adminive_package_excludes
|
|
"/.git/"
|
|
"/third_party/Structive/.git/"
|
|
"/.idea/"
|
|
"/build/"
|
|
"/cmake-build-*/"
|
|
"/doc/"
|
|
"/node_modules/"
|
|
"/frontend/frontend.zip"
|
|
"/frontend/node_modules/"
|
|
"/frontend_dist/"
|
|
"/verification/"
|
|
"/frontend/playwright-report/"
|
|
"/frontend/test-results/"
|
|
"*.tsbuildinfo"
|
|
"*.zip"
|
|
)
|
|
include("${CMAKE_CURRENT_LIST_DIR}/cmake/PackageZip.cmake")
|
|
add_project_zip_target(package_zip "${CMAKE_CURRENT_LIST_DIR}/Adminive.zip" "${CMAKE_CURRENT_LIST_DIR}" adminive_package_includes adminive_package_excludes)
|
|
if(BUILD_TESTING)
|
|
add_test(NAME Adminive_Install_Consumer_Test COMMAND "${CMAKE_COMMAND}" "-DADMINIVE_BINARY_DIR=${CMAKE_BINARY_DIR}" "-DADMINIVE_CONFIG=$<CONFIG>" -P "${CMAKE_CURRENT_LIST_DIR}/cmake/RunInstallConsumer.cmake")
|
|
set_tests_properties(Adminive_Install_Consumer_Test PROPERTIES LABELS "install;package")
|
|
add_test(NAME Adminive_Package_Zip_Test COMMAND "${CMAKE_COMMAND}" "-DADMINIVE_BINARY_DIR=${CMAKE_BINARY_DIR}" "-DADMINIVE_CONFIG=$<CONFIG>" -P "${CMAKE_CURRENT_LIST_DIR}/cmake/RunPackageZipTest.cmake")
|
|
set_tests_properties(Adminive_Package_Zip_Test PROPERTIES LABELS "package;archive")
|
|
adminive_register_frontend_tests("${CMAKE_BINARY_DIR}" "$<CONFIG>")
|
|
endif()
|