ProjectSettings.cmake
Go to the documentation of this file.
00001 ############################################################################## 00002 # @file ProjectSettings.cmake 00003 # @brief Default project-dependent settings. 00004 # 00005 # @note The file ProjectSettings.cmake is automatically generated by 00006 # BASIS from the template file ProjectSettings.cmake.in which is part 00007 # of the BASIS installation. 00008 # 00009 # @note More general, project-independent settings are defined in the file 00010 # BasisSettings.cmake which is part of the BASIS installation. 00011 # 00012 # This module defines global CMake constants and variables which are used 00013 # by the BASIS CMake functions and macros. Hence, these values can be used 00014 # to configure the behavior of these functions to some extent without the 00015 # need to modify the functions themselves. It's main purpose is the 00016 # documentation of these variables with the configured values. 00017 # 00018 # Copyright (c) 2011, 2012 University of Pennsylvania. All rights reserved.<br /> 00019 # See https://www.cbica.upenn.edu/sbia/software/license.html or COPYING file. 00020 # 00021 # Contact: SBIA Group <sbia-software at uphs.upenn.edu> 00022 # 00023 # @ingroup BasisSettings 00024 ############################################################################## 00025 00026 ## @addtogroup BasisSettings 00027 # @{ 00028 00029 00030 # ============================================================================ 00031 # options 00032 # ============================================================================ 00033 00034 ## @brief Request build/installation of documentation. 00035 if (EXISTS "${PROJECT_DOC_DIR}") 00036 option (BUILD_DOCUMENTATION "Request build and/or installation of documentation." OFF) 00037 endif () 00038 00039 ## @brief Request build/installation of example. 00040 if (EXISTS "${PROJECT_EXAMPLE_DIR}") 00041 option (BUILD_EXAMPLE "Request build and/or installation of example." OFF) 00042 endif () 00043 00044 # ============================================================================ 00045 # project namespaces 00046 # ============================================================================ 00047 00048 ## @brief CMake namespace of top-level project. 00049 # 00050 # This is the common namespace of a BASIS project and its modules. 00051 # It is the part of the namespace which is only required if the project's 00052 # targets are referenced from another project, but not within the project. 00053 set (BASIS_PROJECT_NAMESPACE_CMAKE "basis") 00054 00055 ## @brief CMake namespace of project. 00056 # 00057 # The CMake namespace of a BASIS project is made up of its name in lower case 00058 # only as well as the namespace the project belongs to, i.e., the namespace of 00059 # the project this project is a module of. 00060 # 00061 # @sa basis_make_target_uid() 00062 # @sa basis_get_target_uid() 00063 # @sa basis_make_test_uid() 00064 # @sa basis_get_test_uid() 00065 set (PROJECT_NAMESPACE_CMAKE "basis") 00066 00067 ## @brief CMake variable of C++ namespace of project. 00068 # 00069 # The C++ namespace of a BASIS project is made up of the vendor name and the name 00070 # of the package itself. Moreover, if the project is a module of another project, 00071 # the name of the module may optionally be used as part of the namespace as well. 00072 # Namespaces in C++ are usually in lowercase only. 00073 # 00074 # @ingroup BasisCxxUtilities 00075 set (PROJECT_NAMESPACE_CXX "basis") 00076 00077 ## @brief CMake variable of Java package name of project. 00078 # 00079 # The Java package name of a BASIS project is made up of the vendor name and the name 00080 # of the package itself. Moreover, if the project is a module of another project, 00081 # the name of the module may optionally be used as part of the namespace as well. 00082 # Names of packages and sub-packages in Java are usually in lowercase only. 00083 # 00084 # @ingroup BasisJavaUtilities 00085 set (PROJECT_NAMESPACE_JAVA "") 00086 00087 ## @brief CMake variable of Python package name of project. 00088 # 00089 # The Python package name of a BASIS project is made up of the vendor name and the name 00090 # of the package itself. Moreover, if the project is a module of another project, 00091 # the name of the module may optionally be used as part of the namespace as well. 00092 # Names of packages and sub-packages in Python are usually in lowercase only. 00093 # 00094 # @ingroup BasisPythonUtilities 00095 set (PROJECT_NAMESPACE_PYTHON "basis") 00096 00097 ## @brief CMake variable of Jython package name of project. 00098 # 00099 # The Jython package name of a BASIS project is made up of the vendor name and the name 00100 # of the package itself. Moreover, if the project is a module of another project, 00101 # the name of the module may optionally be used as part of the namespace as well. 00102 # Names of packages and sub-packages in Jython are usually in lowercase only. 00103 # 00104 # @ingroup BasisPythonUtilities 00105 set (PROJECT_NAMESPACE_JYTHON "basis") 00106 00107 ## @brief CMake variable of Perl package name of project. 00108 # 00109 # The Perl package name of a BASIS project is made up of the vendor name and the name 00110 # of the package itself. Moreover, if the project is a module of another project, 00111 # the name of the module may optionally be used as part of the namespace as well. 00112 # Names of packages and sub-packages in Perl are usually in mixed CamelCase starting 00113 # with an uppercase letter. Note that Perl informally reserves lowercase module names 00114 # for "pragma" modules such as <tt>integer</tt> and <tt>strict</tt>. 00115 # 00116 # @ingroup BasisPerlUtilities 00117 set (PROJECT_NAMESPACE_PERL "BASIS") 00118 00119 ## @brief CMake variable of BASH namespace of project. 00120 # 00121 # In BASH, there exists no such concept of a namespace or package. However, 00122 # variable and function names defined in a module which is supposed to be 00123 # sourced by other BASH scripts should use a unique prefix for variable and 00124 # function names. 00125 # 00126 # @ingroup BasisBashUtilities 00127 set (PROJECT_NAMESPACE_BASH "basis") 00128 00129 ## @brief CMake variable of MATLAB package name of project. 00130 # 00131 # The MATLAB package name of a BASIS project is made up of its name in lower case 00132 # only as well as the package name of the project it belongs to. 00133 # 00134 # For information on MATLAB's package and class folders, visit the following 00135 # web page from MathWorks: 00136 # @sa http://www.mathworks.com/help/techdoc/matlab_oop/brfynt_-1.html 00137 # 00138 # @ingroup BasisMatlabUtilities 00139 set (PROJECT_NAMESPACE_MATLAB "basis") 00140 00141 # ============================================================================ 00142 # package configuration 00143 # ============================================================================ 00144 00145 ## @brief Prefix/name of CMake package configuration file of top-level project. 00146 set (BASIS_PROJECT_PACKAGE_CONFIG_PREFIX "BASIS") 00147 00148 ## @brief Prefix/name of CMake package configuration file. 00149 set (PROJECT_PACKAGE_CONFIG_PREFIX "BASIS") 00150 00151 ## @brief UID of package in CMake's user package registry. 00152 # 00153 # The value of this variable is used as name for the registry file which 00154 # contains the path to the package configuration file on Unix, or the name 00155 # of the Windows registry key on Windows. 00156 # 00157 # @sa http://www.cmake.org/Wiki/CMake/Tutorials/Package_Registry 00158 set (BASIS_PROJECT_PACKAGE_UID "SBIA-BASIS-0.0.0") 00159 00160 00161 ## @} 00162 # end of Doxygen group