Files
itc_pressure_optimizer/CMakeLists.txt
T
2026-07-16 13:11:01 +02:00

88 lines
1.7 KiB
CMake

cmake_minimum_required(VERSION 3.03)
project(generic VERSION 1.0)
add_compile_options(
-Wall
-Wformat=2
-g
-Wno-format-nonliteral
-Wno-strict-aliasing
-Wuninitialized
-Wno-unused-function
)
# Check if the required environment variables MIDASSYS and EPICSSYS are available
if (NOT DEFINED ENV{MIDASSYS})
message(SEND_ERROR "MIDASSYS environment variable not defined.")
endif()
set(CMAKE_CXX_STANDARD 17)
set(MIDASSYS $ENV{MIDASSYS})
find_package(Midas REQUIRED)
################################################################################
## Device
################################################################################
add_library(
itcPressureOptimizer
src/device/itc_pressure_optimizer.cpp
src/device/DemandHandler.cpp
)
set_property(
TARGET
itcPressureOptimizer
PROPERTY
CXX_STANDARD 17
)
target_link_libraries(
itcPressureOptimizer
PRIVATE
midas::mfe
${LIBS}
)
target_include_directories(
itcPressureOptimizer
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
################################################################################
## Frontend
################################################################################
add_executable(itcPressureOptimizerScfe
src/frontend/itc_pressure_optimizer_scfe.cpp
)
set_property(
TARGET
itcPressureOptimizerScfe
PROPERTY
CXX_STANDARD 17
)
target_include_directories(
itcPressureOptimizerScfe
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_link_libraries(
itcPressureOptimizerScfe
PRIVATE
itcPressureOptimizer
midas::mfe
${LIBS}
)
# Install the executable
install(
TARGETS itcPressureOptimizerScfe
RUNTIME DESTINATION bin
)