90 lines
2.3 KiB
CMake
90 lines
2.3 KiB
CMake
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()
|
|
|