events/CMakeLists.txt

75 lines
1.8 KiB
CMake

cmake_minimum_required(VERSION 3.16)
project(events VERSION 0.0.1 LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(Git QUIET)
if(GIT_FOUND)
execute_process(
COMMAND ${GIT_EXECUTABLE} describe --long --dirty --tags
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_VERSION
ERROR_QUIET
OUTPUT_STRIP_TRAILING_WHITESPACE
)
execute_process(
COMMAND ${GIT_EXECUTABLE} describe --abbrev=0
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_TAG
ERROR_QUIET
OUTPUT_STRIP_TRAILING_WHITESPACE
)
if(GIT_TAG)
string(REGEX REPLACE "^v" "" VERSION ${GIT_TAG})
else()
set(VERSION ${PROJECT_VERSION})
endif()
else()
set(GIT_VERSION "unknown")
set(VERSION ${PROJECT_VERSION})
endif()
add_compile_definitions(GIT_VERSION="${GIT_VERSION}")
option(BUILD_SHARED_LIBS "Build shared libraries" ON)
find_package(Qt6 COMPONENTS Core Network REQUIRED)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
add_subdirectory(qamqp)
INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR})
add_executable(events
main.cpp
)
target_link_libraries(events Qt6::Core Qt6::Network qamqp)
set_target_properties(events PROPERTIES
AUTOMOC ON
AUTORCC ON
AUTOUIC ON
CXX_STANDARD 14
CXX_STANDARD_REQUIRED ON
CXX_EXTENSIONS OFF
VERSION 0.0.1
EXPORT_NAME "Event Queue"
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
)
add_subdirectory(send)