cmake refactoring

This commit is contained in:
2022-08-08 15:48:06 +03:00
parent 80e5f76ee4
commit 52056a44bb
3 changed files with 31 additions and 33 deletions

View File

@@ -17,16 +17,14 @@ include(SHSTKMacros)
shstk_is_parent_exists(hasParent PARENT_DIRECTORY)
shstk_set_find_dirs(qglengine QGLEngine)
set(_SEARCH_DIR ${qglengine_LIBDIR})
shstk_set_find_dirs(QGLEngine)
if (NOT BUILDING_qglengine)
list(APPEND _SEARCH_DIR $ENV{SMSDK_DIR}/lib)
shstk_find_header(qglengine QGLENGINE "qglengine_version.h" "")
if (NOT BUILDING_QGLEngine)
shstk_find_header(QGLEngine "qglengine_version.h" ${QGLEngine_INCDIR})
endif()
if(QGLENGINE_FIND_VERSION VERSION_GREATER QGLENGINE_VERSION)
message(FATAL_ERROR "QGLENGINE version ${QGLENGINE_VERSION} is available, but ${QGLENGINE_FIND_VERSION} requested!")
if(QGLEngine_FIND_VERSION VERSION_GREATER QGLEngine_VERSION)
message(FATAL_ERROR "QGLEngine version ${QGLEngine_VERSION} is available, but ${QGLEngine_FIND_VERSION} requested!")
endif()
set(__libs "core;widgets")
@@ -43,12 +41,12 @@ endforeach()
set(__deps_core "QAD::Widgets")
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)
set(SET_TARGETS_qglengine ON CACHE BOOL "")
if (NOT SET_TARGETS_QGLEngine)
set(SET_TARGETS_QGLEngine ON CACHE BOOL "")
#message("create aliases")
foreach(_l ${__libs})
foreach(_v ${_QT_VERSIONS_})
@@ -71,7 +69,7 @@ else()
foreach(_l ${__libs})
foreach(_v ${_QT_VERSIONS_})
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})")
if((NOT TARGET QGLEngine::${_m}${_v}) AND QGLENGINE_LIBRARY_${_l}${_v})
#message("imported QGLEngine::${_m}${_v} = ${QGLENGINE_LIBRARY_${_l}${_v}}")
@@ -87,7 +85,7 @@ else()
endforeach()
set_target_properties(QGLEngine::${_m}${_v} PROPERTIES
IMPORTED_LOCATION "${QGLENGINE_LIBRARY_${_l}${_v}}"
INTERFACE_INCLUDE_DIRECTORIES "${qglengine_INCLUDES}"
INTERFACE_INCLUDE_DIRECTORIES "${QGLEngine_INCLUDES}"
INTERFACE_LINK_LIBRARIES "${_deps}")
endif()
endforeach()