|
| GIT_IS_REPO (dir, result_var) |
|
| GIT_WC_INFO (dir, prefix) |
|
| MACRO_PARSE_ARGUMENTS (prefix, arg_names, option_names) |
|
| func_build_target (target, build_dir) |
|
| func_test (label, build_dir) |
|
| finalize_submission () |
|
| check_for_errors () |
|
| run_ctest () |
|
| downloadFile (url, dest) |
|
| mitkAddCustomModuleTest (test_name, test_function) |
| Add a custom test for MITK module. More...
|
|
| mitkFunctionAddExternalProject () |
|
| mitkFunctionAddTestLabel (test_name) |
|
| mitkFunctionCheckCompilerFlags (CXX_FLAG_TO_TEST, RESULT_VAR) |
|
| mitkFunctionCheckCAndCXXCompilerFlags (FLAG_TO_TEST, C_RESULT_VAR, CXX_RESULT_VAR) |
|
| mitkFunctionCheckMitkCompatibility () |
|
| mitk_check_module_dependencies () |
|
| mitkFunctionCheckPackageHeader (_header, _provider) |
|
| mitkFunctionCMakeDoxygenFilterCompile () |
| Download and compile a CMake doxygen input filter. More...
|
|
| mitkFunctionCompileSnippets (snippet_path) |
|
| mitkFunctionConfigureVisualStudioUserProjectFile () |
| This function will configure a user file for visual studio projects. More...
|
|
| mitkFunctionConvertXPSchema () |
|
| mitkFunctionCreateBlueBerryApplication () |
| This function will create a BlueBerry application together with all necessary provisioning and configuration data and install support. More...
|
|
| FunctionCreateBlueBerryApplication () |
|
| mitkFunctionCreateCommandLineApp () |
| This function will create a command line executable and the scripts required to run it. More...
|
|
| mitkFunctionCreateMatchPointDeployedAlgorithm () |
| This function will create a command line executable and the scripts required to run it. More...
|
|
| mitk_create_module () |
|
| mitk_create_plugin () |
| Creates a MITK CTK plugin. More...
|
|
| _FUNCTION_CREATE_CTK_QT_COMPRESSED_HELP (qch_file, use_xsl) |
|
| MACRO_CREATE_MITK_CTK_PLUGIN () |
|
| mitkFunctionCreateProvisioningFile () |
| Create a provisioning file. More...
|
|
| mitkFunctionCreateWindowsBatchScript (in, out, build_type) |
|
| mitkFunctionEnableBuildConfiguration () |
|
| mitkFunctionExternalPythonBuildStep (proj, step, _python_executable, _bin_dir) |
|
| mitkFunctionGenerateProjectXml (dir, name, targets, is_superbuild) |
|
| mitkFunctionGetGccVersion (path_to_gcc, output_var) |
| Get the gcc version. More...
|
|
| mitkFunctionGetLibrarySearchPaths (search_path, intermediate_dir) |
|
| mitkFunctionGetMSVCVersion () |
| Get diverse visual studio ids not directly provided by CMake. More...
|
|
| mitkFunctionGetVersion (source_dir, prefix) |
| Extract version information from a local working copy. More...
|
|
| mitkFunctionGetVersionDescription (source_dir, prefix) |
| Extract the version description from a local working copy. More...
|
|
| mitkFunctionInstallAutoLoadModules () |
| Install auto-load modules needed by plug-ins. More...
|
|
| BlueBerryApplicationInstallHook () |
|
| mitkFunctionInstallCTKPlugin () |
| Install CTK plug-ins. More...
|
|
| mitkFunctionInstallExternalCMakeProject (ep_name) |
|
| mitkFunctionInstallProvisioningFiles () |
|
| mitkFunctionInstallPython (_python_libs_out, _search_path_out, _app_bundle) |
|
| mitkFunctionInstallThirdPartyCTKPlugins () |
| Install external CTK plug-ins. More...
|
|
| mitkFunctionOrganizeSources () |
|
| _MACRO_APPEND_TO_LIST (_list, _value) |
|
| SUPPRESS_VC_DEPRECATED_WARNINGS () |
|
| SUPPRESS_ALL_WARNINGS () |
|
| mitkFunctionTestPlugin () |
|
| MACRO_TEST_UIPLUGIN () |
|
| _mitk_parse_package_args () |
|
| _include_package_config (pkg_config_file) |
|
| mitk_use_modules () |
|
| mitkFunctionCreateWhitelistPaths () |
|
| mitkFunctionFindWhitelists () |
|
| mitkFunctionWhitelistModules () |
|
| mitkFunctionWhitelistPlugins () |
|
| _create_type_seq (TYPES, seq_var, seqdim_var) |
|
| mitkMacroConfigureItkPixelTypes () |
|
| MITK_CREATE_DEFAULT_TESTS () |
|
| mitk_create_executable () |
|
| MITK_CREATE_MODULE_TESTS () |
|
| mitkMacroEmptyExternalProject (proj, dependencies) |
|
| mitkMacroFindDependency (dep) |
|
| MITK_GENERATE_TOOLS_LIBRARY () |
|
| GetLinuxDistribution () |
|
| mitkMacroGetPMDPlatformString (varname) |
|
| MITK_INSTALL () |
|
| _fixup_target () |
|
| MITK_INSTALL_HELPER_APP () |
|
| MITK_INSTALL_TARGETS () |
|
| MITK_MULTIPLEX_PICTYPE (file) |
|
| CONFIGURE_PACKAGE_CONFIG_FILE (_inputFile, _outputFile) |
|
| build_and_test () |
|
| create_initial_cache (var, _shared, _threading, _autoload) |
|
| usFunctionAddResources () |
| Add resources to a library or executable. More...
|
|
| usFunctionCheckCompilerFlags (FLAG_TO_TEST, RESULT_VAR) |
|
| usFunctionCheckResourceLinking () |
|
| usFunctionCompileSnippets (snippet_path) |
|
| _us_create_test_module_helper () |
|
| usFunctionCreateTestModule (name) |
|
| usFunctionCreateTestModuleWithResources (name) |
|
| usFunctionEmbedResources () |
| Embed resources in a library or executable. More...
|
|
| usFunctionGenerateModuleInit (src_var) |
| Generate a source file which handles proper initialization of a module. More...
|
|
| usFunctionGetGccVersion (path_to_gcc, output_var) |
| Get the gcc version. More...
|
|
| usFunctionGetResourceSource () |
| Get a source file name for handling resource dependencies. More...
|
|
| usMacroCreateModule (_project_name) |
|
CMake::mitk_create_module |
( |
| ) |
|
Creates a module for the automatic module dependency system within MITK.
Example:
DEPENDS PUBLIC MitkCore
PACKAGE_DEPENDS
PRIVATE Qt5|Xml+Networking
PUBLIC ITK|Watershed
WARNINGS_AS_ERRORS
The <moduleName> parameter specifies the name of the module which is used to create a logical target name. The parameter is optional in case the MITK_MODULE_NAME_DEFAULTS_TO_DIRECTORY_NAME variable evaluates to TRUE. The module name will then be derived from the directory name in which this function is called.
If set, the following variables will be used to validate the module name:
MITK_MODULE_NAME_REGEX_MATCH The module name must match this regular expression. MITK_MODULE_NAME_REGEX_NOT_MATCH The module name must not match this regular expression.
If the MITK_MODULE_NAME_PREFIX variable is set, the module name will be prefixed with its contents.
A modules source files are specified in a separate CMake file usually called files.cmake, located in the module root directory. The mitk_create_module() macro evaluates the following CMake variables from the files.cmake file:
- CPP_FILES A list of .cpp files
- H_FILES A list of .h files without a corresponding .cpp file
- TXX_FILES A list of .txx files
- RESOURCE_FILES A list of files (resources) which are embedded into the module
- MOC_H_FILES A list of Qt header files which should be processed by the MOC
- UI_FILES A list of .ui Qt UI files
- QRC_FILES A list of .qrc Qt resource files
- DOX_FILES A list of .dox Doxygen files
List of variables available after the function is called:
- MODULE_NAME
- MODULE_TARGET
- MODULE_IS_ENABLED
- MODULE_SUBPROJECTS
- See also
- mitk_create_executable
Parameters (all optional):
- Parameters
-
<moduleName> | The module name (also used as target name) |
FILES_CMAKE | File name of a CMake file setting source list variables (defaults to files.cmake) |
VERSION | Module version number, e.g. "1.2.0" |
AUTOLOAD_WITH | A module target name identifying the module which will trigger the automatic loading of this module |
DEPRECATED_SINCE | Marks this modules as deprecated since <arg> |
DESCRIPTION | A description for this module |
Multi-value Parameters (all optional):
- Parameters
-
SUBPROJECTS | List of CDash labels |
INCLUDE_DIRS | Include directories for this module: /// [[PUBLIC|PRIVATE|INTERFACE] <dir1>...]...
/// The default scope for include directories is PUBLIC. |
DEPENDS | List of module dependencies: /// [[PUBLIC|PRIVATE|INTERFACE] <module1>...]...
/// The default scope for module dependencies is PUBLIC. |
PACKAGE_DEPENDS | List of public packages dependencies (e.g. Qt, VTK, etc.). Package dependencies have the following syntax: /// [PUBLIC|PRIVATE|INTERFACE] PACKAGE[|COMPONENT1[+COMPONENT2]...]
/// The default scope for package dependencies is PRIVATE. |
ADDITIONAL_LIBS | List of additional private libraries linked to this module. The folder containing the library will be added to the global list of library search paths. |
CPP_FILES | List of source files for this module. If the list is non-empty, the module does not need to provide a files.cmake file or FILES_CMAKE argument. |
H_FILES | List of public header files for this module. It is recommended to use a files.cmake file instead. |
Options (optional)
- Parameters
-
FORCE_STATIC | Force building this module as a static library |
GCC_DEFAULT_VISIBILITY | Do not use gcc visibility flags - all symbols will be exported |
NO_INIT | Do not create CppMicroServices initialization code |
NO_FEATURE_INFO | Do not create a feature info by calling add_feature_info() |
WARNINGS_AS_ERRORS | Treat compiler warnings as errors |
CMake::mitk_use_modules |
( |
| ) |
|
This CMake function sets up the necessary include directories, linker dependencies, and compile flags for a given target which depends on a set of MITK modules or packages.
A package argument is of the form
[PUBLIC|PRIVATE|INTERFACE] PACKAGE[|COMPONENT1[+COMPONENT2]...]
where PACKAGE is the package name (e.g. VTK) and components are the names of required package components or libraries.
If a dependency is not available, an error is thrown.
CMake::mitkFunctionAddExternalProject |
( |
| ) |
|
Register an external project.
Calling this function registers an external project with the MITK build system. Usage:
mitkFunctionAddExternalProject(NAME name [ON|OFF] [PACKAGE package] [COMPONENTS comp1...] [DEPENDS dep1...] [DOC docstring] [NO_CACHE] [ADVANCED] [NO_PACKAGE] )
The function creates a MITK_USE_<name> internal cache variable if the NO_CACHE option is given. If the NO_CACHE option is not set, a normal boolean cache option is created with the given DOC argument as help string. The option is marked as advanced if the ADVANCED option is set. The option's initial value matches the ON or OFF option and defaults to OFF if none is given. The DEPENDS arguments are used to force the corresponding MITK_USE_<depN> cache variables to ON if MITK_USE_<name> is ON.
The PACKAGE argument names the argument for the corresponding find_package() call in MITKs top-level CMakeLists.txt and MITKConfig.cmake file. It defaults to <name>. If COMPONENTS are specified, these are passed to the find_package() call. If the NO_PACKAGE option is given, the find_package() call is suppressed.
For each registered external project there must exist a file called CMakeExternals/<name>.cmake which defines the build process for the external project.
- Note
- Note that multiple calls of this function must be ordered relative to their declared dependencies. This applies to the DEPENDS arguments of this function as well as the actual target dependencies declared in the CMakeExternals/<name>.cmake file.
CMake::mitkFunctionCreateProvisioningFile |
( |
| ) |
|
Create a provisioning file.
- Parameters
-
FILE | <provisioning-file> (required) An absolute filename for the new provisioning file. |
INCLUDE | <file-list> (optional) A list of additional provisioning files which should be included. |
PLUGINS | <plugin-list> (optional) A list of target names for which provisioning entries should be created. The entries must be valid targets or be of the form [subdir/]target_name:OFF (this is the same form as passed to the ctkMacroSetupPlugins macro) If the list is empty, all known plug-in targets (external or internal) are considered. |
EXCLUDE_PLUGINS | <plugin-list> (optional) A list of plug-in symbolic names which should be excluded from the provisioning entries. |
NO_INSTALL | (option) Suppress the creation of an additional provisioning file suitable for packaging. |
This function creates a provisioning file which can be used to provision a BlueBerry application. The syntax of entries in the file is
(READ|INSTALL|START) <file-url>
READ includes the file at <file-url> and interprets it as a provisioning file, INSTALL installs <file-url>, and START installs and starts <file-url> as a plug-in in the framework.
For example the following provisioning file instructs the BlueBerry framework to read the entries in a file called SomeApp.provisioning and subsequently INSTALL and START the plug-in com.mycompany.plugin
An example invocation of this macro may look like:
set(_my_prov_file "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/MyApp.provisioning")
set(_my_plugins
com.mycompany.plugin
org.
mitk.gui.qt.extapplication
)
FunctionCreateProvisioningFile(FILE ${_my_prov_file} PLUGINS ${_my_plugins})
- Note
- This function will automatically create entries for all plug-in dependencies of the specified plug-ins.
CMake::mitkFunctionInstallThirdPartyCTKPlugins |
( |
| ) |
|
Install external CTK plug-ins.
Use this macro to call mitkFunctionInstallCTKPlugin() for all known or given external CTK plug-ins. The arguments given until a known argument name are treated as plug-in target names. If none are given, all known external plug-ins will be installed.
This macro supports multiple MacOSX Bundles by checking the variable MACOSX_BUNDLE_NAMES. If it exists, each plug-in will be installed in each given bundle (under <bundle_name>/Contents/MacOS/plugins), otherwise it will be installed in "bin/plugins".
Typical usage (will install all known external plug-ins):
FunctionInstallThirdPartyCTKPlugins()
To install only the org.commontk.eventadmin plug-in for example, call:
FunctionInstallThirdPartyCTKPlugins(org.commontk.eventadmin)
- Note
- If you provide specific plug-in names as arguments, you must make sure that your list includes the transitive closure of all plug-in dependencies. Use the ctkFunctionGetPluginDependencies() macro to obtain all dependencies of a specified set of plug-ins.