68 lines
2.3 KiB
CMake
68 lines
2.3 KiB
CMake
project(qglengine)
|
|
cmake_minimum_required(VERSION 2.6)
|
|
find_package(QAD REQUIRED)
|
|
if (NOT Qt5)
|
|
message(WARNING "Building ${PROJECT_NAME} available only on Qt5!")
|
|
return()
|
|
endif()
|
|
if (POLICY CMP0017)
|
|
cmake_policy(SET CMP0017 NEW)
|
|
endif()
|
|
if (IBPROJECT)
|
|
include(SDKMacros)
|
|
else()
|
|
option(LIB "System install" 0)
|
|
option(DEBUG "Build with -g3" 0)
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall")
|
|
if (DEBUG)
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
|
|
endif()
|
|
endif()
|
|
if (MINGW)
|
|
find_package(MinGW REQUIRED)
|
|
endif()
|
|
find_package(OpenGL REQUIRED)
|
|
include_directories(${QAD_INCLUDES} "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/core")
|
|
find_qt(Qt5 Core Gui OpenGL Xml)
|
|
qt_sources(SRC)
|
|
qt_sources(FSRC DIR "formats")
|
|
list(APPEND SRC ${FSRC})
|
|
qt_sources(FSRC DIR "core")
|
|
list(APPEND SRC ${FSRC})
|
|
qt_wrap(${SRC} HDRS out_HDR CPPS out_CPP QMS out_QM)
|
|
qt_add_library(qglengine_core SHARED out_CPP)
|
|
qt_target_link_libraries(qglengine_core qad_utils qad_widgets assimp ${OPENGL_LIBRARIES})
|
|
message(STATUS "Building qglengine_core")
|
|
list(APPEND QT_MULTILIB_LIST qglengine_core)
|
|
add_subdirectory(widgets)
|
|
set(QT_MULTILIB_LIST ${QT_MULTILIB_LIST} PARENT_SCOPE)
|
|
if (LIBPROJECT)
|
|
sdk_install("qglengine" "qglengine_core" "${out_HDR}" "${out_QM}")
|
|
else()
|
|
if (LIB)
|
|
if (WIN32)
|
|
qt_install(FILES ${out_HDR} DESTINATION ${MINGW_INCLUDE}/qglengine)
|
|
qt_install(TARGETS qglengine_core DESTINATION ${MINGW_LIB})
|
|
qt_install(TARGETS qglengine_core DESTINATION ${MINGW_BIN})
|
|
qt_install(TARGETS qglengine_core DESTINATION QtBin)
|
|
else()
|
|
qt_install(FILES ${out_HDR} DESTINATION ${CMAKE_INSTALL_PREFIX}/include/qglengine)
|
|
qt_install(TARGETS qglengine_core DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
|
|
endif()
|
|
message(STATUS "Install qglengine_core to system \"${CMAKE_INSTALL_PREFIX}\"")
|
|
else()
|
|
qt_install(TARGETS qglengine_core DESTINATION bin)
|
|
message(STATUS "Install qglengine_core to local \"bin\"")
|
|
endif()
|
|
endif()
|
|
if (NOT DEFINED ANDROID_PLATFORM)
|
|
if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/plugin")
|
|
#add_subdirectory(plugin)
|
|
endif()
|
|
endif()
|
|
|
|
qt_sources(test_SRC DIR "qglview_test")
|
|
qt_wrap(${test_SRC} CPPS test_CPP)
|
|
qt_add_executable(qglview_test test_CPP)
|
|
qt_target_link_libraries(qglview_test qglengine_core qglengine_widgets)
|