blob: dcb3c731915887924028eea3343a79e52196d08b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
# This file defines two macros:
# MACRO_LOG_FEATURE(VAR FEATURE DESCRIPTION URL)
# Logs the information so that it can be displayed at the end
# of the configure run
# VAR : variable which is TRUE or FALSE indicating whether the feature is supported
# FEATURE: name of the feature, e.g. "libjpeg"
# DESCRIPTION: description what this feature provides
# URL: home page
#
# MACRO_DISPLAY_FEATURE_LOG()
# Call this at the end of the toplevel CMakeLists.txt to display the collected results
#
# Example:
#
# INCLUDE(MacroLogFeature)
#
# FIND_PACKAGE(JPEG)
# MACRO_LOG_FEATURE(JPEG_FOUND "libjpeg" "Support JPEG images" "http://www.ijg.org")
# ...
# MACRO_DISPLAY_FEATURE_LOG()
MACRO(MACRO_LOG_FEATURE _var _package _description _url)
IF (NOT EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt")
FILE(WRITE "${CMAKE_BINARY_DIR}/EnabledFeatures.txt" "\n")
ENDIF (NOT EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt")
IF (NOT EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt")
FILE(WRITE "${CMAKE_BINARY_DIR}/DisabledFeatures.txt" "\n")
ENDIF (NOT EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt")
IF (${_var})
SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/EnabledFeatures.txt )
ELSE (${_var})
SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/DisabledFeatures.txt)
ENDIF (${_var})
FILE(APPEND "${_LOGFILENAME}" "PACKAGE: ${_package}\nDESCRIPTION: ${_description}\nURL: ${_url}\n\n")
ENDMACRO(MACRO_LOG_FEATURE)
MACRO(MACRO_DISPLAY_FEATURE_LOG)
IF (EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt")
FILE(READ ${CMAKE_BINARY_DIR}/EnabledFeatures.txt _features)
MESSAGE(STATUS "Enabled features:\n${_features}")
FILE(REMOVE ${CMAKE_BINARY_DIR}/EnabledFeatures.txt)
ENDIF (EXISTS "${CMAKE_BINARY_DIR}/EnabledFeatures.txt")
IF (EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt")
FILE(READ ${CMAKE_BINARY_DIR}/DisabledFeatures.txt _features)
MESSAGE(STATUS "Disabled features:\n${_features}")
FILE(REMOVE ${CMAKE_BINARY_DIR}/DisabledFeatures.txt)
ENDIF (EXISTS "${CMAKE_BINARY_DIR}/DisabledFeatures.txt")
ENDMACRO(MACRO_DISPLAY_FEATURE_LOG)
|