cmake_minimum_required(VERSION 3.8) project(kima2 VERSION 0.9.0) set(CMAKE_MODULE_PATH "${CMAKE_HOME_DIRECTORY}/cmake" ${CMAKE_MODULE_PATH}) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) #include(InstallRequiredSystemLibraries) if(MSVC) add_compile_options(/W4 /WX) else() add_compile_options(-Wall -Wextra -pedantic -Woverloaded-virtual -Wredundant-decls -Wshadow) endif() configure_file(config.h.in ${PROJECT_BINARY_DIR}/config.h) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) add_subdirectory(src) if(NOT CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE MATCHES Debug) include(CTest) enable_testing() add_subdirectory(test) endif() # CPack INCLUDE(InstallRequiredSystemLibraries) set(CPACK_PACKAGE_EXECUTABLES "kima2" "KIMA2") set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Ein kleines Kassenprogramm für Kindersachenmärkte") set(CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/misc\\\\kima2.svg") set(CPACK_PACKAGE_VERSION_MAJOR ${PROJECT_VERSION_MAJOR}) set(CPACK_PACKAGE_VERSION_MINOR ${PROJECT_VERSION_MINOR}) set(CPACK_PACKAGE_VERSION_PATCH ${PROJECT_VERSION_PATCH}) set(CPACK_PACKAGE_VENDOR "Martin Brodbeck") set(CPACK_PACKAGE_CONTACT "Martin Brodbeck ") set(CPACK_SOURCE_IGNORE_FILES "/.git/;/.vscode") set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE") if (WIN32 AND NOT UNIX) set(CPACK_GENERATOR "NSIS;ZIP") if( CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS ) install( PROGRAMS ${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS} DESTINATION bin COMPONENT System ) endif( CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS ) else(WIN32 AND NOT UNIX) set(CPACK_SOURCE_GENERATOR "TBZ2") set(CPACK_GENERATOR "RPM;DEB") set(CPACK_STRIP_FILES "bin/kima2") set(CPACK_SOURCE_STRIP_FILES "") endif (WIN32 AND NOT UNIX) include(CPack)