]> Creatis software - bbtk.git/blob - kernel/cmake/CMakeCreateFindPackage_LibraryConfig.cmake.in
*** empty log message ***
[bbtk.git] / kernel / cmake / CMakeCreateFindPackage_LibraryConfig.cmake.in
1 #-----------------------------------------------------------------------------
2 #
3 # @LIBRARY_NAME@Config.cmake - CMake configuration file for external projects.
4 # Created by the cmake macro CREATE_FIND_PACKAGE of the CreateFindPackage suite
5 #
6 # This file is configured by cmake and used by the
7 # Use@LIBRARY_NAME@.cmake module to load the lib settings 
8 # for an external project.
9
10 # Build tree config ?
11 SET(CFP_BUILD_TREE_CONFIGURATION @CFP_BUILD_TREE_CONFIGURATION@)
12
13
14 IF(UNIX)
15 SET(GOTO_INSTALL_PREFIX /../..)
16 ENDIF(UNIX)
17
18
19 # The @LIBRARY_NAME@ include file *RELATIVE* directories.
20 SET(CFP_RELATIVE_INCLUDE_PATHS "@CFP_LIB_RELATIVE_INCLUDE_PATHS@")
21 # Compute the prefix for include and library paths
22 IF(CFP_BUILD_TREE_CONFIGURATION)
23   # In build tree 
24   # the include paths are relative to the source tree *AND* the binary tree 
25   # for generated files 
26   SET(CFP_INCLUDE_PATH_PREFIX @PROJECT_SOURCE_DIR@)
27   # Build the *ABSOLUTE* directories
28   FOREACH(path ${CFP_RELATIVE_INCLUDE_PATHS})
29     SET(@LIBRARY_NAME@_INCLUDE_DIRS
30       ${@LIBRARY_NAME@_INCLUDE_DIRS}
31       ${CFP_INCLUDE_PATH_PREFIX}/${path}
32       )
33   ENDFOREACH(path ${CFP_RELATIVE_INCLUDE_PATHS})
34   SET(CFP_INCLUDE_PATH_PREFIX @PROJECT_BINARY_DIR@)
35   # Build the *ABSOLUTE* directories
36   FOREACH(path ${CFP_RELATIVE_INCLUDE_PATHS})
37     SET(@LIBRARY_NAME@_INCLUDE_DIRS
38       ${@LIBRARY_NAME@_INCLUDE_DIRS}
39       ${CFP_INCLUDE_PATH_PREFIX}/${path}
40       )
41   ENDFOREACH(path ${CFP_RELATIVE_INCLUDE_PATHS})
42 ELSE(CFP_BUILD_TREE_CONFIGURATION)
43   # In install tree 
44   # the include paths are relative to install prefix 
45   # On unix , GOTO_INSTALL_PREFIX allows to get back to the 
46   # installation prefix from  @LIBRARY_NAME@_DIR
47   SET(CFP_INCLUDE_PATH_PREFIX ${@LIBRARY_NAME@_DIR}${GOTO_INSTALL_PREFIX})
48   # Build the *ABSOLUTE* directories
49   FOREACH(path ${CFP_RELATIVE_INCLUDE_PATHS})
50     SET(@LIBRARY_NAME@_INCLUDE_DIRS
51       ${@LIBRARY_NAME@_INCLUDE_DIRS}
52       ${CFP_INCLUDE_PATH_PREFIX}/${path}
53       )
54   ENDFOREACH(path ${CFP_RELATIVE_INCLUDE_PATHS})
55 ENDIF(CFP_BUILD_TREE_CONFIGURATION)
56
57
58
59 # Compute the prefix for library paths
60 IF(CFP_BUILD_TREE_CONFIGURATION)
61   # In build tree
62   # the library paths are relative to the binary tree 
63   SET(CFP_LIBRARY_PATH_PREFIX @PROJECT_BINARY_DIR@)
64 ELSE(CFP_BUILD_TREE_CONFIGURATION)
65   # In install tree 
66   # the library paths are relative to install prefix
67   SET(CFP_LIBRARY_PATH_PREFIX ${@LIBRARY_NAME@_DIR}${GOTO_INSTALL_PREFIX})
68 ENDIF(CFP_BUILD_TREE_CONFIGURATION)
69 # The @LIBRARY_NAME@ library file *RELATIVE* directories.
70 SET(CFP_RELATIVE_LIBRARY_PATHS "@CFP_LIB_RELATIVE_LIBRARY_PATHS@")
71 # Build the *ABSOLUTE* directories
72 FOREACH(path ${CFP_RELATIVE_LIBRARY_PATHS})
73   SET(@LIBRARY_NAME@_LIBRARY_DIRS
74     ${@LIBRARY_NAME@_LIBRARY_DIRS}
75     ${CFP_LIBRARY_PATH_PREFIX}/${path}
76     )
77 ENDFOREACH(path ${CFP_RELATIVE_LIBRARY_PATHS})
78
79 # Set the "prefix path"
80 SET(@LIBRARY_NAME@_INSTALL_PREFIX ${CFP_LIBRARY_PATH_PREFIX})
81
82 # The C and C++ flags added by @LIBRARY_NAME@ to the cmake-configured flags.
83 SET(@LIBRARY_NAME@_REQUIRED_C_FLAGS "@CFP_LIB_REQUIRED_C_FLAGS@")
84 SET(@LIBRARY_NAME@_REQUIRED_CXX_FLAGS "@CFP_LIB_REQUIRED_CXX_FLAGS@")
85 SET(@LIBRARY_NAME@_REQUIRED_LINK_FLAGS "@CFP_LIB_REQUIRED_LINK_FLAGS@")
86
87 # The @LIBRARY_NAME@ version 
88 SET(@LIBRARY_NAME@_MAJOR_VERSION @CFP_LIB_MAJOR_VERSION@)
89 SET(@LIBRARY_NAME@_MINOR_VERSION @CFP_LIB_MINOR_VERSION@)
90 SET(@LIBRARY_NAME@_BUILD_VERSION @CFP_LIB_BUILD_VERSION@)
91 SET(@LIBRARY_NAME@_VERSION @CFP_LIB_VERSION@)
92
93 # The location of the Use@LIBRARY_NAME@.cmake file.
94 SET(@LIBRARY_NAME@_USE_FILE "${@LIBRARY_NAME@_DIR}/Use@LIBRARY_NAME@.cmake")
95
96 # The build settings file.
97 SET(@LIBRARY_NAME@_BUILD_SETTINGS_FILE 
98   "${@LIBRARY_NAME@_DIR}/@LIBRARY_NAME@BuildSettings.cmake")
99
100 # A list of all libraries for @LIBRARY_NAME@.  Those listed here should
101 # automatically pull in their dependencies.
102 SET(@LIBRARY_NAME@_LIBRARIES @CFP_LIB_LIBRARIES@)
103
104 # Messages
105 IF(FIND_PACKAGE_VERBOSE)
106   MESSAGE(STATUS "Looking for @LIBRARY_NAME@... found - configuration :")
107   MESSAGE(STATUS "* @LIBRARY_NAME@_DIR          = ${@LIBRARY_NAME@_DIR}")
108   MESSAGE(STATUS "* @LIBRARY_NAME@_VERSION      = ${@LIBRARY_NAME@_VERSION}")
109   MESSAGE(STATUS "* @LIBRARY_NAME@_USE_FILE     = ${@LIBRARY_NAME@_USE_FILE}")
110
111   MESSAGE(STATUS "* @LIBRARY_NAME@_INCLUDE_DIRS = ${@LIBRARY_NAME@_INCLUDE_DIRS}")
112   MESSAGE(STATUS "* @LIBRARY_NAME@_LIBRARY_DIRS = ${@LIBRARY_NAME@_LIBRARY_DIRS}")
113   MESSAGE(STATUS "* @LIBRARY_NAME@_LIBRARIES    = ${@LIBRARY_NAME@_LIBRARIES}")
114 ENDIF(FIND_PACKAGE_VERBOSE)
115
116 # Does the library has an additional config file (user provided) ?
117 SET(@LIBRARY_NAME@_HAS_ADDITIONAL_CONFIG_FILE @CFP_LIB_HAS_ADDITIONAL_CONFIG_FILE@)
118
119 IF (@LIBRARY_NAME@_HAS_ADDITIONAL_CONFIG_FILE)
120   IF(FIND_PACKAGE_VERBOSE)
121     MESSAGE(STATUS "Reading @LIBRARY_NAME@ additional configuration file")
122   ENDIF(FIND_PACKAGE_VERBOSE)
123   # Include it
124   INCLUDE(${@LIBRARY_NAME@_DIR}/Additional@LIBRARY_NAME@Config.cmake)
125 ENDIF (@LIBRARY_NAME@_HAS_ADDITIONAL_CONFIG_FILE)