ConfigSettings.cmake
Go to the documentation of this file.
1 # ============================================================================
2 # Copyright (c) 2011-2012 University of Pennsylvania
3 # Copyright (c) 2013-2016 Andreas Schuh
4 # All rights reserved.
5 #
6 # See COPYING file for license information or visit
7 # https://cmake-basis.github.io/download.html#license
8 # ============================================================================
9 
10 ##############################################################################
11 # @file ConfigSettings.cmake
12 # @brief Sets variables used in CMake package configuration.
13 #
14 # It is suggested to use @c _CONFIG as suffix for variable names that are to
15 # be substituted in the Config.cmake.in template file in order to distinguish
16 # these variables from the build configuration.
17 #
18 # @note The default BasisConfigSettings.cmake file which is part of the BASIS
19 # installation is included prior to this file. Hence, the variables are
20 # valid even if a custom project-specific configuration is used and
21 # default values can further be overwritten in this file.
22 #
23 # @ingroup BasisSettings
24 ##############################################################################
25 
26 # ============================================================================
27 # common settings
28 # ============================================================================
29 
30 ## @brief List of enabled BASIS utilities.
32 
39 
42 
43 # the following set() statements are simply used to document the variables
44 # note that this documentation is included in the Doxygen generated documentation
45 
46 ## @brief Name of BASIS utilities library for C++.
47 set (CXX_UTILITIES_LIBRARY_CONFIG "${CXX_UTILITIES_LIBRARY_CONFIG}")
48 ## @brief Name of BASIS utilities library for Python.
49 set (PYTHON_UTILITIES_LIBRARY_CONFIG "${PYTHON_UTILITIES_LIBRARY_CONFIG}")
50 ## @brief Name of BASIS utilities library for Jython.
51 set (JYTHON_UTILITIES_LIBRARY_CONFIG "${JYTHON_UTILITIES_LIBRARY_CONFIG}")
52 ## @brief Name of BASIS utilities library for Perl.
53 set (PERL_UTILITIES_LIBRARY_CONFIG "${PERL_UTILITIES_LIBRARY_CONFIG}")
54 ## @brief Name of BASIS utilities library for MATLAB.
55 set (MATLAB_UTILITIES_LIBRARY_CONFIG "${MATLAB_UTILITIES_LIBRARY_CONFIG}")
56 ## @brief Name of BASIS utilities library for Bash.
57 set (BASH_UTILITIES_LIBRARY_CONFIG "${BASH_UTILITIES_LIBRARY_CONFIG}")
58 
59 ## @brief Name of C++ unit testing library.
60 set (TEST_LIBRARY_CONFIG "${TEST_LIBRARY_CONFIG}")
61 ## @brief Name of C++ unit testing library with definition of main() function.
62 set (TEST_MAIN_LIBRARY_CONFIG "${TEST_MAIN_LIBRARY_CONFIG}")
63 
64 # ============================================================================
65 # build tree configuration settings
66 # ============================================================================
67 
69  # CMake module path
70  set (MODULE_PATH_CONFIG "${BASIS_MODULE_PATH}")
71  set (FIND_MODULE_PATH_CONFIG "${BASIS_FIND_MODULE_PATH}")
72  # paths to template files of BASIS utilities
73  foreach (U CXX PYTHON JYTHON PERL MATLAB BASH)
74  string (TOLOWER "${U}" L)
75  set (${U}_TEMPLATES_DIR_CONFIG "${PROJECT_CODE_DIR}/utilities/${L}")
76  endforeach ()
77  # Sphinx
78  set (SPHINX_EXTENSIONS_PATH_CONFIG "${BASIS_SPHINX_EXTENSIONS_PATH}")
79  set (SPHINX_HTML_THEME_PATH_CONFIG "${PROJECT_CODE_DIR}/sphinx/themes")
80  return ()
81 endif ()
82 
83 # ============================================================================
84 # installation configuration settings
85 # ============================================================================
86 
87 ## @brief Directory of BASIS CMake modules.
88 set (MODULE_PATH_CONFIG "\${\${NS}INSTALL_PREFIX}/${INSTALL_MODULES_DIR}")
89 set (FIND_MODULE_PATH_CONFIG "\${\${NS}INSTALL_PREFIX}/${INSTALL_MODULES_DIR}")
90 # paths to templates files of utilities
91 foreach (U CXX PYTHON JYTHON PERL MATLAB BASH)
92  set (${U}_TEMPLATES_DIR_CONFIG "\${\${NS}INSTALL_PREFIX}/${INSTALL_${U}_TEMPLATES_DIR}")
93 endforeach ()
94 # Sphinx
95 set (SPHINX_EXTENSIONS_PATH_CONFIG "\${\${NS}INSTALL_PREFIX}/${INSTALL_PYTHON_LIBRARY_DIR}/${SPHINX_EXTENSIONS_PREFIX}")
96 set (SPHINX_HTML_THEME_PATH_CONFIG "\${\${NS}INSTALL_PREFIX}/${INSTALL_SPHINX_THEMES_DIR}")
cmake PYTHON_UTILITIES_LIBRARY_CONFIG
Name of BASIS utilities library for Python.
cmake MODULE_PATH_CONFIG
Directory of BASIS CMake modules.
cmake UTILITIES_ENABLED
List of enabled BASIS utilities.
cmake TEST_LIBRARY_CONFIG
Name of C++ unit testing library.
cmake SPHINX_EXTENSIONS_PATH_CONFIG
cmake BUILD_CONFIG_SETTINGS
cmake PERL_UTILITIES_LIBRARY_CONFIG
Name of BASIS utilities library for Perl.
cmake CXX_UTILITIES_LIBRARY_CONFIG
Name of BASIS utilities library for C++.
function basis_get_fully_qualified_target_uid(out TARGET_UID, in TARGET_NAME)
Get fully-qualified target name.
cmake BASH_UTILITIES_LIBRARY_CONFIG
Name of BASIS utilities library for Bash.
cmake TEST_MAIN_LIBRARY_CONFIG
Name of C++ unit testing library with definition of main() function.
cmake CXX
cmake MATLAB_UTILITIES_LIBRARY_CONFIG
Name of BASIS utilities library for MATLAB.
cmake FIND_MODULE_PATH_CONFIG
cmake SPHINX_HTML_THEME_PATH_CONFIG
cmake JYTHON_UTILITIES_LIBRARY_CONFIG
Name of BASIS utilities library for Jython.
def main(argv)
Definition: which.py:305
cmake BASIS_UTILITIES_ENABLED
Definition: Settings.cmake:109