40 lines
1006 B
CMake
40 lines
1006 B
CMake
# Root cmake file sketch (might change it later)
|
|
# Author: Unai Blazquez
|
|
# License: GPL-3-or-later
|
|
|
|
cmake_minimum_required(VERSION 3.16)
|
|
project(azkoyen_ipc_test LANGUAGES CXX)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
# Qt Setup — AUTOMOC runs moc automatically on Q_OBJECT headers
|
|
find_package(Qt5 REQUIRED COMPONENTS Core Widgets Test)
|
|
set(CMAKE_AUTOMOC ON)
|
|
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
|
|
|
# Core library
|
|
add_library(core
|
|
src/core/SysfsRead.cxx
|
|
src/core/UnixIpcBridge.cxx
|
|
src/core/Producer.cxx
|
|
src/core/Consumer.cxx
|
|
include/Consumer.hpp
|
|
)
|
|
|
|
target_include_directories(core PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
|
|
target_link_libraries(core PUBLIC Qt5::Core)
|
|
|
|
# Main Application
|
|
add_executable(app
|
|
src/app/main.cxx
|
|
src/app/MainWindow.cxx
|
|
include/MainWindow.hpp
|
|
)
|
|
target_include_directories(app PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include)
|
|
target_link_libraries(app PRIVATE core Qt5::Widgets)
|
|
|
|
#tests
|
|
enable_testing()
|
|
add_subdirectory(tests)
|