-
Notifications
You must be signed in to change notification settings - Fork 16
/
ModuleConfig.cmake.in
114 lines (88 loc) · 4.26 KB
/
ModuleConfig.cmake.in
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
# ============================================================================
# Copyright (c) 2011-2012 University of Pennsylvania
# Copyright (c) 2013-2014 Andreas Schuh
# All rights reserved.
#
# See COPYING file for license information or visit
# http://opensource.andreasschuh.com/cmake-basis/download.html#license
# ============================================================================
##############################################################################
# @file @CONFIG_FILE@
# @brief CMake package configuration file of @PROJECT_NAME@ of @PROJECT_PACKAGE_NAME@.
#
# @note The @CONFIG_FILE@ file is automatically generated
# by BASIS from the template file ModuleConfig.cmake.in which is part of the
# BASIS installation.
#
# @ingroup BasisConfig
##############################################################################
# ============================================================================
# namespace
# ============================================================================
@BASIS_NS@
# ----------------------------------------------------------------------------
macro (basis_set_config NAME)
set (${NS}${NAME} ${ARGN})
endmacro ()
# ----------------------------------------------------------------------------
macro (basis_copy_config NAME SRC)
set (${NS}${NAME} ${${NS}${SRC}})
endmacro ()
# ----------------------------------------------------------------------------
macro (basis_append_config NAME)
list (APPEND ${NS}${NAME} ${ARGN})
endmacro ()
# ----------------------------------------------------------------------------
macro (basis_remove_duplicates_config NAME)
if (${NS}${NAME})
list (REMOVE_DUPLICATES ${NS}${NAME})
endif ()
endmacro ()
# ============================================================================
# general
# ============================================================================
## @brief Installation prefix or root of build tree.
basis_set_config (INSTALL_PREFIX "@INSTALL_PREFIX_CONFIG@")
get_filename_component (${NS}INSTALL_PREFIX "${${NS}INSTALL_PREFIX}" ABSOLUTE)
## @brief Project use file to be included by other projects.
basis_set_config (USE_FILE "${CMAKE_CURRENT_LIST_DIR}/@USE_FILE@")
## @brief Directory of example files.
basis_set_config (EXAMPLE_DIR "@EXAMPLE_DIR_CONFIG@")
# ============================================================================
# libraries
# ============================================================================
## @brief Directory of header files.
basis_set_config (INCLUDE_DIR "@INCLUDE_DIR_CONFIG@")
## @brief Directory of header files including dependencies.
basis_set_config (INCLUDE_DIRS) # to have a set recognized by Doxygen filter
basis_copy_config (INCLUDE_DIRS INCLUDE_DIR)
basis_append_config (INCLUDE_DIRS "@INCLUDE_DIRS_CONFIG@")
## @brief Directory of libraries.
basis_set_config (LIBRARY_DIR "@LIBRARY_DIR_CONFIG@")
## @brief Directory of libraries including dependencies.
basis_set_config (LIBRARY_DIRS) # to have a set() recognized by Doxygen filter
basis_copy_config (LIBRARY_DIRS LIBRARY_DIR)
basis_append_config (LIBRARY_DIRS "@LIBRARY_DIRS_CONFIG@")
## @brief Search path for Python modules.
basis_set_config (PYTHONPATH "@PYTHONPATH_CONFIG@")
## @brief Search path for Jython modules.
basis_set_config (JYTHONPATH "@JYTHONPATH_CONFIG@")
## @brief Search path for Perl modules.
basis_set_config (PERL5LIB "@PERL5LIB_CONFIG@")
## @brief Search path for MATLAB modules.
basis_set_config (MATLABPATH "@MATLABPATH_CONFIG@")
## @brief Search path for Bash modules.
#
# See the import() function of the BASIS Bash utilities.
basis_set_config (BASHPATH "@BASHPATH_CONFIG@")
# ============================================================================
# exports
# ============================================================================
## @brief Absolute path of exports file to be included by other projects.
basis_set_config (EXPORTS_FILE "${CMAKE_CURRENT_LIST_DIR}/@EXPORTS_FILE@")
## @brief Absolute path of custom exports file to be included by other projects.
basis_set_config (CUSTOM_EXPORTS_FILE "${CMAKE_CURRENT_LIST_DIR}/@CUSTOM_EXPORTS_FILE@")
# ============================================================================
# dependencies
# ============================================================================
@DEPENDS_CONFIG@