Files
uwave/CMakeLists.txt
2026-09-24 14:03:18 +02:00

88 lines
1.7 KiB
CMake

cmake_minimum_required(VERSION 3.20)
project(uwave VERSION 0.1)
add_compile_options(
-Wall
-Wformat=2
-Wno-format-nonliteral
-Wno-strict-aliasing
-Wuninitialized
-Wno-unused-function
)
set(CMAKE_PREFIX_PATH "$ENV{MIDASSYS}")
find_package(Midas REQUIRED)
################################################################################
## Device Library
################################################################################
add_library(
uwave
device/uWave.cxx
$ENV{MIDASSYS}/drivers/bus/tcpip.cxx
)
set_property(
TARGET
uwave
PROPERTY
CXX_STANDARD 11
)
target_include_directories(
uwave
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_link_libraries(
uwave
midas::midas
midas::mfe
)
################################################################################
## Default Frontend Builder
################################################################################
set(_DEFAULT_UWAVE_FRONTEND_DIR "${CMAKE_CURRENT_LIST_DIR}" CACHE INTERNAL "")
function(default_uwave_frontend F_TARGET F_NAME F_EVENT_ID)
add_executable(
${F_TARGET}
"${_DEFAULT_UWAVE_FRONTEND_DIR}/frontend/uWave_scfe.cxx"
$ENV{MIDASSYS}/drivers/class/multi.cxx
)
target_compile_definitions(${F_TARGET} PRIVATE FRONTEND_NAME="${F_NAME}")
target_compile_definitions(${F_TARGET} PRIVATE FRONTEND_ID=${F_EVENT_ID})
set_property(
TARGET
${F_TARGET}
PROPERTY
CXX_STANDARD 11
)
target_include_directories(
${F_TARGET}
PRIVATE
$ENV{MIDASSYS}/drivers
)
target_link_libraries(
${F_TARGET}
uwave
)
install(
TARGETS
${F_TARGET}
RUNTIME DESTINATION bin
)
endfunction()