cmake refactoring #30

Merged
andrey merged 1 commits from cmake_refactor into master 2022-08-08 16:42:52 +03:00
4 changed files with 29 additions and 31 deletions

View File

@@ -1,13 +1,13 @@
cmake_minimum_required(VERSION 3.0)
cmake_policy(SET CMP0017 NEW) # need include() with .cmake
cmake_policy(SET CMP0072 NEW) # FindOpenGL prefers GLVND by default
project(qad)
set(qad_MAJOR 2)
set(qad_MINOR 8)
set(qad_REVISION 1)
set(qad_SUFFIX )
set(qad_COMPANY SHS)
set(qad_DOMAIN org.SHS)
project(QAD)
set(QAD_MAJOR 2)
set(QAD_MINOR 8)
set(QAD_REVISION 1)
set(QAD_SUFFIX )
set(QAD_COMPANY SHS)
set(QAD_DOMAIN org.SHS)
if ("x${CMAKE_MODULE_PATH}" STREQUAL "x")
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
@@ -15,7 +15,7 @@ endif()
include(SHSTKMacros)
include(QtWraps)
shstk_begin_project(qad QAD)
shstk_begin_project(QAD)
include(SHSTKQtMacros)
shstk_qt_founded(QtVersions)
@@ -34,12 +34,12 @@ option(DESIGNER_PLUGINS "Build Qt designer plugins" ${_plugins_default_})
option(HAS_GL "Build with OpenGL" ${_plugins_default_})
macro(qad_library NAME _MODULES _LIBS)
shstk_qad_project(qad_${NAME} FALSE "qad" "${_MODULES}" "${_LIBS}" ${ARGN})
shstk_qad_project(qad_${NAME} FALSE "QAD" "${_MODULES}" "${_LIBS}" ${ARGN})
shstk_qad_install("qad" FALSE qad_${NAME} "${out_HDR}" "out_QM")
endmacro()
macro(qad_application NAME _MODULES _LIBS)
shstk_qad_project(${NAME} TRUE "qad" "${_MODULES}" "${_LIBS}" ${ARGN})
shstk_qad_project(${NAME} TRUE "QAD" "${_MODULES}" "${_LIBS}" ${ARGN})
shstk_qad_install("qad" TRUE ${NAME} "" "out_QM")
endmacro()
@@ -47,7 +47,7 @@ macro(qad_plugin NAME _MODULES _LIBS)
shstk_qad_plugin(qad_${NAME} "${_MODULES}" "qad_${NAME};${_LIBS}")
endmacro()
shstk_install(qad FALSE "" "${qad_VERSION_FILE}")
shstk_install(qad FALSE "" "${QAD_VERSION_FILE}")
file(GLOB CMAKES "cmake/*.cmake" "cmake/*.in")
install(FILES ${CMAKES} DESTINATION ${CMAKE_ROOT}/Modules)
@@ -58,9 +58,9 @@ endif()
message("----------QAD----------")
message(" Build for ${QtVersions}")
message(" Version: ${qad_VERSION} ")
message(" Linkage: ${qad_LIB_TYPE_MSG}")
message(" Type : ${qad_BUILD_TYPE}")
message(" Version: ${QAD_VERSION} ")
message(" Linkage: ${QAD_LIB_TYPE_MSG}")
message(" Type : ${QAD_BUILD_TYPE}")
if (NOT LOCAL)
message(" Install: \"${CMAKE_INSTALL_PREFIX}\"")
else()

View File

@@ -19,7 +19,7 @@ These targets include directories and dependencies
cmake_policy(SET CMP0011 NEW) # don`t affect includer policies
cmake_policy(SET CMP0020 NEW) # Automatically link Qt executables to qtmain target on Windows
if(NOT BUILDING_qad)
if(NOT BUILDING_QAD)
find_package(PIP QUIET)
include(QtWraps)
include(SHSTKMacros)
@@ -27,19 +27,17 @@ endif()
shstk_is_parent_exists(hasParent PARENT_DIRECTORY)
shstk_set_find_dirs(qad QAD)
set(_SEARCH_DIR ${qad_LIBDIR})
shstk_set_find_dirs(QAD)
qad_find_qt(Core QUIET)
if(NOT SOME_QT_FOUND)
message(WARNING "No qt found, please install qt")
message(WARNING "No Qt found, please install Qt")
set(QAD_FOUND OFF CACHE BOOL "")
return()
endif()
if (NOT BUILDING_qad)
list(APPEND _SEARCH_DIR $ENV{SMSDK_DIR}/lib)
shstk_find_header(qad QAD "qad_version.h" "")
if (NOT BUILDING_QAD)
shstk_find_header(QAD "qad_version.h" ${QAD_INCDIR})
endif()
if(QAD_FIND_VERSION VERSION_GREATER QAD_VERSION)
@@ -47,7 +45,7 @@ if(QAD_FIND_VERSION VERSION_GREATER QAD_VERSION)
endif()
set(__libs "utils;widgets;application;blockview;graphic;sql_table;touch_widgets;doc")
if (PIP_FOUND OR BUILDING_pip)
if (PIP_FOUND OR BUILDING_PIP)
list(APPEND __libs "piqt;piqt_utils")
endif()
@@ -76,12 +74,12 @@ set(__deps_sql_table "QAD::Widgets")
set(__deps_piqt "QAD::Widgets;PIP")
set(__deps_piqt_utils "QAD::Blockview;QAD::PIQt")
#message("find QAD ${BUILDING_qad}")
#message("find QAD ${BUILDING_QAD}")
if (BUILDING_qad)
if (BUILDING_QAD)
if (NOT SET_TARGETS_qad)
set(SET_TARGETS_qad ON CACHE BOOL "")
if (NOT SET_TARGETS_QAD)
set(SET_TARGETS_QAD ON CACHE BOOL "")
#message("create aliases")
foreach(_l ${__libs})
foreach(_v ${_QT_VERSIONS_})
@@ -104,7 +102,7 @@ else()
foreach(_l ${__libs})
foreach(_v ${_QT_VERSIONS_})
set(_m ${__module_${_l}})
find_library(QAD_LIBRARY_${_l}${_v} qad_${_l}${_v} HINTS ${_SEARCH_DIR})
find_library(QAD_LIBRARY_${_l}${_v} qad_${_l}${_v} HINTS ${QAD_LIBDIR})
#message("found ${_l}${_v} = ${QAD_LIBRARY_${_l}${_v}}")
if((NOT TARGET QAD::${_m}${_v}) AND QAD_LIBRARY_${_l}${_v})
#message("imported QAD::${_m}${_v} = ${QAD_LIBRARY_${_l}${_v}}")
@@ -120,7 +118,7 @@ else()
endforeach()
set_target_properties(QAD::${_m}${_v} PROPERTIES
IMPORTED_LOCATION "${QAD_LIBRARY_${_l}${_v}}"
INTERFACE_INCLUDE_DIRECTORIES "${qad_INCLUDES}"
INTERFACE_INCLUDE_DIRECTORIES "${QAD_INCLUDES}"
INTERFACE_LINK_LIBRARIES "${_deps}")
endif()
endforeach()

View File

@@ -1,8 +1,8 @@
find_package(PIP)
if (PIP_FOUND AND BUILDING_pip)
if (PIP_FOUND AND BUILDING_PIP)
project(piqt_utils)
pip_code_model(CCM "${pip_ROOT_SRC}/libs/main/io_devices/piiodevice.h" "${pip_ROOT_SRC}/libs/main/io_utils/pipacketextractor.h" OPTIONS "-DPIP_EXPORT" "-Es" ABSOLUTE)
pip_code_model(CCM "${PIP_ROOT_SRC}/libs/main/io_devices/piiodevice.h" "${PIP_ROOT_SRC}/libs/main/io_utils/pipacketextractor.h" OPTIONS "-DPIP_EXPORT" "-Es" ABSOLUTE)
qad_library(piqt_utils "Gui" "qad_blockview;qad_piqt" ${CCM})
foreach(_v ${_QT_VERSIONS_})

View File

@@ -1,6 +1,6 @@
if (((DEFINED QGLVIEW) AND QGLVIEW) OR (NOT DEFINED QGLVIEW))
find_package(OpenGL REQUIRED)
shstk_qad_project(qglview FALSE "qad" "Gui;OpenGL;OpenGLWidgets;Xml" "qad_widgets;qad_utils;${OPENGL_LIBRARIES}")
shstk_qad_project(qglview FALSE "QAD" "Gui;OpenGL;OpenGLWidgets;Xml" "qad_widgets;qad_utils;${OPENGL_LIBRARIES}")
shstk_qad_install("qad" FALSE qglview "${out_HDR}" "${out_QM}")
qad_sources(test_SRC DIR "qglview_test")