]> Creatis software - crea_ThirdParty_Libraries.git/blob - install/CMakeLists.txt
Added licence terms in all files.
[crea_ThirdParty_Libraries.git] / install / CMakeLists.txt
1
2 # ---------------------------------------------------------------------
3 #
4 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image 
5 #                        pour la Santé)
6 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
7 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
8 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
9 #
10 #  This software is governed by the CeCILL-B license under French law and 
11 #  abiding by the rules of distribution of free software. You can  use, 
12 #  modify and/ or redistribute the software under the terms of the CeCILL-B 
13 #  license as circulated by CEA, CNRS and INRIA at the following URL 
14 #  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html 
15 #  or in the file LICENSE.txt.
16 #
17 #  As a counterpart to the access to the source code and  rights to copy,
18 #  modify and redistribute granted by the license, users are provided only
19 #  with a limited warranty  and the software's author,  the holder of the
20 #  economic rights,  and the successive licensors  have only  limited
21 #  liability. 
22 #
23 #  The fact that you are presently reading this means that you have had
24 #  knowledge of the CeCILL-B license and that you accept its terms.
25 # ------------------------------------------------------------------------ */  
26
27
28
29 #-----------------------------------------------------------------------------
30 # CPACK+NSIS PACKAGING
31 #-----------------------------------------------------------------------------
32
33 #---Documentation-------------
34 #http://www.cmake.org/Wiki/CMake:Packaging_With_CPack
35 #http://www.cmake.org/Wiki/CMake:CPackConfiguration
36 #http://www.cmake.org/Wiki/CMake:Install_Commands
37
38
39 INCLUDE(InstallRequiredSystemLibraries)
40
41 SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_NAME} - CREATIS")
42 SET(CPACK_PACKAGE_VENDOR "CREATIS")
43 SET(CPACK_PACKAGE_DESCRIPTION_FILE "${PROJECT_SOURCE_DIR}/README.txt")
44 SET(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE.txt")
45 SET(CPACK_PACKAGE_VERSION_MAJOR ${PROJECT_MAJOR_VERSION})
46 SET(CPACK_PACKAGE_VERSION_MINOR ${PROJECT_MINOR_VERSION})
47 SET(CPACK_PACKAGE_VERSION_PATCH ${PROJECT_BUILD_VERSION})
48
49
50
51
52
53
54   SET(CPACK_PACKAGE_INSTALL_DIRECTORY "CreaTools\\\\${PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
55   IF(WIN32)
56     SET(CMAKE_INSTALL_PREFIX C:/CreaTools/${PROJECT_NAME})
57   ENDIF(WIN32)
58
59
60
61
62
63 IF(WIN32 AND NOT UNIX)
64   # There is a bug in NSI that does not handle full unix paths properly. Make
65   # sure there is at least one set of four (4) backlasshes.
66 #EED  SET(CPACK_PACKAGE_ICON "${CMAKE_CURRENT_SOURCE_DIR}/kernel/install/gnome/bbi-icon2.bmp")
67 #  SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin/BBI_EXE.exe")
68   SET(CPACK_NSIS_DISPLAY_NAME "${PROJECT_NAME}")
69   SET(CPACK_NSIS_HELP_LINK "http://www.creatis.insa-lyon.fr/creatools/${PROJECT_NAME}")
70   SET(CPACK_NSIS_URL_INFO_ABOUT "http://www.creatis.insa-lyon.fr/creatools/${PROJECT_NAME}")
71   SET(CPACK_NSIS_CONTACT "info-dev@creatis.insa-lyon.fr")
72   SET(CPACK_NSIS_MODIFY_PATH OFF)
73
74
75   set  (CREA_BOOST_LYBRARY      boost-1.40.0)
76   set  (CREA_GDCM_LYBRARY       gdcm13 )
77   set  (CREA_ITK_LYBRARY        itk-3.16.0 )
78   set  (CREA_QT_LYBRARY         Qt4.5.2 )
79   set  (CREA_VTK_LYBRARY        vtk-5.4.2 )  
80   set  (CREA_WXWIN_LYBRARY      wxWidgets-2.8.10)
81   set  (CREA_XERCES_LYBRARY     xerces-c-3.1.0)
82   
83   #set  (CREA_KWWIDGETS_LYBRARY   KWWidgets-090109 )
84   
85   set  (MessageLibraryPath "CREA_LIBRARY_DESTINATION_PATH (itk,vtk,gdcm,wx,KWWidgets,tth,MikTex)")
86   set  (CREA_LIBRARY_SOURCE_PATH  "" CACHE PATH ${MessageLibraryPath} )
87   set  (CREA_LIBRARY_DESTINATION_PATH "Library")
88
89   
90   IF(NOT CREA_LIBRARY_SOURCE_PATH)
91     MESSAGE(FATAL_ERROR "${MessageLibraryPath}  not found")
92   ENDIF(NOT CREA_LIBRARY_SOURCE_PATH)
93   
94   
95
96 ELSE(WIN32 AND NOT UNIX)
97 #  SET(CPACK_STRIP_FILES "bin/bbi")
98   SET(CPACK_SOURCE_STRIP_FILES "")
99 ENDIF(WIN32 AND NOT UNIX)
100 #SET(CPACK_PACKAGE_EXECUTABLES "TestWxGimmickDialog" "Gimmick!")
101   
102   
103
104 # Aditional INSTALL for CPACK mecanism.
105 IF (WIN32)
106
107         # tth
108         FILE(GLOB LST_FILE_TTH "${CREA_LIBRARY_SOURCE_PATH}/tth/*.*")
109         FOREACH( iLST  ${LST_FILE_TTH} )
110            INSTALL( 
111                  FILES ${iLST}
112                  DESTINATION bin/tth/
113            )
114         ENDFOREACH(iLST)        
115         # MikTex
116         SET(MIKTEXDIR "${CREA_LIBRARY_SOURCE_PATH}/MikTex-2.7/")        
117         INSTALL( 
118                 DIRECTORY ${MIKTEXDIR}
119                 DESTINATION bin/MikTex-2.7
120         )                               
121
122         INSTALL(DIRECTORY ${CREA_LIBRARY_SOURCE_PATH}\\\\${CREA_BOOST_LYBRARY}  DESTINATION ${CREA_LIBRARY_DESTINATION_PATH} )
123         INSTALL(DIRECTORY ${CREA_LIBRARY_SOURCE_PATH}\\\\${CREA_GDCM_LYBRARY}   DESTINATION ${CREA_LIBRARY_DESTINATION_PATH} )
124         INSTALL(DIRECTORY ${CREA_LIBRARY_SOURCE_PATH}\\\\${CREA_ITK_LYBRARY}    DESTINATION ${CREA_LIBRARY_DESTINATION_PATH} )
125         INSTALL(DIRECTORY ${CREA_LIBRARY_SOURCE_PATH}\\\\${CREA_QT_LYBRARY}             DESTINATION ${CREA_LIBRARY_DESTINATION_PATH} )
126         INSTALL(DIRECTORY ${CREA_LIBRARY_SOURCE_PATH}\\\\${CREA_VTK_LYBRARY}    DESTINATION ${CREA_LIBRARY_DESTINATION_PATH} )
127         INSTALL(DIRECTORY ${CREA_LIBRARY_SOURCE_PATH}\\\\${CREA_WXWIN_LYBRARY}  DESTINATION ${CREA_LIBRARY_DESTINATION_PATH} )
128         INSTALL(DIRECTORY ${CREA_LIBRARY_SOURCE_PATH}\\\\${CREA_XERCES_LYBRARY} DESTINATION ${CREA_LIBRARY_DESTINATION_PATH} )
129
130         
131         SET(MIKTEX_INSTALL_DIR "$INSTDIR\\\\bin\\\\MikTex-2.7\\\\miktex\\\\bin")
132         SET(CREATIS_THIRDPARTYLIBRARIES_DIRS ";${MIKTEX_INSTALL_DIR}")
133
134         SET(CPACK_NSIS_EXTRA_INSTALL_COMMANDS  "        
135                 WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'TTH' '$INSTDIR\\\\bin\\\\tth' 
136
137                 WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'CREATIS_THIRDPARTYLIBRARIES_DIRS' '${CREATIS_THIRDPARTYLIBRARIES_DIRS}' 
138                 !define Install_ReadEnvStr_RegKey 'HKCU \\\"Environment\\\"'
139                 ReadRegStr $0 \\\${Install_ReadEnvStr_RegKey} 'PATH'            
140                 Push '$0;'
141                 Push '%CREATIS_THIRDPARTYLIBRARIES_DIRS%'
142                 Call StrStr
143                 Pop $2
144                 StrCmp $2 '' '' AddToPath_doneEED
145         StrCpy $0 \\\"$0;%CREATIS_THIRDPARTYLIBRARIES_DIRS%\\\"
146         WriteRegExpandStr \\\${Install_ReadEnvStr_RegKey} 'PATH' $0
147                 
148                 AddToPath_doneEED:
149                 
150                 WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'BOOST_ROOT' '$INSTDIR\\\\${CREA_LIBRARY_DESTINATION_PATH}\\\\${CREA_BOOST_LYBRARY}' 
151                 WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'GDCM_DIR' '$INSTDIR\\\\${CREA_LIBRARY_DESTINATION_PATH}\\\\${CREA_GDCM_LYBRARY}\\\\lib\\\\gdcm' 
152                 WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'ITK_DIR' '$INSTDIR\\\\${CREA_LIBRARY_DESTINATION_PATH}\\\\${CREA_ITK_LYBRARY}\\\\lib\\\\InsightToolkit' 
153                 WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'QTDIR' '$INSTDIR\\\\${CREA_LIBRARY_DESTINATION_PATH}\\\\${CREA_QT_LYBRARY}' 
154                 WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'VTK_DIR' '$INSTDIR\\\\${CREA_LIBRARY_DESTINATION_PATH}\\\\${CREA_VTK_LYBRARY}\\\\lib\\\\vtk-5.4' 
155                 WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'WXWIN' '$INSTDIR\\\\${CREA_LIBRARY_DESTINATION_PATH}\\\\${CREA_WXWIN_LYBRARY}' 
156                 WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'XERCES_DIR' '$INSTDIR\\\\${CREA_LIBRARY_DESTINATION_PATH}\\\\${CREA_XERCES_LYBRARY}' 
157                 #WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'KWWidgets_dir' '$INSTDIR\\\\${CREA_LIBRARY_DESTINATION_PATH}\\\\${CREA_KWWIDGETS_LYBRARY}\\\\lib\\\\KWWidgets' 
158
159                 SendMessage \\\${HWND_BROADCAST} \\\${WM_WININICHANGE} 0 'STR:Environment' /TIMEOUT=5000 
160         ")
161                 
162                 
163         SET(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS  "
164                         !define Uninstall_EnvStr_RegKey 'HKLM \\\"SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment\\\"'                 
165                         WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'CREATIS_THIRDPARTYLIBRARIES_DIRS' ''           
166                         SendMessage \\\${HWND_BROADCAST} \\\${WM_WININICHANGE} 0 'STR:Environment' /TIMEOUT=5000 
167                 ")
168         
169     INCLUDE(CPack)
170
171         
172 ENDIF (WIN32)
173
174
175