]> Creatis software - crea.git/commitdiff
Add sample package
authorjean-pierre roux <jean-pierre.roux@creatis.insa-lyon.fr>
Thu, 7 Apr 2011 16:06:12 +0000 (16:06 +0000)
committerjean-pierre roux <jean-pierre.roux@creatis.insa-lyon.fr>
Thu, 7 Apr 2011 16:06:12 +0000 (16:06 +0000)
appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/CMakeLists.txt [new file with mode: 0644]
appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/Configure.cmake [new file with mode: 0644]
appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/PackageConfig.cmake.in [new file with mode: 0644]
appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/README.txt [new file with mode: 0644]
appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/UsePackage.cmake.in [new file with mode: 0644]

diff --git a/appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/CMakeLists.txt b/appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/CMakeLists.txt
new file mode 100644 (file)
index 0000000..31febc3
--- /dev/null
@@ -0,0 +1,159 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+
+#===========================================================================
+# CMAKE SETTINGS FOR BUILDING A BBTK PACKAGE
+#===========================================================================
+
+#===========================================================================
+# THE NAME OF THE BBTK PACKAGE
+SET(BBTK_PACKAGE_NAME mySamplePackage)
+#===========================================================================
+
+
+
+#===========================================================================
+# IF IT IS A STANDALONE PROJECT UNCOMMENT NEXT LINE TO DECLARE YOUR PROJECT
+# PROJECT(bb${BBTK_PACKAGE_NAME})
+#===========================================================================
+
+#===========================================================================
+# PACKAGE AUTHOR
+# !!! NO COMMA ALLOWED !!!
+SET(${BBTK_PACKAGE_NAME}_AUTHOR "info-dev")
+#===========================================================================
+
+#===========================================================================
+# PACKAGE DESCRIPTION
+SET(${BBTK_PACKAGE_NAME}_DESCRIPTION "Sample Package")
+#===========================================================================
+
+#===========================================================================
+# PACKAGE VERSION NUMBER 
+SET(${BBTK_PACKAGE_NAME}_MAJOR_VERSION 1)
+SET(${BBTK_PACKAGE_NAME}_MINOR_VERSION 0)
+SET(${BBTK_PACKAGE_NAME}_BUILD_VERSION 0)
+#===========================================================================
+
+SET(USE_BOOST     ON)
+#===========================================================================
+# UNCOMMENT EACH LIBRARY NEEDED (WILL BE FOUND AND USED AUTOMATICALLY)
+# SET(${BBTK_PACKAGE_NAME}_USE_VTK  ON)
+# SET(${BBTK_PACKAGE_NAME}_USE_ITK  ON)
+# SET(${BBTK_PACKAGE_NAME}_USE_GDCM ON)
+# SET(${BBTK_PACKAGE_NAME}_USE_GDCM_VTK ON)
+# SET(${BBTK_PACKAGE_NAME}_USE_GSMIS ON)
+# SET(${BBTK_PACKAGE_NAME}_USE_WXWIDGETS ON)
+# SET(${BBTK_PACKAGE_NAME}_USE_KWWIDGETS ON)
+#===========================================================================
+
+#===========================================================================
+# LIST HERE THE OTHER bbtk PACKAGES NEEDED
+# (WILL BE FOUND AND USED AUTOMATICALLY)
+SET(${BBTK_PACKAGE_NAME}_USE_PACKAGES 
+  # std
+  # wx
+  # itk
+  # vtk
+  # ...
+  )
+#===========================================================================
+
+#===========================================================================
+# THE SOURCES OF THE PACKAGE
+# EITHER UNCOMMENT NEXT LINE TO COMPILE ALL .cxx OF THE src DIRECTORY :
+SET(${BBTK_PACKAGE_NAME}_COMPILE_ALL_CXX ON)
+# ... OR LIST THE FILES TO COMPILE MANUALLY :
+#SET(${BBTK_PACKAGE_NAME}_SOURCES
+# LIST HERE THE FILES TO COMPILE TO BUILD THE LIB
+# E.G. TO COMPILE "toto.cxx" ADD "toto" (NO EXTENSION)
+# THE PATH MUST BE RELATIVE TO THE src FOLDER
+#    )
+#===========================================================================
+
+#===========================================================================
+# THE xml SOURCES OF THE PACKAGE
+# EITHER UNCOMMENT NEXT LINE TO bbfy ALL .xml OF THE src DIRECTORY :
+SET(${BBTK_PACKAGE_NAME}_COMPILE_ALL_XML ON)
+# ... OR LIST THE FILES TO COMPILE MANUALLY :
+#SET(${BBTK_PACKAGE_NAME}_XML_SOURCES
+# LIST HERE THE FILES TO bbfy TO BUILD THE LIB
+# E.G. TO bbfy "toto.xml" ADD "toto" (NO EXTENSION)
+# THE PATH MUST BE RELATIVE TO THE src FOLDER
+#    )
+#===========================================================================
+
+#===========================================================================
+# THE SCRIPT-DEFINED BOXES OF THE PACKAGE (bbs)
+# EITHER UNCOMMENT NEXT LINE TO INCLUDE ALL .bbs OF THE bbs/boxes DIRECTORY :
+SET(${BBTK_PACKAGE_NAME}_INCLUDE_ALL_BBS_BOXES ON)
+# ... OR LIST THE FILES TO INCLUDE MANUALLY :
+# SET(${BBTK_PACKAGE_NAME}_BBS_BOXES
+# LIST HERE THE bbs FILES TO INCLUDE 
+# E.G. TO INCLUDE "boxes/bbtoto.bbs" ADD "boxes/bbtoto" (NO EXTENSION)
+# !! THE PATH MUST BE RELATIVE TO THE bbs FOLDER !!
+#)
+#===========================================================================
+
+#===========================================================================
+# THE SCRIPT-DEFINED APPLICATIONS OF THE PACKAGE (bbs)
+# EITHER UNCOMMENT NEXT LINE TO INCLUDE ALL .bbs OF THE bbs/appli DIRECTORY :
+SET(${BBTK_PACKAGE_NAME}_INCLUDE_ALL_BBS_APPLI ON)
+# ... OR LIST THE FILES TO INCLUDE MANUALLY :
+# SET(${BBTK_PACKAGE_NAME}_BBS_APPLI
+# LIST HERE THE bbs FILES TO INCLUDE 
+# E.G. TO INCLUDE "appli/testToto.bbs" ADD "appli/testToto" (NO EXTENSION)
+# !! THE PATH MUST BE RELATIVE TO THE bbs FOLDER !!
+#)
+#===========================================================================
+
+#===========================================================================
+SET(${BBTK_PACKAGE_NAME}_INCLUDE_DIRS
+  # LIST HERE YOUR ADDITIONAL INCLUDE DIRECTORIES 
+  # EXCEPT :
+  #  - src
+  #  - bbtk dirs
+  #  - automatically handled libraries or packages : wx, vtk... (see above)
+  #  - the dirs automatically set by other libraries found by FIND_PACKAGE
+  
+  ../lib
+  )
+#===========================================================================
+
+#===========================================================================
+SET(${BBTK_PACKAGE_NAME}_LIBS 
+  # LIST HERE THE ADDITIONAL LIBS TO LINK AGAINST
+  # EXCEPT : the same libs than for INCLUDE_DIRS 
+  mySampleLib
+  )
+#===========================================================================
+
+
+#===========================================================================
+# IF NEEDED : UNCOMMENT NEXT LINE 
+# AND LIST ADDITIONNAL DIRECTORIES 
+# IN WHICH TO LOOK FOR LIBRARIES TO LINK AGAINST
+# LINK_DIRECTORIES()
+#===========================================================================
+
+#===========================================================================
+# SET TO TRUE TO HAVE INFORMATION ON LIBRARIES FOUND DURING CMAKE CONFIGURE
+SET(FIND_PACKAGE_VERBOSE TRUE)
+#===========================================================================
+
+#===========================================================================
+# END OF USER SECTION
+#===========================================================================
+
+
+
+
+
+#===========================================================================
+# Include configuration script
+INCLUDE(Configure.cmake)
+#===========================================================================
+
+#===========================================================================
+# EOF
+#===========================================================================
+
diff --git a/appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/Configure.cmake b/appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/Configure.cmake
new file mode 100644 (file)
index 0000000..dc44b3b
--- /dev/null
@@ -0,0 +1,35 @@
+#===========================================================================
+# DOES THE USER WANT TO BUILD THE PACKAGE ?
+OPTION(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME} 
+  "Build the bbtk package ${BBTK_PACKAGE_NAME} ?" OFF)
+#===========================================================================
+
+IF(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
+  #===========================================================================
+  # THE USER HAS CHOSEN TO BUILD THE PACKAGE  
+  #===========================================================================
+
+  #===========================================================================
+  # If the package is not a "core" bbtk package (included into the toolkit)
+  # then we have to find and use bbtk 
+  IF(NOT BBTK_CORE_PACKAGE)
+    FIND_PACKAGE(BBTK REQUIRED)
+    INCLUDE(${BBTK_USE_FILE})
+  ENDIF(NOT BBTK_CORE_PACKAGE)
+  #===========================================================================
+  
+  #===========================================================================
+  # Include package configuration cmake script from bbtk cmake dir
+  INCLUDE(${BBTK_CMAKE_DIR}/BBTKConfigurePackage.cmake)
+  #=========================================================================== 
+  
+ELSE(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
+
+  #===========================================================================
+  # Else if it is a core package we have to reset some things...
+  IF(BBTK_CORE_PACKAGE)
+    INCLUDE(${BBTK_CMAKE_DIR}/BBTKConfigurePackage_BuildOff.cmake)   
+  ENDIF(BBTK_CORE_PACKAGE)
+  #===========================================================================
+
+ENDIF(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
diff --git a/appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/PackageConfig.cmake.in b/appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/PackageConfig.cmake.in
new file mode 100644 (file)
index 0000000..0ade94b
--- /dev/null
@@ -0,0 +1,27 @@
+#========================================================================
+# BBTK package configuration 
+# ** DO NOT REMOVE **
+SET(BBTK_PACKAGE_NAME                 @BBTK_PACKAGE_NAME@)
+SET(@BBTK_PACKAGE_NAME@_USE_VTK       @BBTK_PACKAGE_USE_VTK@)
+SET(@BBTK_PACKAGE_NAME@_USE_ITK       @BBTK_PACKAGE_USE_ITK@)
+SET(@BBTK_PACKAGE_NAME@_USE_GDCM      @BBTK_PACKAGE_USE_GDCM@)
+SET(@BBTK_PACKAGE_NAME@_USE_GSMIS     @BBTK_PACKAGE_USE_GSMIS@)
+SET(@BBTK_PACKAGE_NAME@_USE_WXWIDGETS @BBTK_PACKAGE_USE_WXWIDGETS@)
+SET(@BBTK_PACKAGE_NAME@_USE_PACKAGES  @BBTK_PACKAGE_USE_PACKAGES@)
+SET(@BBTK_PACKAGE_NAME@_AUTHOR        "@BBTK_PACKAGE_AUTHOR@") 
+SET(@BBTK_PACKAGE_NAME@_DESCRIPTION   "@BBTK_PACKAGE_DESCRIPTION@")
+SET(@BBTK_PACKAGE_NAME@_MAJOR_VERSION @BBTK_PACKAGE_MAJOR_VERSION@)
+SET(@BBTK_PACKAGE_NAME@_MINOR_VERSION @BBTK_PACKAGE_MINOR_VERSION@) 
+SET(@BBTK_PACKAGE_NAME@_BUILD_VERSION @BBTK_PACKAGE_BUILD_VERSION@)
+SET(@BBTK_PACKAGE_NAME@_INCLUDE_DIRS  @BBTK_PACKAGE_INCLUDE_DIRS@)
+SET(@BBTK_PACKAGE_NAME@_LIBS          @BBTK_PACKAGE_LIBS@)
+# A BBTK PACKAGE NEEDS BBTK
+FIND_PACKAGE(BBTK REQUIRED)
+# BBTK Package configuration file inclusion
+INCLUDE(${BBTK_CMAKE_DIR}/BBTKConfigurePackage_PackageConfig.cmake)
+# End of BBTK package configuration 
+#========================================================================
+
+#========================================================================
+# INSERT YOUR CUSTOM CONFIG HERE 
+#========================================================================
diff --git a/appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/README.txt b/appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/README.txt
new file mode 100644 (file)
index 0000000..96e622f
--- /dev/null
@@ -0,0 +1,52 @@
+This is a void bbtk package structure.
+
+You should have this file tree :
+
+.
+|-- CMakeLists.txt
+|-- Configure.cmake
+|-- PackageConfig.cmake.in
+|-- README.txt
+|-- UsePackage.cmake.in
+|-- bbs
+|   |-- CMakeLists.txt
+|   |-- appli
+|   `-- boxes
+|-- data
+|   `-- CMakeLists.txt
+|-- doc
+|   |-- CMakeLists.txt
+|   |-- bbdoc
+|   |   |-- CMakeLists.txt
+|   |   `-- header.html.in
+|   `-- doxygen
+|       |-- CMakeLists.txt
+|       |-- DoxyMainPage.txt.in
+|       `-- Doxyfile.txt.in
+`-- src
+    `-- CMakeLists.txt
+
+To use it :
+
+* Edit the root CMakeLists.txt file to customize your package build settings
+  (instructions inside the file)
+
+* Put your c++/xml boxes sources in 'src' 
+  Use the convention : If the name of your package is PACK and the name of your box is BOX then name the source files bbPACKBOX.{h|cxx|xml}
+
+* Put your script-defined boxes in 'bbs/boxes'. 
+  Use the convention : If the name of your box is 'Box' then call the file 'bbBox.bbs'
+
+* Put your script-defined applications in 'bbs/appli'. 
+
+* Put your data in 'data'
+
+* You can customize the header of your package html doc by editing the file 'doc/bbdoc/header.html.in'. You must put html code in this file (or edit it with an html editor). You can include images or links to other html pages. The images and pages must be put in the folder 'doc/bbdoc' and will be properly installed. The same way, you can link to these images or pages in your boxes descriptions without giving any path. If you create subdirs for your material then you have to install the materials yourself by editing the CMakeLists.txt and links must use path with are relative to 'doc/bbdoc'.
+
+* You can customize the main page of your doxygen doc by editing the file 'doc/doxygen/DoxyMainPage.txt.in'.
+
+* Advanced settings : you can add custom cmake settings for your package installation process by CMakeCreateFindPackage in the files PackageConfig.cmake.in and UsePackage.cmake.in (see CMakeCreateFindPackage doc).
+
+THAT'S ALL FOLKS !
+
+
diff --git a/appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/UsePackage.cmake.in b/appli/creaNewProject/NewProject/bbtk_mySamplePackage_PKG/UsePackage.cmake.in
new file mode 100644 (file)
index 0000000..2ecb206
--- /dev/null
@@ -0,0 +1,4 @@
+# DO NOT REMOVE :
+INCLUDE(${BBTK_CMAKE_DIR}/BBTKConfigurePackage_UsePackage.cmake)
+
+# INSERT YOUR CUSTOM USE HERE