cmake_minimum_required(VERSION 3.0) cmake_policy(SET CMP0017 NEW) # need include() with .cmake project(qad) set(_QAD_MAJOR 1) set(_QAD_MINOR 7) set(_QAD_REVISION 0) set(_QAD_SUFFIX ) set(_QAD_COMPANY SHS) set(_QAD_DOMAIN org.SHS) include(QADMacros) include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}) if(STATIC_LIB) set(QAD_LIB_TYPE STATIC) add_definitions(-DQAD_STATIC_DEFINE) else() set(QAD_LIB_TYPE SHARED) endif() if (NOT DEFINED ANDROID_PLATFORM) find_package(OpenGL REQUIRED) endif() if (MINGW) find_package(MinGW REQUIRED) endif() # Version if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/qad_version.h") file(REMOVE "${CMAKE_CURRENT_SOURCE_DIR}/qad_version.h") endif() set(QAD_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/qad_version.h") set_version(QAD MAJOR "${_QAD_MAJOR}" MINOR "${_QAD_MINOR}" REVISION "${_QAD_REVISION}" BUILD "${BUILD_NUMBER}" SUFFIX "${_QAD_SUFFIX}" OUTPUT "${QAD_VERSION_FILE}") set_deploy_property(QAD ${QAD_LIB_TYPE} FULLNAME "${_QAD_DOMAIN}.*" COMPANY "${_QAD_COMPANY}") message(STATUS "Building QAD version ${QAD_VERSION} (${QAD_LIB_TYPE})") if (NOT LIBPROJECT) if (LIB) if(WIN32) if(MINGW) set(CMAKE_INSTALL_PREFIX ${MINGW_DIR}) endif() else() if (DEFINED ANDROID_PLATFORM) set(CMAKE_INSTALL_PREFIX ${ANDROID_SYSTEM_LIBRARY_PATH}/usr) else() set(CMAKE_INSTALL_PREFIX /usr/local) endif() endif() message(STATUS "Install ${PROJECT_NAME} to system \"${CMAKE_INSTALL_PREFIX}\"") else() message(STATUS "Install ${PROJECT_NAME} to local \"bin\", \"lib\" and \"include\"") endif() endif() file(GLOB CMAKES "cmake/*.cmake" "cmake/*.in") if (LIB) install(FILES ${CMAKES} DESTINATION ${CMAKE_ROOT}/Modules) if (WIN32) install(FILES ${QAD_VERSION_FILE} DESTINATION ${MINGW_INCLUDE}/qad) else() install(FILES ${QAD_VERSION_FILE} DESTINATION ${CMAKE_INSTALL_PREFIX}/include/qad) endif() else() install(FILES ${QAD_VERSION_FILE} DESTINATION include/qad) endif() add_subdirectory(libs) if (UTILS) add_subdirectory(utils) endif() set(QT_MULTILIB_LIST ${QT_MULTILIB_LIST} PARENT_SCOPE) set(qad_includes ${qad_includes} PARENT_SCOPE) if (LIB) set(_ALL_TARGETS ${_ALL_TARGETS} PARENT_SCOPE) endif()