Initial commit
This commit is contained in:
commit
8059b90de7
29 files changed
+7893
No files matched your search
@@ -0,0 +1,49 @@
|
||||
cmake_minimum_required(VERSION 3.24)
|
||||
project(udpscope LANGUAGES C CXX)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 20)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
|
||||
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
|
||||
set(CMAKE_BUILD_TYPE Release CACHE STRING "" FORCE)
|
||||
endif()
|
||||
|
||||
find_package(Threads REQUIRED)
|
||||
|
||||
# --- deps/plotter: built from the submodule, GTK4 adapter only ----------------
|
||||
set(PLOT_BUILD_TESTS OFF CACHE BOOL "" FORCE)
|
||||
set(PLOT_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
|
||||
set(PLOT_BUILD_GLFW OFF CACHE BOOL "" FORCE)
|
||||
set(PLOT_BUILD_IMGUI OFF CACHE BOOL "" FORCE)
|
||||
set(PLOT_BUILD_QT6 OFF CACHE BOOL "" FORCE)
|
||||
set(PLOT_BUILD_GTK4 ON CACHE BOOL "" FORCE)
|
||||
set(PLOT_INSTALL OFF CACHE BOOL "" FORCE)
|
||||
add_subdirectory(deps/plotter EXCLUDE_FROM_ALL)
|
||||
|
||||
# --- deps/udpsclient: vendored C99 receiver ----------------------------------
|
||||
add_library(udpsclient STATIC deps/udpsclient/udps_client.c)
|
||||
target_include_directories(udpsclient PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/deps/udpsclient)
|
||||
set_target_properties(udpsclient PROPERTIES C_STANDARD 99 C_STANDARD_REQUIRED ON)
|
||||
if(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang")
|
||||
target_compile_options(udpsclient PRIVATE -Wall -Wextra)
|
||||
endif()
|
||||
|
||||
# --- the application ----------------------------------------------------------
|
||||
add_executable(udpscope
|
||||
src/main.cpp
|
||||
src/config.cpp
|
||||
src/channel.cpp
|
||||
src/model.cpp
|
||||
src/trigger.cpp
|
||||
src/acquisition.cpp
|
||||
src/plot_host.cpp
|
||||
src/ui.cpp
|
||||
)
|
||||
|
||||
target_include_directories(udpscope PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||
target_link_libraries(udpscope PRIVATE plot::gtk4 udpsclient Threads::Threads)
|
||||
if(CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
|
||||
target_compile_options(udpscope PRIVATE -Wall -Wextra -Wpedantic)
|
||||
endif()
|
||||
Reference in new issue
Block a user