2024-10-07 18:07:07 +02:00
|
|
|
cmake_minimum_required(VERSION 3.28.2)
|
2024-07-27 23:53:26 +02:00
|
|
|
|
|
|
|
# Get version
|
|
|
|
file(READ ${CMAKE_CURRENT_SOURCE_DIR}/props.json PROPS)
|
|
|
|
string(JSON VER GET ${PROPS} version)
|
|
|
|
|
|
|
|
project(RapidMenu
|
|
|
|
DESCRIPTION "Utilize configuration files to create runner scripts."
|
|
|
|
VERSION ${VER})
|
2024-01-11 17:04:31 +01:00
|
|
|
|
2024-10-07 18:07:07 +02:00
|
|
|
set(CMAKE_CXX_STANDARD 26)
|
|
|
|
|
|
|
|
# check if build type is set if it isnt set it to release
|
|
|
|
if(NOT CMAKE_BUILD_TYPE)
|
|
|
|
set(DCKMAKE_BUILD_TYPE Release)
|
|
|
|
endif()
|
2024-01-11 17:04:31 +01:00
|
|
|
|
2024-01-11 17:40:32 +01:00
|
|
|
# Add the path to the source files for RapidMenu
|
|
|
|
file(GLOB_RECURSE RAPID_MENU_SOURCE_FILES "src/*.cpp")
|
2024-01-11 17:04:31 +01:00
|
|
|
|
2024-10-07 18:07:07 +02:00
|
|
|
# add compiler flags
|
|
|
|
set(CMAKE_CXX_FLAGS_DEBUG "-g")
|
|
|
|
set(CMAKE_CXX_FLAGS_RELEASE "-03")
|
|
|
|
|
2024-01-11 17:40:32 +01:00
|
|
|
# Add the executable target for RapidMenu
|
|
|
|
add_executable(RapidMenu ${RAPID_MENU_SOURCE_FILES})
|
2024-05-30 11:15:11 +02:00
|
|
|
install(TARGETS RapidMenu DESTINATION bin)
|
2024-01-11 17:04:31 +01:00
|
|
|
|
|
|
|
# Find and link against the tomlplusplus library
|
|
|
|
find_package(tomlplusplus REQUIRED)
|
|
|
|
target_link_libraries(RapidMenu PRIVATE tomlplusplus::tomlplusplus)
|
|
|
|
|
2024-05-30 15:25:57 +02:00
|
|
|
# DEBIAN
|
|
|
|
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "DRAGONTOS")
|
|
|
|
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libcpptoml-dev")
|
|
|
|
set(CPACK_DEBIAN_PACKAGE_LICENSE "GPLv3")
|
2024-07-27 23:53:26 +02:00
|
|
|
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION ${DESCRIPTION})
|
2024-05-30 15:25:57 +02:00
|
|
|
set(CPACK_DEBIAN_PACKAGE_RELEASE_DIST ON)
|
|
|
|
set(CPACK_GENERATOR DEBIAN)
|
|
|
|
set(CPACK_PACKAGING_INSTALL_PREFIX "/usr")
|
|
|
|
# RPM
|
2024-05-30 11:15:11 +02:00
|
|
|
set(CPACK_PACKAGE_VENDOR "DRAGONTOS")
|
|
|
|
set(CPACK_RPM_PACKAGE_REQUIRES "tomlplusplus-devel")
|
|
|
|
set(CPACK_RPM_PACKAGE_LICENSE "GPLv3")
|
2024-07-27 23:53:26 +02:00
|
|
|
set(CPACK_RPM_PACKAGE_DESCRIPTION ${DESCRIPTION})
|
2024-05-30 11:15:11 +02:00
|
|
|
set(CPACK_RPM_FILE_NAME "RPM-DEFAULT")
|
|
|
|
set(CPACK_RPM_PACKAGE_RELEASE_DIST ON)
|
|
|
|
set(CPACK_GENERATOR RPM)
|
|
|
|
set(CPACK_PACKAGING_INSTALL_PREFIX "/usr")
|
|
|
|
include(CPack)
|