Mercurial > archived > louis > epitech > zia-api
view CMakeLists.txt @ 43:f744b9c6aba2
Add installation rules
author | Louis Opter <kalessin@kalessin.fr> |
---|---|
date | Mon, 22 Mar 2010 16:07:05 +0100 |
parents | 7c8cd74023ce |
children | c76d8ce500cb |
line wrap: on
line source
PROJECT(STREAMIT_API CXX) CMAKE_MINIMUM_REQUIRED(VERSION 2.4) IF (CMAKE_MAJOR_VERSION GREATER 1 AND CMAKE_MINOR_VERSION GREATER 4) # CMP0005 is about escaping stuff in ADD_DEFINITIONS() # But, I want to be sure that will works on cmake 2.4 CMAKE_POLICY(SET CMP0005 OLD) CMAKE_POLICY(SET CMP0003 OLD) ENDIF (CMAKE_MAJOR_VERSION GREATER 1 AND CMAKE_MINOR_VERSION GREATER 4) # Setting vars ################################################################# SET(CPACK_PACKAGE_VERSION_MAJOR "0") SET(CPACK_PACKAGE_VERSION_MINOR "0") SET(CPACK_PACKAGE_VERSION_PATCH "1") SET(STREAMIT_API_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}") MESSAGE(STATUS "Cmake Version : ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}") MESSAGE(STATUS "Zia Version : ${STREAMIT_API_VERSION}") MESSAGE(STATUS "Build Type : ${CMAKE_BUILD_TYPE}") MESSAGE(STATUS "System : ${CMAKE_SYSTEM_NAME} ${CMAKE_SYSTEM_VERSION}") MESSAGE(STATUS "Install Prefix : ${CMAKE_INSTALL_PREFIX}") MESSAGE(STATUS "Source Directory : ${STREAMIT_API_SOURCE_DIR}") # Global definitions ########################################################### IF (CMAKE_COMPILER_IS_GNUCXX) SET(CMAKE_CXX_FLAGS "-pipe -Wextra -Wall") IF (${CMAKE_BUILD_TYPE} MATCHES "DEBUG") ADD_DEFINITIONS("-D_GLIBCXX_DEBUG") ENDIF (${CMAKE_BUILD_TYPE} MATCHES "DEBUG") ENDIF (CMAKE_COMPILER_IS_GNUCXX) IF (CMAKE_SYSTEM_NAME MATCHES "Linux") ADD_DEFINITIONS("-D_POSIX_C_SOURCE=200112L -D_XOPEN_SOURCE=500") ENDIF (CMAKE_SYSTEM_NAME MATCHES "Linux") IF (MSVC) INCLUDE_DIRECTORIES(${STREAMIT_API_SOURCE_DIR}/compat/) # Avoid crazy warnings about c standard functions. ADD_DEFINITIONS("-D_CRT_SECURE_NO_WARNINGS -DWIN32_LEAN_AND_MEAN") ENDIF (MSVC) # Install rules ################################################################ INSTALL(DIRECTORY examples DESTINATION share/doc/ziastreamit COMPONENT Examples PATTERN "CMakeLists.txt" EXCLUDE REGEX ".*\\.sw.?$" EXCLUDE ) # Uninstall rules ############################################################## CONFIGURE_FILE("${STREAMIT_API_SOURCE_DIR}/CMakeScripts/cmake_uninstall.cmake.in" "${STREAMIT_API_BINARY_DIR}/cmake_uninstall.cmake" IMMEDIATE @ONLY ) ADD_CUSTOM_TARGET(uninstall "${CMAKE_COMMAND}" -P "${STREAMIT_API_BINARY_DIR}/cmake_uninstall.cmake" ) # Subdirectories ############################################################### INCLUDE_DIRECTORIES(${STREAMIT_API_SOURCE_DIR}/include) ADD_SUBDIRECTORY(examples) ADD_SUBDIRECTORY(include) # CPack stuff ################################################################## SET(PACKAGE_NAME "ziastreamit") SET(PACKAGE_FILE_NAME "${PACKAGE_NAME}-build-${STREAMIT_API_VERSION}") SET(PACKAGE_SOURCE_FILE_NAME "${PACKAGE_NAME}-${STREAMIT_API_VERSION}") SET(CPACK_PACKAGE_EXECUTABLES "rot13" "rot13") # <executable> <icon name> SET(CPACK_PACKAGE_NAME ${PACKAGE_NAME}) SET(CPACK_PACKAGE_FILE_NAME ${PACKAGE_NAME}) SET(CPACK_PACKAGE_DESCRIPTION_FILE "${STREAMIT_API_SOURCE_DIR}/CMakeScripts/CPackDescription.txt") SET(CPACK_SOURCE_PACKAGE_FILE_NAME ${PACKAGE_SOURCE_FILE_NAME}) SET(CPACK_COMPONENTS_ALL Examples Includes) SET(CPACK_RESOURCE_FILE_LICENSE "${STREAMIT_API_SOURCE_DIR}/CMakeScripts/CPackLicense.txt") SET(CPACK_RESOURCE_FILE_README "${CPACK_PACKAGE_DESCRIPTION_FILE}") SET(CPACK_RESOURCE_FILE_WELCOME "${STREAMIT_API_SOURCE_DIR}/CMakeScripts/CPackWelcome.txt") SET(CPACK_COMPONENT_EXAMPLES_DISPLAY_NAME "StreamIt API sample code") SET(CPACK_COMPONENT_EXAMPLES_DESCRIPTION "Example code for the StreamIt API. It shows how to use our API.") SET(CPACK_COMPONENT_EXAMPLES_REQUIRED FALSE) SET(CPACK_COMPONENT_INCLUDES_DISPLAY_NAME "StreamIt Development headers") SET(CPACK_COMPONENT_INCLUDES_DESCRIPTION "Headers code of our API. This is mandatory to code with the API.") SET(CPACK_COMPONENT_INCLUDES_REQUIRED TRUE) IF (UNIX) SET(CPACK_GENERATOR "TGZ") SET(CPACK_SOURCE_GENERATOR "TGZ") ENDIF (UNIX) IF (WIN32) SET(CPACK_GENERATOR "NSIS") ENDIF (WIN32) INCLUDE(CPack)