cmake_minimum_required(VERSION 3.0) cmake_policy(SET CMP0017 NEW) # need include() with .cmake project(cd) set(cd_MAJOR 1) set(cd_MINOR 0) set(cd_REVISION 0) set(cd_SUFFIX ) set(cd_COMPANY SHS) set(cd_DOMAIN org.SHS) if ("x${CMAKE_MODULE_PATH}" STREQUAL "x") set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") endif() find_package(PIP REQUIRED) include(SHSTKMacros) include(QtWraps) shstk_begin_project(cd CD) include(SHSTKQtMacros) shstk_qt_founded(QtVersions) foreach(_v ${_QT_VERSIONS_}) #message("Qt ${_v} -> ${QtVersions}") option(Qt${_v} "Build for Qt${_v}" ON) endforeach() option(UTILS "Build various utils" ${_plugins_default_}) macro(cd_library NAME _MODULES _LIBS) shstk_qt_project(cd_${NAME} FALSE "cd" "${_MODULES}" "${_LIBS}" ${ARGN}) shstk_qt_install("cd" FALSE cd_${NAME} "${out_HDR}" "out_QM") endmacro() macro(cd_application NAME _MODULES _LIBS) shstk_qt_project(${NAME} TRUE "cd" "${_MODULES}" "${_LIBS}" ${ARGN}) shstk_qt_install("cd" TRUE ${NAME} "" "out_QM") endmacro() macro(cd_plugin NAME _MODULES _LIBS) shstk_qt_plugin(cd_${NAME} "${_MODULES}" "cd_${NAME};${_LIBS}") endmacro() shstk_install(cd FALSE "" "${cd_VERSION_FILE}") if (NOT LOCAL) file(GLOB CMAKES "cmake/*.cmake" "cmake/*.in") install(FILES ${CMAKES} DESTINATION ${CMAKE_ROOT}/Modules) endif() set(_qt_libs cd_core) set(_qt_plugs) set(_qt_apps ) add_subdirectory(libs) if (UTILS) add_subdirectory(utils) endif() shstk_is_parent_exists(_pe) if (_pe) set(CD_MODULES "cd_core" PARENT_SCOPE) endif() message("----------CD-----------") message(" Build for ${QtVersions}") message(" Version: ${cd_VERSION} ") message(" Linkage: ${cd_LIB_TYPE_MSG}") message(" Type : ${cd_BUILD_TYPE}") if (NOT LOCAL) message(" Install: \"${CMAKE_INSTALL_PREFIX}\"") else() if(NOT PIP_FREERTOS) message(" Install: local \"bin\", \"lib\" and \"include\"") endif() endif() message("") print_list("${_qt_libs}" " Libraries:" " * ") if (NOT "x${_qt_plugs}" STREQUAL "x") message("") print_list("${_qt_plugs}" " Plugins:" " * ") endif() if (NOT "x${_qt_apps}" STREQUAL "x") message("") print_list("${_qt_apps}" " Applications:" " * ") endif() message("-----------------------") shstk_copy_to_parent()