]> Creatis software - creaToolsTools.git/blobdiff - Install_mingw64/Install_ThirdParty/cmake/crea_ThirdParty_dlls/install/CMakeLists.txt
#3200 creaToolsTools Feature New Normal branch mingw64
[creaToolsTools.git] / Install_mingw64 / Install_ThirdParty / cmake / crea_ThirdParty_dlls / install / CMakeLists.txt
diff --git a/Install_mingw64/Install_ThirdParty/cmake/crea_ThirdParty_dlls/install/CMakeLists.txt b/Install_mingw64/Install_ThirdParty/cmake/crea_ThirdParty_dlls/install/CMakeLists.txt
new file mode 100644 (file)
index 0000000..b753986
--- /dev/null
@@ -0,0 +1,177 @@
+
+#-----------------------------------------------------------------------------
+# CPACK+NSIS PACKAGING
+#-----------------------------------------------------------------------------
+
+#---Documentation-------------
+#http://www.cmake.org/Wiki/CMake:Packaging_With_CPack
+#http://www.cmake.org/Wiki/CMake:CPackConfiguration
+#http://www.cmake.org/Wiki/CMake:Install_Commands
+
+
+INCLUDE(InstallRequiredSystemLibraries)
+
+SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_NAME} - CREATIS")
+SET(CPACK_PACKAGE_NAME "${CMAKE_PROJECT_NAME}-${CREATOOLS_BUILDTYPE}")
+SET(CPACK_PACKAGE_VENDOR "CREATIS")
+SET(CPACK_PACKAGE_DESCRIPTION_FILE "${PROJECT_SOURCE_DIR}/README.txt")
+SET(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE.txt")
+SET(CPACK_PACKAGE_VERSION_MAJOR ${PROJECT_MAJOR_VERSION})
+SET(CPACK_PACKAGE_VERSION_MINOR ${PROJECT_MINOR_VERSION})
+SET(CPACK_PACKAGE_VERSION_PATCH ${PROJECT_BUILD_VERSION})
+
+
+SET(CPACK_PACKAGE_INSTALL_DIRECTORY "CreaTools\\\\${PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
+ IF(WIN32)
+   SET(CMAKE_INSTALL_PREFIX C:/CreaTools/crea_dlls_extern)
+ ENDIF(WIN32)
+
+
+IF(WIN32 AND NOT UNIX)
+  # There is a bug in NSI that does not handle full unix paths properly. Make
+  # sure there is at least one set of four (4) backlasshes.
+#EED  SET(CPACK_PACKAGE_ICON "${CMAKE_CURRENT_SOURCE_DIR}/kernel/install/gnome/bbi-icon2.bmp")
+#  SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin/BBI_EXE.exe")
+  SET(CPACK_NSIS_DISPLAY_NAME "${PROJECT_NAME}")
+  SET(CPACK_NSIS_HELP_LINK "http://www.creatis.insa-lyon.fr/creatools/${PROJECT_NAME}")
+  SET(CPACK_NSIS_URL_INFO_ABOUT "http://www.creatis.insa-lyon.fr/creatools/${PROJECT_NAME}")
+  SET(CPACK_NSIS_CONTACT "info-dev@creatis.insa-lyon.fr")
+  SET(CPACK_NSIS_MODIFY_PATH OFF)
+  
+  set  (CREA_BOOST_LYBRARY     boost)
+  set  (CREA_GDCM_LYBRARY      gdcm13 )
+  set  (CREA_ITK_LYBRARY       itk )
+  set  (CREA_QT_LYBRARY                qt )
+  set  (CREA_VTK_LYBRARY       vtk )  
+  set  (CREA_WXWIN_LYBRARY     wxWidgets)
+  set  (CREA_XERCES_LYBRARY    xerces)
+  set  (CREA_SQLITE_LYBRARY    sqlite)  
+  set  (CREA_SQLITE_LYBRARY    tth)  
+  
+ELSE(WIN32 AND NOT UNIX)
+#  SET(CPACK_STRIP_FILES "bin/bbi")
+  SET(CPACK_SOURCE_STRIP_FILES "")
+ENDIF(WIN32 AND NOT UNIX)
+#SET(CPACK_PACKAGE_EXECUTABLES "TestWxGimmickDialog" "Gimmick!")
+
+# Aditional INSTALL for CPACK mecanism.
+IF(WIN32)
+       set  (MessageLibraryPath "CREA_LIBRARY_DLL_PATH (itk,vtk,gdcm,wx,qt,tth)")
+       set  (CREA_LIBRARY_DLL_PATH  "" CACHE PATH ${MessageLibraryPath} )      
+       IF(NOT CREA_LIBRARY_DLL_PATH)
+               MESSAGE(FATAL_ERROR "${MessageLibraryPath}  not found")
+       ENDIF(NOT CREA_LIBRARY_DLL_PATH)
+##  INSTALL( FILES ${PROJECT_SOURCE_DIR}/win32/sqlite3.dll DESTINATION bin ) 
+       STRING(REGEX REPLACE "\\\\" "/" WINDIR "$ENV{WINDIR}")
+       # INSTALL(   FILES ${WINDIR}/system32/msvcp71d.dll                              DESTINATION bin/ )
+       # INSTALL(   FILES ${WINDIR}/system32/msvcr71d.dll                              DESTINATION bin/ )      
+       
+       
+       INSTALL(FILES ${${CMAKE_PROJECT_NAME}_BINARY_DIR}/Version.txt DESTINATION . )
+       INSTALL(DIRECTORY ${CREA_LIBRARY_DLL_PATH}/     DESTINATION . )
+
+#EED 19-11-2009        
+#      FILE(GLOB LST_FILE_DLL "${CREA_LIBRARY_DLL_PATH}/*.dll")        
+#      FOREACH( iLST  ${LST_FILE_DLL} )
+#         INSTALL( 
+#               FILES ${iLST}
+#               DESTINATION bin/
+#         )
+#      ENDFOREACH(iLST)        
+
+#EED 19-11-2009        
+#      FILE(GLOB LST_FILE_TTH "${CREA_LIBRARY_DLL_PATH}/tth/*.*")
+#      FOREACH( iLST  ${LST_FILE_TTH} )
+#         INSTALL( 
+#               FILES ${iLST}
+#               DESTINATION bin/tth/
+#         )
+#      ENDFOREACH(iLST)        
+       
+#EED 19-11-2009        
+#      SET(MIKTEXDIR "${CREA_LIBRARY_DLL_PATH}/MikTex-2.7/")   
+#      INSTALL( 
+#              DIRECTORY ${MIKTEXDIR}
+#              DESTINATION bin/MikTex-2.7
+#      )                               
+       
+#EED-08oct2009 STRING(REGEX REPLACE "\\\\" "/" ENVPATH "$ENV{Path}")
+
+#EED 19-11-2009        
+#      SET(MIKTEX_INSTALL_DIR "$INSTDIR\\\\bin\\\\MikTex-2.7\\\\miktex\\\\bin")
+
+       SET(CREA_DLLS_DIR "$INSTDIR\\\\bin")
+       SET(CREATPDLLS_DIRBIN "$INSTDIR")
+       
+#EED 19-11-2009        
+#      SET(CREATIS_ENVIRONMENT_DIRS ";${CREA_DLLS_DIR};${MIKTEX_INSTALL_DIR}")
+       SET(CREATIS_THIRDPARTYDLLS_DIRS ";${CREA_DLLS_DIR}")
+       
+       
+       SET(CPACK_NSIS_EXTRA_INSTALL_COMMANDS  "        
+
+       
+#EED 19-11-2009        
+#              WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'TTH' '$INSTDIR\\\\bin\\\\tth' 
+
+               WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'CREATIS_THIRDPARTYDLLS_DIRS' '${CREATIS_THIRDPARTYDLLS_DIRS}' 
+               
+               !define Install_ReadEnvStr_RegKey 'HKCU \\\"Environment\\\"'
+               ReadRegStr $0 \\\${Install_ReadEnvStr_RegKey} 'PATH'
+               
+               Push '$0;'
+               Push '%CREATIS_THIRDPARTYDLLS_DIRS%'
+               Call StrStr
+               Pop $2
+               StrCmp $2 '' '' AddToPath_doneEED
+        StrCpy $0 \\\"$0;%CREATIS_THIRDPARTYDLLS_DIRS%\\\"
+        WriteRegExpandStr \\\${Install_ReadEnvStr_RegKey} 'PATH' $0
+               
+               AddToPath_doneEED:
+
+               WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'BOOST_ROOT' '$INSTDIR\\\\' 
+               WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'GDCM_DIR' '$INSTDIR\\\\lib\\\\gdcm\\\\' 
+               WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'ITK_DIR' '$INSTDIR\\\\lib\\\\cmake\\\\ITK-4.12\\\\' 
+               WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'QTDIR' '$INSTDIR\\\\' 
+               WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'VTK_DIR' '$INSTDIR\\\\lib\\\\cmake\\\\vtk-8.1\\\\' 
+               WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'WXWIN' '$INSTDIR\\\\' 
+               WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'XERCES_DIR' '$INSTDIR\\\\cmake' 
+               WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'SQLITE_DIR' '$INSTDIR\\\\' 
+               WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'TTH' '$INSTDIR\\\\' 
+               
+                 CreateShortCut  '$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\Version.txt.lnk' '${CREATPDLLS_DIRBIN}\\\\Version.txt' 
+                 SendMessage \\\${HWND_BROADCAST} \\\${WM_WININICHANGE} 0 'STR:Environment' /TIMEOUT=5000 
+                 
+
+       ")
+               
+       SET(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS  "
+                   !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
+                       Delete '$SMPROGRAMS\\\\$MUI_TEMP\\\\Version.txt.lnk'
+                       
+                       StrCpy $MUI_TEMP '$SMPROGRAMS\\\\$MUI_TEMP'
+                       RMDir /r $MUI_TEMP
+
+                       !define Uninstall_EnvStr_RegKey 'HKLM \\\"SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment\\\"'                 
+                       WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'CREATIS_THIRDPARTYDLLS_DIRS' ''
+
+                       WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'BOOST_ROOT' ''
+                       WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'GDCM_DIR' ''
+                       WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'ITK_DIR' ''
+                       WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'QTDIR' ''
+                       WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'VTK_DIR' ''
+                       WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'WXWIN' ''
+                       WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'XERCES_DIR' ''
+                       WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'SQLITE_DIR' ''
+                       WriteRegExpandStr \\\${Uninstall_EnvStr_RegKey} 'TTH' ''
+               
+                       SendMessage \\\${HWND_BROADCAST} \\\${WM_WININICHANGE} 0 'STR:Environment' /TIMEOUT=5000 
+       
+               ")
+
+
+
+               
+ENDIF(WIN32)
+
+INCLUDE(CPack)
\ No newline at end of file