Merge pull request 'cmake refactoring' (#1) from cmake_refactor into master
Reviewed-on: https://git.shs.tools/SHS/qglengine/pulls/1
This commit was merged in pull request #1.
This commit is contained in:
@@ -6,7 +6,7 @@ endif()
|
|||||||
if (POLICY CMP0054)
|
if (POLICY CMP0054)
|
||||||
cmake_policy(SET CMP0054 NEW)
|
cmake_policy(SET CMP0054 NEW)
|
||||||
endif()
|
endif()
|
||||||
project(qglengine)
|
project(QGLEngine)
|
||||||
find_package(QAD REQUIRED)
|
find_package(QAD REQUIRED)
|
||||||
shstk_qt_founded(QtVersions)
|
shstk_qt_founded(QtVersions)
|
||||||
set(_qgl_ok 0)
|
set(_qgl_ok 0)
|
||||||
@@ -23,18 +23,18 @@ else()
|
|||||||
find_package(OpenGL REQUIRED)
|
find_package(OpenGL REQUIRED)
|
||||||
include(SHSTKQtMacros)
|
include(SHSTKQtMacros)
|
||||||
|
|
||||||
set(qglengine_MAJOR 1)
|
set(QGLEngine_MAJOR 1)
|
||||||
set(qglengine_MINOR 0)
|
set(QGLEngine_MINOR 0)
|
||||||
set(qglengine_REVISION 0)
|
set(QGLEngine_REVISION 0)
|
||||||
set(qglengine_SUFFIX "rc")
|
set(QGLEngine_SUFFIX "rc")
|
||||||
set(qglengine_COMPANY SHS)
|
set(QGLEngine_COMPANY SHS)
|
||||||
set(qglengine_DOMAIN org.SHS)
|
set(QGLEngine_DOMAIN org.SHS)
|
||||||
|
|
||||||
if ("x${CMAKE_MODULE_PATH}" STREQUAL "x")
|
if ("x${CMAKE_MODULE_PATH}" STREQUAL "x")
|
||||||
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
shstk_begin_project(qglengine QGLENGINE)
|
shstk_begin_project(QGLEngine)
|
||||||
|
|
||||||
qad_sources(SRC)
|
qad_sources(SRC)
|
||||||
qad_sources(FSRC DIR "formats")
|
qad_sources(FSRC DIR "formats")
|
||||||
@@ -44,20 +44,20 @@ else()
|
|||||||
qad_wrap(${SRC} HDRS out_HDR CPPS out_CPP QMS out_QM)
|
qad_wrap(${SRC} HDRS out_HDR CPPS out_CPP QMS out_QM)
|
||||||
file(GLOB PHS "*_p.h" "formats/*_p.h" "core/*_p.h")
|
file(GLOB PHS "*_p.h" "formats/*_p.h" "core/*_p.h")
|
||||||
list(REMOVE_ITEM out_HDR "${PHS}")
|
list(REMOVE_ITEM out_HDR "${PHS}")
|
||||||
import_version(qglengine_core qglengine)
|
import_version(qglengine_core QGLEngine)
|
||||||
set_deploy_property(qglengine_core ${qglengine_LIB_TYPE}
|
set_deploy_property(qglengine_core ${QGLEngine_LIB_TYPE}
|
||||||
LABEL "QGLEngine core library"
|
LABEL "QGLEngine core library"
|
||||||
FULLNAME "${qglengine_DOMAIN}.qglengine_core"
|
FULLNAME "${QGLEngine_DOMAIN}.qglengine_core"
|
||||||
COMPANY "${qglengine_COMPANY}"
|
COMPANY "${QGLEngine_COMPANY}"
|
||||||
INFO "QGLEngine core library")
|
INFO "QGLEngine core library")
|
||||||
make_rc(qglengine_core _RC)
|
make_rc(qglengine_core _RC)
|
||||||
qad_add_library(qglengine_core ${qglengine_LIB_TYPE} out_CPP ${_RC})
|
qad_add_library(qglengine_core ${QGLEngine_LIB_TYPE} out_CPP ${_RC})
|
||||||
qad_generate_export_header(qglengine_core)
|
qad_generate_export_header(qglengine_core)
|
||||||
list(APPEND out_HDR "${CMAKE_CURRENT_BINARY_DIR}/qglengine_core_export.h")
|
list(APPEND out_HDR "${CMAKE_CURRENT_BINARY_DIR}/qglengine_core_export.h")
|
||||||
list(APPEND out_HDR "${qglengine_VERSION_FILE}")
|
list(APPEND out_HDR "${QGLEngine_VERSION_FILE}")
|
||||||
qad_target_include_directories(qglengine_core PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/core")
|
qad_target_include_directories(qglengine_core PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/core")
|
||||||
qad_target_link_libraries(qglengine_core QAD::Widgets assimp ${OPENGL_LIBRARIES})
|
qad_target_link_libraries(qglengine_core QAD::Widgets assimp ${OPENGL_LIBRARIES})
|
||||||
message(STATUS "Building QGLEngine version ${qglengine_VERSION} (${qglengine_LIB_TYPE_MSG}) for ${QtVersions}")
|
message(STATUS "Building QGLEngine version ${QGLEngine_VERSION} (${QGLEngine_LIB_TYPE_MSG}) for ${QtVersions}")
|
||||||
list(APPEND QT_MULTILIB_LIST qglengine_core)
|
list(APPEND QT_MULTILIB_LIST qglengine_core)
|
||||||
add_subdirectory(widgets)
|
add_subdirectory(widgets)
|
||||||
shstk_copy_to_parent()
|
shstk_copy_to_parent()
|
||||||
|
|||||||
@@ -17,16 +17,14 @@ include(SHSTKMacros)
|
|||||||
|
|
||||||
shstk_is_parent_exists(hasParent PARENT_DIRECTORY)
|
shstk_is_parent_exists(hasParent PARENT_DIRECTORY)
|
||||||
|
|
||||||
shstk_set_find_dirs(qglengine QGLEngine)
|
shstk_set_find_dirs(QGLEngine)
|
||||||
set(_SEARCH_DIR ${qglengine_LIBDIR})
|
|
||||||
|
|
||||||
if (NOT BUILDING_qglengine)
|
if (NOT BUILDING_QGLEngine)
|
||||||
list(APPEND _SEARCH_DIR $ENV{SMSDK_DIR}/lib)
|
shstk_find_header(QGLEngine "qglengine_version.h" ${QGLEngine_INCDIR})
|
||||||
shstk_find_header(qglengine QGLENGINE "qglengine_version.h" "")
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(QGLENGINE_FIND_VERSION VERSION_GREATER QGLENGINE_VERSION)
|
if(QGLEngine_FIND_VERSION VERSION_GREATER QGLEngine_VERSION)
|
||||||
message(FATAL_ERROR "QGLENGINE version ${QGLENGINE_VERSION} is available, but ${QGLENGINE_FIND_VERSION} requested!")
|
message(FATAL_ERROR "QGLEngine version ${QGLEngine_VERSION} is available, but ${QGLEngine_FIND_VERSION} requested!")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(__libs "core;widgets")
|
set(__libs "core;widgets")
|
||||||
@@ -43,12 +41,12 @@ endforeach()
|
|||||||
set(__deps_core "QAD::Widgets")
|
set(__deps_core "QAD::Widgets")
|
||||||
set(__deps_widgets "QGLEngine::Core")
|
set(__deps_widgets "QGLEngine::Core")
|
||||||
|
|
||||||
#message("find QGLEngine ${BUILDING_qglengine}")
|
#message("find QGLEngine ${BUILDING_QGLEngine}")
|
||||||
|
|
||||||
if (BUILDING_qglengine)
|
if (BUILDING_QGLEngine)
|
||||||
|
|
||||||
if (NOT SET_TARGETS_qglengine)
|
if (NOT SET_TARGETS_QGLEngine)
|
||||||
set(SET_TARGETS_qglengine ON CACHE BOOL "")
|
set(SET_TARGETS_QGLEngine ON CACHE BOOL "")
|
||||||
#message("create aliases")
|
#message("create aliases")
|
||||||
foreach(_l ${__libs})
|
foreach(_l ${__libs})
|
||||||
foreach(_v ${_QT_VERSIONS_})
|
foreach(_v ${_QT_VERSIONS_})
|
||||||
@@ -71,7 +69,7 @@ else()
|
|||||||
foreach(_l ${__libs})
|
foreach(_l ${__libs})
|
||||||
foreach(_v ${_QT_VERSIONS_})
|
foreach(_v ${_QT_VERSIONS_})
|
||||||
set(_m ${__module_${_l}})
|
set(_m ${__module_${_l}})
|
||||||
find_library(QGLENGINE_LIBRARY_${_l}${_v} qglengine_${_l}${_v} HINTS ${_SEARCH_DIR})
|
find_library(QGLENGINE_LIBRARY_${_l}${_v} qglengine_${_l}${_v} HINTS ${QGLEngine_LIBDIR})
|
||||||
#message("found ${_l}${_v} = ${QGLENGINE_LIBRARY_${_l}${_v}} (${qglengine_INCLUDES})")
|
#message("found ${_l}${_v} = ${QGLENGINE_LIBRARY_${_l}${_v}} (${qglengine_INCLUDES})")
|
||||||
if((NOT TARGET QGLEngine::${_m}${_v}) AND QGLENGINE_LIBRARY_${_l}${_v})
|
if((NOT TARGET QGLEngine::${_m}${_v}) AND QGLENGINE_LIBRARY_${_l}${_v})
|
||||||
#message("imported QGLEngine::${_m}${_v} = ${QGLENGINE_LIBRARY_${_l}${_v}}")
|
#message("imported QGLEngine::${_m}${_v} = ${QGLENGINE_LIBRARY_${_l}${_v}}")
|
||||||
@@ -87,7 +85,7 @@ else()
|
|||||||
endforeach()
|
endforeach()
|
||||||
set_target_properties(QGLEngine::${_m}${_v} PROPERTIES
|
set_target_properties(QGLEngine::${_m}${_v} PROPERTIES
|
||||||
IMPORTED_LOCATION "${QGLENGINE_LIBRARY_${_l}${_v}}"
|
IMPORTED_LOCATION "${QGLENGINE_LIBRARY_${_l}${_v}}"
|
||||||
INTERFACE_INCLUDE_DIRECTORIES "${qglengine_INCLUDES}"
|
INTERFACE_INCLUDE_DIRECTORIES "${QGLEngine_INCLUDES}"
|
||||||
INTERFACE_LINK_LIBRARIES "${_deps}")
|
INTERFACE_LINK_LIBRARIES "${_deps}")
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|||||||
@@ -8,14 +8,14 @@ qad_sources(SRC)
|
|||||||
qad_wrap(${SRC} HDRS out_HDR CPPS out_CPP QMS out_QM)
|
qad_wrap(${SRC} HDRS out_HDR CPPS out_CPP QMS out_QM)
|
||||||
file(GLOB PHS "*_p.h")
|
file(GLOB PHS "*_p.h")
|
||||||
list(REMOVE_ITEM out_HDR "${PHS}")
|
list(REMOVE_ITEM out_HDR "${PHS}")
|
||||||
import_version(${PROJECT_NAME} qglengine)
|
import_version(${PROJECT_NAME} QGLEngine)
|
||||||
set_deploy_property(${PROJECT_NAME} ${qglengine_LIB_TYPE}
|
set_deploy_property(${PROJECT_NAME} ${QGLEngine_LIB_TYPE}
|
||||||
LABEL "QGLEngine widgets library"
|
LABEL "QGLEngine widgets library"
|
||||||
FULLNAME "${qglengine_DOMAIN}.${PROJECT_NAME}"
|
FULLNAME "${QGLEngine_DOMAIN}.${PROJECT_NAME}"
|
||||||
COMPANY "${qglengine_COMPANY}"
|
COMPANY "${QGLEngine_COMPANY}"
|
||||||
INFO "QGLEngine widgets library")
|
INFO "QGLEngine widgets library")
|
||||||
make_rc(${PROJECT_NAME} _RC)
|
make_rc(${PROJECT_NAME} _RC)
|
||||||
qad_add_library(${PROJECT_NAME} ${qglengine_LIB_TYPE} out_CPP ${_RC})
|
qad_add_library(${PROJECT_NAME} ${QGLEngine_LIB_TYPE} out_CPP ${_RC})
|
||||||
qad_generate_export_header(${PROJECT_NAME})
|
qad_generate_export_header(${PROJECT_NAME})
|
||||||
list(APPEND out_HDR "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}_export.h")
|
list(APPEND out_HDR "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}_export.h")
|
||||||
qad_target_link_libraries(${PROJECT_NAME} QAD::Widgets qglengine_core)
|
qad_target_link_libraries(${PROJECT_NAME} QAD::Widgets qglengine_core)
|
||||||
|
|||||||
Reference in New Issue
Block a user