comparison CMakeLists.txt @ 1:3e30c3b2d6da

Add install/uninstall rules
author Louis Opter <louis@dotcloud.com>
date Thu, 30 Dec 2010 18:48:34 +0100
parents 6ce4443e7545
children ba9d8601d5f9
comparison
equal deleted inserted replaced
0:6ce4443e7545 1:3e30c3b2d6da
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6) 1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 2
3 # Global definitions ###########################################################
4
3 PROJECT(LIBLXCSTATS C) 5 PROJECT(LIBLXCSTATS C)
6
7 SET(CPACK_PACKAGE_VERSION_MAJOR "0")
8 SET(CPACK_PACKAGE_VERSION_MINOR "0")
9 SET(CPACK_PACKAGE_VERSION_PATCH "1")
10 SET(LIBLXCSTATS_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
11
12 MESSAGE(STATUS "CMake Version: ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}")
13 MESSAGE(STATUS "liblxcstats Version: ${LIBLXCSTATS_VERSION}")
14 MESSAGE(STATUS "Build Type: ${CMAKE_BUILD_TYPE}")
15 MESSAGE(STATUS "System: ${CMAKE_SYSTEM_NAME} ${CMAKE_SYSTEM_VERSION}")
16 MESSAGE(STATUS "Install Prefix: ${CMAKE_INSTALL_PREFIX}")
17 MESSAGE(STATUS "Source Directory: ${LIBLXCSTATS_SOURCE_DIR}")
4 18
5 ENABLE_TESTING() 19 ENABLE_TESTING()
6 20
7 IF (CMAKE_COMPILER_IS_GNUCC) 21 IF (CMAKE_COMPILER_IS_GNUCC)
8 ADD_DEFINITIONS("-pipe -Wextra -Wall -std=c99 -Wstrict-prototypes") 22 ADD_DEFINITIONS("-pipe -Wextra -Wall -std=c99 -Wstrict-prototypes")
11 IF (CMAKE_SYSTEM_NAME MATCHES "Linux") 25 IF (CMAKE_SYSTEM_NAME MATCHES "Linux")
12 ADD_DEFINITIONS("-D_POSIX_C_SOURCE=200112L" "-D_XOPEN_SOURCE=500" "-D_FILE_OFFSET_BITS=64" "-D_BSD_SOURCE") 26 ADD_DEFINITIONS("-D_POSIX_C_SOURCE=200112L" "-D_XOPEN_SOURCE=500" "-D_FILE_OFFSET_BITS=64" "-D_BSD_SOURCE")
13 ELSE (CMAKE_SYSTEM_NAME MATCHES "Linux") 27 ELSE (CMAKE_SYSTEM_NAME MATCHES "Linux")
14 MESSAGE(SEND_ERROR "The liblxcstats is Linux specific.") 28 MESSAGE(SEND_ERROR "The liblxcstats is Linux specific.")
15 ENDIF (CMAKE_SYSTEM_NAME MATCHES "Linux") 29 ENDIF (CMAKE_SYSTEM_NAME MATCHES "Linux")
30
31 # Build rules ##################################################################
16 32
17 SET(SRC 33 SET(SRC
18 compat/strlcpy.c 34 compat/strlcpy.c
19 compat/strlcat.c 35 compat/strlcat.c
20 close.c 36 close.c
27 43
28 ADD_LIBRARY(lxcstats SHARED ${SRC}) 44 ADD_LIBRARY(lxcstats SHARED ${SRC})
29 45
30 TARGET_LINK_LIBRARIES(lxcstats probes) 46 TARGET_LINK_LIBRARIES(lxcstats probes)
31 47
48 # Install/Uninstall rules ######################################################
49
50 INSTALL(TARGETS lxcstats LIBRARY DESTINATION lib)
51
52 CONFIGURE_FILE("${LIBLXCSTATS_SOURCE_DIR}/CMakeScripts/cmake_uninstall.cmake.in"
53 "${LIBLXCSTATS_BINARY_DIR}/cmake_uninstall.cmake"
54 IMMEDIATE @ONLY
55 )
56
57 ADD_CUSTOM_TARGET(uninstall
58 "${CMAKE_COMMAND}" -P "${LIBLXCSTATS_BINARY_DIR}/cmake_uninstall.cmake"
59 )
60
61 # Subdirectories ###############################################################
62
32 ADD_SUBDIRECTORY(tests) 63 ADD_SUBDIRECTORY(tests)
33 ADD_SUBDIRECTORY(probes) 64 ADD_SUBDIRECTORY(probes)