1 # ---------------------------------------------------------------------
3 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
5 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
6 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
7 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
9 # This software is governed by the CeCILL-B license under French law and
10 # abiding by the rules of distribution of free software. You can use,
11 # modify and/ or redistribute the software under the terms of the CeCILL-B
12 # license as circulated by CEA, CNRS and INRIA at the following URL
13 # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
14 # or in the file LICENSE.txt.
16 # As a counterpart to the access to the source code and rights to copy,
17 # modify and redistribute granted by the license, users are provided only
18 # with a limited warranty and the software's author, the holder of the
19 # economic rights, and the successive licensors have only limited
22 # The fact that you are presently reading this means that you have had
23 # knowledge of the CeCILL-B license and that you accept its terms.
24 # ------------------------------------------------------------------------ */
26 #-----------------------------------------------------------------------------
27 # CPACK+NSIS PACKAGING
28 #-----------------------------------------------------------------------------
30 #---Documentation-------------
31 #http://www.cmake.org/Wiki/CMake:Packaging_With_CPack
32 #http://www.cmake.org/Wiki/CMake:CPackConfiguration
33 #http://www.cmake.org/Wiki/CMake:Install_Commands
36 INCLUDE(InstallRequiredSystemLibraries)
38 SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_NAME} - CREATIS")
39 SET(CPACK_PACKAGE_VENDOR "CREATIS")
40 SET(CPACK_PACKAGE_DESCRIPTION_FILE "${PROJECT_SOURCE_DIR}/README.txt")
41 SET(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE.txt")
42 SET(CPACK_PACKAGE_VERSION_MAJOR ${PROJECT_MAJOR_VERSION})
43 SET(CPACK_PACKAGE_VERSION_MINOR ${PROJECT_MINOR_VERSION})
44 SET(CPACK_PACKAGE_VERSION_PATCH ${PROJECT_BUILD_VERSION})
49 SET(CPACK_PACKAGE_INSTALL_DIRECTORY "CreaTools\\\\${PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
51 SET(CMAKE_INSTALL_PREFIX C:/CreaTools/crea_dlls_extern)
56 IF(WIN32 AND NOT UNIX)
57 # There is a bug in NSI that does not handle full unix paths properly. Make
58 # sure there is at least one set of four (4) backlasshes.
59 #EED SET(CPACK_PACKAGE_ICON "${CMAKE_CURRENT_SOURCE_DIR}/kernel/install/gnome/bbi-icon2.bmp")
60 # SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin/BBI_EXE.exe")
61 SET(CPACK_NSIS_DISPLAY_NAME "${PROJECT_NAME}")
62 SET(CPACK_NSIS_HELP_LINK "http://www.creatis.insa-lyon.fr/creatools/${PROJECT_NAME}")
63 SET(CPACK_NSIS_URL_INFO_ABOUT "http://www.creatis.insa-lyon.fr/creatools/${PROJECT_NAME}")
64 SET(CPACK_NSIS_CONTACT "info-dev@creatis.insa-lyon.fr")
65 SET(CPACK_NSIS_MODIFY_PATH OFF)
66 ELSE(WIN32 AND NOT UNIX)
67 # SET(CPACK_STRIP_FILES "bin/bbi")
68 SET(CPACK_SOURCE_STRIP_FILES "")
69 ENDIF(WIN32 AND NOT UNIX)
70 #SET(CPACK_PACKAGE_EXECUTABLES "TestWxGimmickDialog" "Gimmick!")
72 # Aditional INSTALL for CPACK mecanism.
75 set (MessageLibraryPath "CREA_LIBRARY_DLL_PATH (itk,vtk,gdcm,wx,Qt,tth)")
76 set (CREA_LIBRARY_DLL_PATH "" CACHE PATH ${MessageLibraryPath} )
79 IF(NOT CREA_LIBRARY_DLL_PATH)
80 MESSAGE(FATAL_ERROR "${MessageLibraryPath} not found")
81 ENDIF(NOT CREA_LIBRARY_DLL_PATH)
83 ## INSTALL( FILES ${PROJECT_SOURCE_DIR}/win32/sqlite3.dll DESTINATION bin )
84 STRING(REGEX REPLACE "\\\\" "/" WINDIR "$ENV{WINDIR}")
85 # INSTALL( FILES ${WINDIR}/system32/msvcp71d.dll DESTINATION bin/ )
86 # INSTALL( FILES ${WINDIR}/system32/msvcr71d.dll DESTINATION bin/ )
89 INSTALL(DIRECTORY ${CREA_LIBRARY_DLL_PATH}/ DESTINATION bin/ )
92 # FILE(GLOB LST_FILE_DLL "${CREA_LIBRARY_DLL_PATH}/*.dll")
93 # FOREACH( iLST ${LST_FILE_DLL} )
101 # FILE(GLOB LST_FILE_TTH "${CREA_LIBRARY_DLL_PATH}/tth/*.*")
102 # FOREACH( iLST ${LST_FILE_TTH} )
105 # DESTINATION bin/tth/
110 # SET(MIKTEXDIR "${CREA_LIBRARY_DLL_PATH}/MikTex-2.7/")
112 # DIRECTORY ${MIKTEXDIR}
113 # DESTINATION bin/MikTex-2.7
116 #EED-08oct2009 STRING(REGEX REPLACE "\\\\" "/" ENVPATH "$ENV{Path}")
119 # SET(MIKTEX_INSTALL_DIR "$INSTDIR\\\\bin\\\\MikTex-2.7\\\\miktex\\\\bin")
121 SET(CREA_DLLS_DIR "$INSTDIR\\\\bin")
123 # SET(CREATIS_ENVIRONMENT_DIRS ";${CREA_DLLS_DIR};${MIKTEX_INSTALL_DIR}")
124 SET(CREATIS_THIRDPARTYDLLS_DIRS ";${CREA_DLLS_DIR}")
127 SET(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "
131 # WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'TTH' '$INSTDIR\\\\bin\\\\tth'
133 WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'CREATIS_THIRDPARTYDLLS_DIRS' '${CREATIS_THIRDPARTYDLLS_DIRS}'
135 !define Install_ReadEnvStr_RegKey 'HKCU \\\"Environment\\\"'
136 ReadRegStr $0 \\\${Install_ReadEnvStr_RegKey} 'PATH'
139 Push '%CREATIS_THIRDPARTYDLLS_DIRS%'
142 StrCmp $2 '' '' AddToPath_doneEED
143 StrCpy $0 \\\"$0;%CREATIS_THIRDPARTYDLLS_DIRS%\\\"
144 WriteRegExpandStr \\\${Install_ReadEnvStr_RegKey} 'PATH' $0
147 SendMessage \\\${HWND_BROADCAST} \\\${WM_WININICHANGE} 0 'STR:Environment' /TIMEOUT=5000
150 SET(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS "
151 !define Uninstall_EnvStr_RegKey 'HKLM \\\"SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment\\\"'
152 WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'CREATIS_THIRDPARTYDLLS_DIRS' ''
154 SendMessage \\\${HWND_BROADCAST} \\\${WM_WININICHANGE} 0 'STR:Environment' /TIMEOUT=5000