Difference between revisions of "Documentation/Snapshot/Developers/Tutorials/ExtensionWriting"
From Slicer Wiki
m (→Introduction) |
m (→Introduction) |
||
Line 7: | Line 7: | ||
== Metadata == | == Metadata == | ||
+ | == Extension dependencies == | ||
+ | |||
+ | <pre> | ||
+ | set(EXTENSION_DEPENDS NA) # Specified as a space separated list or 'NA' if any | ||
+ | </pre> | ||
== Additional C/CXX flags == | == Additional C/CXX flags == |
Latest revision as of 17:43, 10 April 2012
Home < Documentation < Snapshot < Developers < Tutorials < ExtensionWritingContents
Introduction
An extension should be considered as a collection of modules.
Metadata
Extension dependencies
set(EXTENSION_DEPENDS NA) # Specified as a space separated list or 'NA' if any
Additional C/CXX flags
find_package(Slicer REQUIRED) # Additional C/CXX flags - Should be defined before including Slicer_USE_FILE set(ADDITIONAL_C_FLAGS "" CACHE STRING "Additional ${EXTENSION_NAME} C Flags") set(ADDITIONAL_CXX_FLAGS "" CACHE STRING "Additional ${EXTENSION_NAME} CXX Flags") include(${Slicer_USE_FILE})
License & Readme
set(EXTENSION_LICENSE_FILE ${Slicer_LICENSE_FILE}) set(EXTENSION_README_FILE ${Slicer_README_FILE}) set(EXTENSION_LICENSE_SHORT_DESCRIPTION ${Slicer_LICENSE_SHORT_DESCRIPTION})
Superbuild extension - Package external project
set(CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${CMAKE_BINARY_DIR};${EXTENSION_NAME};ALL;/") #set(CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${<EP>_DIR};<EP>;RuntimeLibraries;/") INCLUDE(${Slicer_EXTENSION_CPACK})