Difference between revisions of "Documentation/Snapshot/Developers/Tutorials/ExtensionWriting"

From Slicer Wiki
Jump to: navigation, search
m
 
(One intermediate revision by the same user not shown)
Line 4: Line 4:
  
 
* [[media:AHM-2011-SlicerExtensions-final.ppt|How to create plug-ins for Slicer 4]]
 
* [[media:AHM-2011-SlicerExtensions-final.ppt|How to create plug-ins for Slicer 4]]
 +
 +
== 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 < ExtensionWriting

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})

Editor Extensions