project(gtc) cmake_minimum_required(VERSION 2.8) set(CMAKI_REPOSITORY "http://artifacts.myftp.biz:8080") include("${CMAKE_MODULE_PATH}/cmaki.cmake") cmaki_setup() SET(GLOBAL_COMPILER "${CMAKI_COMPILER}") SET(GLOBAL_PLATFORM "${CMAKI_PLATFORM}") # MESSAGE("-- compiler ${GLOBAL_COMPILER}, platform ${GLOBAL_PLATFORM}") IF(CMAKE_BUILD_TYPE STREQUAL "Debug") MESSAGE("-- Debug Mode") SET(GLOBAL_BUILD_MODE "Debug") ELSEIF(CMAKE_BUILD_TYPE STREQUAL "Release") MESSAGE("-- Release Mode") SET(GLOBAL_BUILD_MODE "Release") ELSEIF(CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo") MESSAGE("-- RelWithDebInfo Mode") SET(GLOBAL_BUILD_MODE "RelWithDebInfo") ELSE() MESSAGE("-- Build mode default to Release") MESSAGE("-- Release Mode") SET(GLOBAL_BUILD_MODE "Release") ENDIF() IF(NOT PACKAGE) SET(PACKAGE "packagename_invalid") MESSAGE(FATAL_ERROR "Invalid package name") ENDIF() IF(NOT PACKAGE_VERSION) SET(PACKAGE_VERSION "verson_invalid") MESSAGE(FATAL_ERROR "Invalid version in package") ENDIF() IF(NOT LIBRARY_TYPE) SET(LIBRARY_TYPE "STATIC") ENDIF() SET(PACKAGE "${PACKAGE}" CACHE STRING "Package to compile") SET(PACKAGE_VERSION "${PACKAGE_VERSION}" CACHE STRING "Version to compile") SET(CMAKE_VERBOSE_MAKEFILE ON) IF(NOT DEFINED GTC_INSTALL_PREFIX) SET(GTC_INSTALL_PREFIX "${PACKAGE_BUILD_DIRECTORY}/../${PACKAGE}-${PACKAGE_VERSION}-${GLOBAL_PLATFORM}/${PACKAGE}-${PACKAGE_VERSION}") SET(CMAKE_INSTALL_PREFIX "${GTC_INSTALL_PREFIX}/${GLOBAL_PLATFORM}/${GLOBAL_COMPILER}/${GLOBAL_BUILD_MODE}") IF(WIN32) SET(EXECUTABLE_OUTPUT_PATH "${GTC_INSTALL_PREFIX}/${GLOBAL_PLATFORM}/${GLOBAL_COMPILER}" CACHE PATH "Folder executables") SET(LIBRARY_OUTPUT_PATH "${GTC_INSTALL_PREFIX}/${GLOBAL_PLATFORM}/${GLOBAL_COMPILER}" CACHE PATH "Folder libs") ELSE() SET(EXECUTABLE_OUTPUT_PATH "${GTC_INSTALL_PREFIX}/${GLOBAL_PLATFORM}/${GLOBAL_COMPILER}/${GLOBAL_BUILD_MODE}" CACHE PATH "Folder executables") SET(LIBRARY_OUTPUT_PATH "${GTC_INSTALL_PREFIX}/${GLOBAL_PLATFORM}/${GLOBAL_COMPILER}/${GLOBAL_BUILD_MODE}" CACHE PATH "Folder libs") ENDIF() ELSE() SET(GTC_INSTALL_PREFIX "${GTC_INSTALL_PREFIX}") SET(CMAKE_INSTALL_PREFIX "${GTC_INSTALL_PREFIX}") SET(EXECUTABLE_OUTPUT_PATH "${GTC_INSTALL_PREFIX}/bin" CACHE PATH "Folder executables") SET(LIBRARY_OUTPUT_PATH "${GTC_INSTALL_PREFIX}/lib" CACHE PATH "Folder libs") ENDIF() # gnu variables can prepend CMAKE_INSTALL_PREFIX set(CMAKE_INSTALL_BINDIR "${CMAKE_INSTALL_PREFIX}/bin") set(CMAKE_INSTALL_SBINDIR "${CMAKE_INSTALL_PREFIX}/sbin") set(CMAKE_INSTALL_LIBEXECDIR "${CMAKE_INSTALL_PREFIX}/libexec") set(CMAKE_INSTALL_SYSCONFDIR "${CMAKE_INSTALL_PREFIX}/etc") set(CMAKE_INSTALL_SHAREDSTATEDIR "${CMAKE_INSTALL_PREFIX}/com") set(CMAKE_INSTALL_LOCALSTATEDIR "${CMAKE_INSTALL_PREFIX}/var") set(CMAKE_INSTALL_LIBDIR "${CMAKE_INSTALL_PREFIX}/lib") set(CMAKE_INSTALL_INCLUDEDIR "${CMAKE_INSTALL_PREFIX}/include") set(CMAKE_INSTALL_DATAROOTDIR "${CMAKE_INSTALL_PREFIX}/share") set(CMAKE_INSTALL_DATADIR "${CMAKE_INSTALL_PREFIX}/share") set(CMAKE_INSTALL_INFODIR "${CMAKE_INSTALL_PREFIX}/share/info") set(CMAKE_INSTALL_LOCALEDIR "${CMAKE_INSTALL_PREFIX}/share/locale") set(CMAKE_INSTALL_MANDIR "${CMAKE_INSTALL_PREFIX}/share/man") set(CMAKE_INSTALL_DOCDIR "${CMAKE_INSTALL_PREFIX}/share/doc/${PACKAGE}") set(CMAKE_INSTALL_FULL_BINDIR "${CMAKE_INSTALL_PREFIX}/bin") set(CMAKE_INSTALL_FULL_SBINDIR "${CMAKE_INSTALL_PREFIX}/sbin") set(CMAKE_INSTALL_FULL_LIBEXECDIR "${CMAKE_INSTALL_PREFIX}/libexec") set(CMAKE_INSTALL_FULL_SYSCONFDIR "${CMAKE_INSTALL_PREFIX}/etc") set(CMAKE_INSTALL_FULL_SHAREDSTATEDIR "${CMAKE_INSTALL_PREFIX}/com") set(CMAKE_INSTALL_FULL_LOCALSTATEDIR "${CMAKE_INSTALL_PREFIX}/var") set(CMAKE_INSTALL_FULL_LIBDIR "${CMAKE_INSTALL_PREFIX}/lib") set(CMAKE_INSTALL_FULL_INCLUDEDIR "${CMAKE_INSTALL_PREFIX}/include") set(CMAKE_INSTALL_FULL_DATAROOTDIR "${CMAKE_INSTALL_PREFIX}/share") set(CMAKE_INSTALL_FULL_DATADIR "${CMAKE_INSTALL_PREFIX}/share") set(CMAKE_INSTALL_FULL_INFODIR "${CMAKE_INSTALL_PREFIX}/share/info") set(CMAKE_INSTALL_FULL_LOCALEDIR "${CMAKE_INSTALL_PREFIX}/share/locale") set(CMAKE_INSTALL_FULL_MANDIR "${CMAKE_INSTALL_PREFIX}/share/man") set(CMAKE_INSTALL_FULL_DOCDIR "${CMAKE_INSTALL_PREFIX}/share/doc/${PACKAGE}") LINK_DIRECTORIES(${LIBRARY_OUTPUT_PATH})