OpenCV_Example/sources/CMakeLists.txt

88 lines
1.8 KiB
CMake

cmake_minimum_required(VERSION 4.0)
project(opencv_example
VERSION 1.0
DESCRIPTION "Example OpenCV"
LANGUAGES CXX
)
include(${CMAKE_CURRENT_SOURCE_DIR}/../_cmake/app_settings.cmake)
find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS
Core Widgets
)
find_package(OpenCV REQUIRED)
set(PROJECT_SOURCES
main.cpp
main_window.cpp
main_window.h
main_window.ui
${COMMON_SOURCES_DIR}/application_config.h
${COMMON_SOURCES_DIR}/application_config.cpp
)
set(PROJECT_RESOURCES
${RESOURCES_DIR}/main.qrc
${RESOURCES_DIR}/icons.qrc
)
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
set(PROJECT_RC_FILES
${RESOURCES_DIR}/main_icon.rc
${CMAKE_CURRENT_BINARY_DIR}/versioninfo.rc
)
endif()
if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
qt_add_executable(${PROJECT_NAME}
MANUAL_FINALIZATION
${PROJECT_SOURCES}
${PROJECT_RESOURCES}
${PROJECT_RC_FILES}
)
else()
add_executable(${PROJECT_NAME}
${PROJECT_SOURCES}
${PROJECT_RESOURCES}
${PROJECT_RC_FILES}
)
endif()
target_link_directories(${PROJECT_NAME} PRIVATE
${DISTRIB_DIR}
${CXX_COMPILER_DIR}
)
include(${CMAKE_INC_DIR}/target_options.cmake)
target_link_libraries(${PROJECT_NAME} PRIVATE
Qt${QT_VERSION_MAJOR}::Core
Qt${QT_VERSION_MAJOR}::Widgets
${OpenCV_LIBS}
)
target_include_directories(${PROJECT_NAME} PRIVATE
${SYSTEM_INCLUDE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${COMMON_SOURCES_DIR}
${COMPILER_INCLUDE_DIR}
${OpenCV_INCLUDE_DIRS}
)
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
set_target_properties(${PROJECT_NAME} PROPERTIES
WIN32_EXECUTABLE TRUE
)
endif()
if(QT_VERSION_MAJOR EQUAL 6)
qt_finalize_executable(${PROJECT_NAME})
endif()
include(${CMAKE_INC_DIR}/post_build.cmake)