BASIS  r3148
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