CMake modules defining settings for BASIS. More...
Files | |
file | BasisConfigSettings.cmake |
Sets basic variables used in CMake package configuration. | |
file | BasisProject.cmake |
Meta-data of this BASIS project. | |
file | BasisSettings.cmake |
Default project-independent settings. | |
file | ConfigSettings.cmake |
Sets variables used in CMake package configuration. | |
file | CTestCustom.cmake |
Custom testing configuration. | |
file | Depends.cmake |
Find additional dependencies. | |
file | ProjectSettings.cmake |
Default project-dependent settings. | |
file | Settings.cmake |
Non-default project settings. | |
Variables | |
cmake | BASH_LIBRARY_TARGET |
Name of library target which builds Bash modules in PROJECT_LIBRARY_DIR . | |
option | BASIS_ALL_DOC = OFF |
Advanced option to request build of documentation targets as part of ALL target. | |
option | BASIS_COMPILE_MATLAB = ON |
Enable/Disable compilation of MATLAB sources if the MATLAB Compiler is available. | |
option | BASIS_COMPILE_SCRIPTS = OFF |
Enable compilation of scripts if supported by the language. | |
option | BASIS_DEBUG = OFF |
Request debugging messages from BASIS functions. | |
cmake | BASIS_DOXYGEN_DOXYFILE |
Default Doxygen configuration. | |
cmake | BASIS_EXPORT |
Whether to export build targets by default. | |
cmake | BASIS_INSTALL_PUBLIC_HEADERS_OF_CXX_UTILITIES |
Force installation of public header files of BASIS C++ utilities. | |
option | BASIS_INSTALL_SITE_PACKAGES = OFF |
Enable the installation of scripted modules in site specific default directories. | |
cmake | BASIS_LANGUAGES |
List of programming languages explicitly supported by BASIS. | |
cmake | BASIS_LIBRARY_COMPONENT |
Default component used for library targets when no component is specified. | |
string | BASIS_MCC_FLAGS |
Compile flags used to build MATLAB Compiler targets. | |
cmake | BASIS_MCC_RETRY_ATTEMPTS |
Maximum number of retries on MATLAB Compiler license checkout. | |
cmake | BASIS_MCC_RETRY_DELAY |
Delay between retries to build MATLAB Compiler compiled targets on license checkout errors. | |
cmake | BASIS_MEX_TIMEOUT |
Timeout for building MEX-file targets. | |
cmake | BASIS_NAMESPACE_DELIMITER_BASH |
Namespace delimiter used in Bash. | |
cmake | BASIS_NAMESPACE_DELIMITER_CXX |
Namespace delimiter used in C++. | |
cmake | BASIS_NAMESPACE_DELIMITER_JYTHON |
Namespace delimiter used in Jython. | |
cmake | BASIS_NAMESPACE_DELIMITER_MATLAB |
Namespace delimiter used in MATLAB. | |
cmake | BASIS_NAMESPACE_DELIMITER_PERL |
Namespace delimiter used in Perl. | |
cmake | BASIS_NAMESPACE_DELIMITER_PYTHON |
Namespace delimiter used in Python. | |
cmake | BASIS_PROJECT_NAMESPACE_CMAKE |
CMake namespace of top-level project. | |
cmake | BASIS_PROJECT_PACKAGE_CONFIG_PREFIX |
Prefix/name of CMake package configuration file of top-level project. | |
cmake | BASIS_PROJECT_PACKAGE_UID |
UID of package in CMake's user package registry. | |
option | BASIS_REGISTER = ON |
Enable/disable registration of installed package in CMake registry. | |
option | BASIS_REVISION_INFO = ON |
Disable use of the revision information obtained from the revision control software such as Subversion. | |
cmake | BASIS_RUNTIME_COMPONENT |
Default component used for executables when no component is specified. | |
cmake | BASIS_SCRIPT_EXECUTE_PROCESS |
Script used to execute a process in CMake script mode. | |
cmake | BASIS_SPHINX_CONFIG |
Default Sphinx configuration. | |
cmake | BASIS_SPHINX_HTML_THEME |
Default Sphinx theme. | |
cmake | BASIS_SVN_USERS_FILE |
File used by default as --authors file to svn2cl . | |
cmake | BASIS_USE_FULLY_QUALIFIED_UIDS |
Names of project meta-data switches. | |
cmake | BASIS_UTILITIES |
Specifies that the BASIS C++ utilities shall by default not be added as dependency of an executable. | |
option | BASIS_VERBOSE = OFF |
Default Sphinx theme options. | |
option | BUILD_DOCUMENTATION = OFF |
Request build/installation of documentation. | |
option | BUILD_EXAMPLE = OFF |
Request build/installation of example. | |
string | CMAKE_BUILD_TYPE |
cmake | CMAKE_BUILD_WITH_INSTALL_RPATH |
cmake | CMAKE_INSTALL_RPATH_USE_LINK_PATH |
cmake | CMAKE_SKIP_BUILD_RPATH |
cmake | HAVE_LONG_LONG |
cmake | HAVE_PTHREAD |
cmake | HAVE_SSTREAM |
cmake | HAVE_TR1_TUPLE |
cmake | JYTHON_LIBRARY_TARGET |
Name of library target which builds Jython modules in PROJECT_LIBRARY_DIR . | |
cmake | MATLAB_LIBRARY_TARGET |
Name of library target which builds MATLAB modules in PROJECT_LIBRARY_DIR . | |
cmake | PERL_LIBRARY_TARGET |
Name of library target which builds Perl modules in PROJECT_LIBRARY_DIR . | |
cmake | PROJECT_NAMESPACE_CMAKE |
CMake namespace of project. | |
cmake | PROJECT_NAMESPACE_JAVA |
CMake variable of Java package name of project. | |
cmake | PROJECT_PACKAGE_CONFIG_PREFIX |
Prefix/name of CMake package configuration file. | |
cmake | PYTHON_LIBRARY_TARGET |
Name of library target which builds Python modules in PROJECT_LIBRARY_DIR . |
Detailed Description
CMake modules defining settings for BASIS.
Variable Documentation
cmake BASH_LIBRARY_TARGET |
Name of library target which builds Bash modules in PROJECT_LIBRARY_DIR
.
This variable is used by basis_configure_script_libraries() which is called by basis_project_impl() to add a library target of the given name for the build of the Bash modules found in the PROJECT_LIBRARY_DIR
.
- Note:
- The given target name is argument to the basis_add_library() command. Overwrite default value in Settings.cmake file of project if desired.
Definition at line 576 of file BasisSettings.cmake.
option BASIS_ALL_DOC = OFF |
Advanced option to request build of documentation targets as part of ALL target.
Definition at line 583 of file BasisSettings.cmake.
option BASIS_COMPILE_MATLAB = ON |
Enable/Disable compilation of MATLAB sources if the MATLAB Compiler is available.
Definition at line 39 of file MatlabTools.cmake.
option BASIS_COMPILE_SCRIPTS = OFF |
Enable compilation of scripts if supported by the language.
In particular, Python modules are compiled if this option is enabled and only the compiled modules are installed.
- See also:
- basis_add_script_target()
Definition at line 426 of file BasisSettings.cmake.
option BASIS_DEBUG = OFF |
Request debugging messages from BASIS functions.
Definition at line 613 of file BasisSettings.cmake.
cmake BASIS_DOXYGEN_DOXYFILE |
Default Doxygen configuration.
Definition at line 587 of file BasisSettings.cmake.
cmake BASIS_EXPORT |
Whether to export build targets by default.
Definition at line 410 of file BasisSettings.cmake.
Force installation of public header files of BASIS C++ utilities.
If this variable is set to FALSE, each header file in the PROJECT_INCLUDE_DIR
is scanned for an include statement which includes one of the public header files of the BASIS C++ utilities. If such include statement was found in a public header file of the project, the public header files of the BASIS C++ utilities are also installed as the project's public header files depend on them. You can set this variable to TRUE in the Settings.cmake file of your project to force the installation of the public header files of the project-specific BASIS C++ utilities.
- See also:
- basis_install_public_headers()
Definition at line 484 of file BasisSettings.cmake.
option BASIS_INSTALL_SITE_PACKAGES = OFF |
Enable the installation of scripted modules in site specific default directories.
If this option is ON
, scripted modules such as Python and Perl modules, in particular, are installed in the default installation directories for site packages of the respective interpreter. This means that these modules may be installed outside the installation root directory as specified by the CMAKE_INSTALL_PREFIX
. When this option is set to OFF
, all modules are installed in subdirectories of the CMAKE_INSTALL_PREFIX
. These directories may have to be added to the search path for modules manually as they might not be in the default search path of the respective interpreter.
The installation directories for public modules which are intended for external use can further be set using the -D option of CMake or be modified by editing the respective advanced CMake cache variables named INSTALL_<LANGgt;_SITE_DIR
.
- Note:
- Even though it is more convenient for the user of a package to have the modules being installed in the default directories, this option is set to
OFF
by default. The reasons are that it is in first place expected that the installation will copy files only to directories within theCMAKE_INSTALL_PREFIX
. Moreover, it is not guaranteed that the user has write permissions for the default site packages directories. Last but not least, when installing public modules located in thePROJECT_LIBRARY_DIR
source directory, BASIS does not set a default modulePREFIX
which reduces the risk of overwriting existing modules of other packages. If the developer of a BASIS package was not thorough enough and did not follow the guidelines, setting this option toON
has the potential risk of overwriting other packages' modules. Therefore, modules are only installed in system default locations if explicitly requested.
Definition at line 454 of file BasisSettings.cmake.
cmake BASIS_LANGUAGES |
List of programming languages explicitly supported by BASIS.
- Todo:
- Add full support for Java.
Definition at line 497 of file BasisSettings.cmake.
cmake BASIS_LIBRARY_COMPONENT |
Default component used for library targets when no component is specified.
The default component a library target and its auxiliary files are associated with if no component was specified, explicitly.
Definition at line 397 of file BasisSettings.cmake.
string BASIS_MCC_FLAGS |
""
cmake BASIS_MCC_TIMEOUT
Compile flags used to build MATLAB Compiler targets.
Definition at line 70 of file MatlabTools.cmake.
cmake BASIS_MCC_RETRY_ATTEMPTS |
Maximum number of retries on MATLAB Compiler license checkout.
Definition at line 83 of file MatlabTools.cmake.
cmake BASIS_MCC_RETRY_DELAY |
Delay between retries to build MATLAB Compiler compiled targets on license checkout errors.
Definition at line 85 of file MatlabTools.cmake.
cmake BASIS_MEX_TIMEOUT |
Timeout for building MEX-file targets.
Definition at line 87 of file MatlabTools.cmake.
Namespace delimiter used in Bash.
- Note:
- Bash itself has no concept of namespaces. This namespace delimiter is used by the import() function of the BASIS Utilities for Bash.
- See also:
- Bash Utilities
Definition at line 522 of file BasisSettings.cmake.
Namespace delimiter used in C++.
Definition at line 507 of file BasisSettings.cmake.
Namespace delimiter used in Jython.
Definition at line 511 of file BasisSettings.cmake.
Namespace delimiter used in MATLAB.
Definition at line 515 of file BasisSettings.cmake.
Namespace delimiter used in Perl.
Definition at line 513 of file BasisSettings.cmake.
Namespace delimiter used in Python.
Definition at line 509 of file BasisSettings.cmake.
CMake namespace of top-level project.
This is the common namespace of a BASIS project and its modules. It is the part of the namespace which is only required if the project's targets are referenced from another project, but not within the project.
Definition at line 53 of file ProjectSettings.cmake.
Prefix/name of CMake package configuration file of top-level project.
Definition at line 146 of file ProjectSettings.cmake.
UID of package in CMake's user package registry.
The value of this variable is used as name for the registry file which contains the path to the package configuration file on Unix, or the name of the Windows registry key on Windows.
Definition at line 158 of file ProjectSettings.cmake.
option BASIS_REGISTER = ON |
Enable/disable registration of installed package in CMake registry.
Definition at line 487 of file BasisSettings.cmake.
option BASIS_REVISION_INFO = ON |
Disable use of the revision information obtained from the revision control software such as Subversion.
If this option is TRUE
, the revision information is not included in the PROJECT_RELEASE
information.
Definition at line 417 of file BasisSettings.cmake.
cmake BASIS_RUNTIME_COMPONENT |
Default component used for executables when no component is specified.
The default component an executable target and its auxiliary files are associated with if no component was specified, explicitly.
Definition at line 403 of file BasisSettings.cmake.
Script used to execute a process in CMake script mode.
In order to be able to assign a timeout to the execution of a custom command and to add some error message parsing, this script is used by some build rules to actually perform the build step. See for example, the build of executables using the MATLAB Compiler.
Definition at line 463 of file BasisSettings.cmake.
cmake BASIS_SPHINX_CONFIG |
Default Sphinx configuration.
Definition at line 590 of file BasisSettings.cmake.
cmake BASIS_SPHINX_HTML_THEME |
Default Sphinx theme.
Definition at line 593 of file BasisSettings.cmake.
cmake BASIS_SVN_USERS_FILE |
File used by default as --authors
file to svn2cl
.
This file lists all Subversion users at SBIA and is used by default for the mapping of Subversion user names to real names during the generation of changelogs.
Definition at line 470 of file BasisSettings.cmake.
Names of project meta-data switches.
Names of project meta-data with only one argument. Names of project meta-data with multiple arguments. Names of project meta-data. Names of additional meta-data for Slicer modules with only one argument. Names of additional meta-data for Slicer modules with multiple arguments. Names of additional meta-data for Slicer modules. List of name patterns used for special purpose targets.
Contains a list of target name patterns that are used by the BASIS functions for special purposes and are hence not to be used for project targets. Names of recognized properties on targets.
Unfortunately, the ARGV
and ARGN
arguments of a CMake function() or macro() does not preserve values which themselves are lists. Therefore, it is not possible to distinguish between property names and their values in the arguments passed to set_target_properties() or basis_set_target_properties(). To overcome this problem, this list specifies all the possible property names. Everything else is considered to be a property value except the first argument follwing right after the PROPERTIES
keyword. Alternatively, basis_set_property() can be used as here no disambiguity exists.
- Note:
- Placeholders such as <CONFIG> are allowed. These are treated as the regular expression "[^ ]+". See basis_list_to_regex().
- See also:
- http://www.cmake.org/cmake/help/cmake-2-8-docs.html#section_PropertiesonTargets Whether BASIS shall use fully-qualified target UIDs.
If this option is OFF, the namespace of the top-level BASIS project is not prepended to the actual CMake build target names.
For example, instead of the fully-qualified target UID "sbia.@PROJECT_NAME_L@.target", the CMake target name will simply be "target". Only when the target is referenced from another project, the fully-qualified target UID is usually required.
Definition at line 391 of file BasisSettings.cmake.
cmake BASIS_UTILITIES |
Specifies that the BASIS C++ utilities shall by default not be added as dependency of an executable.
Definition at line 407 of file BasisSettings.cmake.
option BASIS_VERBOSE = OFF |
Default Sphinx theme options.
Request verbose messages from BASIS functions.
Definition at line 609 of file BasisSettings.cmake.
option BUILD_DOCUMENTATION = OFF |
Request build/installation of documentation.
Definition at line 36 of file ProjectSettings.cmake.
option BUILD_EXAMPLE = OFF |
Request build/installation of example.
Definition at line 41 of file ProjectSettings.cmake.
string CMAKE_BUILD_TYPE |
"Release"
cmake CMAKE_SKIP_RPATH
Definition at line 625 of file BasisSettings.cmake.
Definition at line 644 of file BasisSettings.cmake.
Definition at line 643 of file BasisSettings.cmake.
cmake CMAKE_SKIP_BUILD_RPATH |
Definition at line 642 of file BasisSettings.cmake.
cmake HAVE_LONG_LONG |
Definition at line 35 of file BasisSettings.cmake.
cmake HAVE_PTHREAD |
Definition at line 104 of file BasisSettings.cmake.
cmake HAVE_SSTREAM |
Definition at line 81 of file BasisSettings.cmake.
cmake HAVE_TR1_TUPLE |
Definition at line 88 of file BasisSettings.cmake.
cmake JYTHON_LIBRARY_TARGET |
Name of library target which builds Jython modules in PROJECT_LIBRARY_DIR
.
This variable is used by basis_configure_script_libraries() which is called by basis_project_impl() to add a library target of the given name for the build of the Jython modules found in the PROJECT_LIBRARY_DIR
.
- Note:
- The given target name is argument to the basis_add_library() command. Overwrite default value in Settings.cmake file of project if desired.
Definition at line 546 of file BasisSettings.cmake.
cmake MATLAB_LIBRARY_TARGET |
Name of library target which builds MATLAB modules in PROJECT_LIBRARY_DIR
.
This variable is used by basis_configure_script_libraries() which is called by basis_project_impl() to add a library target of the given name for the build of the MATLAB modules found in the PROJECT_LIBRARY_DIR
.
- Note:
- The given target name is argument to the basis_add_library() command. Overwrite default value in Settings.cmake file of project if desired.
Definition at line 566 of file BasisSettings.cmake.
cmake PERL_LIBRARY_TARGET |
Name of library target which builds Perl modules in PROJECT_LIBRARY_DIR
.
This variable is used by basis_configure_script_libraries() which is called by basis_project_impl() to add a library target of the given name for the build of the Perl modules found in the PROJECT_LIBRARY_DIR
.
- Note:
- The given target name is argument to the basis_add_library() command. Overwrite default value in Settings.cmake file of project if desired.
Definition at line 556 of file BasisSettings.cmake.
cmake PROJECT_NAMESPACE_CMAKE |
CMake namespace of project.
The CMake namespace of a BASIS project is made up of its name in lower case only as well as the namespace the project belongs to, i.e., the namespace of the project this project is a module of.
Definition at line 65 of file ProjectSettings.cmake.
cmake PROJECT_NAMESPACE_JAVA |
CMake variable of Java package name of project.
The Java package name of a BASIS project is made up of the vendor name and the name of the package itself. Moreover, if the project is a module of another project, the name of the module may optionally be used as part of the namespace as well. Names of packages and sub-packages in Java are usually in lowercase only.
Definition at line 85 of file ProjectSettings.cmake.
Prefix/name of CMake package configuration file.
Definition at line 149 of file ProjectSettings.cmake.
cmake PYTHON_LIBRARY_TARGET |
Name of library target which builds Python modules in PROJECT_LIBRARY_DIR
.
This variable is used by basis_configure_script_libraries() which is called by basis_project_impl() to add a library target of the given name for the build of the Python modules found in the PROJECT_LIBRARY_DIR
.
- Note:
- The given target name is argument to the basis_add_library() command. Overwrite default value in Settings.cmake file of project if desired.
Definition at line 536 of file BasisSettings.cmake.