PROJECT(crea_ThirdParty_dlls)
-SET(PROJECT_MAJOR_VERSION 0)
-SET(PROJECT_MINOR_VERSION 1)
+SET(PROJECT_MAJOR_VERSION 1)
+SET(PROJECT_MINOR_VERSION 0)
SET(PROJECT_BUILD_VERSION 0)
SET(CREA_VERBOSE_CMAKE TRUE)
-FIND_PACKAGE(crea REQUIRED)
-IF (crea_FOUND)
- INCLUDE(${crea_USE_FILE})
-ENDIF(crea_FOUND)
-
-SET(USE_GDCM ON)
-SET(USE_GDCM_VTK ON)
-SET(USE_WXWIDGETS ON)
-SET(USE_VTK ON)
-SET(USE_ITK ON)
-#SET(USE_BOOST ON)
-
-CREA_FIND_AND_USE_LIBRARIES()
-
-SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR})
-SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR})
-MARK_AS_ADVANCED(
- CMAKE_BACKWARDS_COMPATIBILITY
- EXECUTABLE_OUTPUT_PATH
- LIBRARY_OUTPUT_PATH
- )
-
-# Includes
-INCLUDE_DIRECTORIES(
-# ${PROJECT_BINARY_DIR}
- ${PROJECT_SOURCE_DIR}/src
- )
-
-IF(WIN32)
-INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/win32)
-LINK_DIRECTORIES(${PROJECT_SOURCE_DIR}/win32)
-ENDIF(WIN32)
-
-#SUBDIRS(src)
-#SUBDIRS(appli)
-#SUBDIRS(bbtk)
-SUBDIRS(install)
+OPTION(USE_CREATHIRDPARTYDLL_V1 ON)
+
+IF(USE_CREATHIRDPARTYDLL_V1)
+ FIND_PACKAGE(crea REQUIRED)
+ IF (crea_FOUND)
+ INCLUDE(${crea_USE_FILE})
+ ENDIF(crea_FOUND)
+
+ SET(USE_GDCM ON)
+ SET(USE_GDCM_VTK ON)
+ SET(USE_WXWIDGETS ON)
+ SET(USE_VTK ON)
+ SET(USE_ITK ON)
+ SET(USE_BOOST ON)
+ SET(USE_QT4 ON)
+
+ CREA_FIND_AND_USE_LIBRARIES()
+
+ SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR})
+ SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR})
+ MARK_AS_ADVANCED(
+ CMAKE_BACKWARDS_COMPATIBILITY
+ EXECUTABLE_OUTPUT_PATH
+ LIBRARY_OUTPUT_PATH
+ )
+
+ # Includes
+ INCLUDE_DIRECTORIES(
+ # ${PROJECT_BINARY_DIR}
+ ${PROJECT_SOURCE_DIR}/src
+ )
+
+ IF(WIN32)
+ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/win32)
+ LINK_DIRECTORIES(${PROJECT_SOURCE_DIR}/win32)
+ ENDIF(WIN32)
+
+ #SUBDIRS(src)
+ #SUBDIRS(appli)
+ #SUBDIRS(bbtk)
+ SUBDIRS(install)
+ELSE(USE_CREATHIRDPARTYDLL_V1)
+ SUBDIRS(install2)
+ENDIF(USE_CREATHIRDPARTYDLL_V1)
+
-creaImageIO
+To build creaThird party dlls 2 mechanisms are proposed
+
+The first one involves the installation directories where you compiled the libraries
+wxWidgets, GDCM, VTK, ITK, boost and QT
+
+This will recurse into the directories finding the corresponding dlls, and creating the
+installer with them.
+
+The second mechanism will ask for a directory where all the dlls must be placed before hand.
+This mechanism will be easier if you have compiled and install each library and you have created
+the creaThirdPartyLibraries installer.
+
+Launch the CMakeLists.txt file and Give the directory where all the dlls are located.
+Add the tth directory as this was added in previous releases.
+
+End
+
+
(c) CREATIS-LRMN 2008
\ No newline at end of file
--- /dev/null
+
+#-----------------------------------------------------------------------------
+# 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 "crea_ThirdParty_dlls - CREATIS-LRMN")
+SET(CPACK_PACKAGE_VENDOR "CREATIS-LRMN")
+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\\\\crea_ThirdParty_dlls-${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 "crea_ThirdParty_dlls")
+ SET(CPACK_NSIS_HELP_LINK "http://www.creatis.insa-lyon.fr/creatools/crea_ThirdParty_dlls")
+ SET(CPACK_NSIS_URL_INFO_ABOUT "http://www.creatis.insa-lyon.fr/creatools/crea_ThirdParty_dlls")
+ SET(CPACK_NSIS_CONTACT "info-dev@creatis.insa-lyon.fr")
+ SET(CPACK_NSIS_MODIFY_PATH ON)
+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!")
+
+
+INCLUDE(CPack)
+
+
+# Aditional INSTALL for CPACK mecanism.
+IF(WIN32)
+
+ set (MessageLibraryPath "CREA_DLL_DESTINATION_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/ )
+
+ FILE(GLOB LST_FILE_DLL "${CREA_LIBRARY_DLL_PATH}/*.dll")
+
+ FOREACH( iLST ${LST_FILE_DLL} )
+ INSTALL(
+ FILES ${iLST}
+ DESTINATION bin/
+ )
+ ENDFOREACH(iLST)
+
+ FILE(GLOB LST_FILE_TTH "${CREA_LIBRARY_DLL_PATH}/tth/*.*")
+
+ FOREACH( iLST ${LST_FILE_TTH} )
+ INSTALL(
+ FILES ${iLST}
+ DESTINATION bin/tth/
+ )
+ ENDFOREACH(iLST)
+
+ SET(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "
+ WriteRegStr HKLM 'SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Environment' 'TTH' '$INSTDIR\\\\${CREA_LIBRARY_DLL_PATH}\\\\tth'
+ SendMessage \\\${HWND_BROADCAST} \\\${WM_WININICHANGE} 0 'STR:Environment' /TIMEOUT=5000
+ ")
+
+ENDIF(WIN32)
# Aditional INSTALL for CPACK mecanism.
-IF (WIN32)
+IF(WIN32)
## 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/ )
-
- IF(USE_VTK)
- SET(VTK_BIN_DIR ${VTK_DIR}/../../bin )
-
- FILE(GLOB LST_FILE_VTKDLL "${VTK_BIN_DIR}/*.dll")
- FOREACH( iLST ${LST_FILE_VTKDLL} )
- INSTALL(
- FILES ${iLST}
- DESTINATION bin/
- )
- ENDFOREACH(iLST)
- ENDIF(USE_VTK)
-
- IF(USE_ITK)
- INSTALL( FILES ${ITK_DIR}/../../bin/ITKCommon.dll DESTINATION bin/ )
- ENDIF(USE_ITK)
-
- IF(USE_WXWIDGETS)
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_xrc_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_richtext_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_qa_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_media_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_html_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_gl_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_core_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_aui_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_adv_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxbase28d_xml_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxbase28d_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxbase28d_odbc_vc_custom.dll DESTINATION bin/ )
- INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxbase28d_net_vc_custom.dll DESTINATION bin/ )
- ENDIF(USE_WXWIDGETS)
-
-
- IF(USE_GDCM)
- INSTALL( FILES ${GDCM_DIR}/../../bin/gdcm.dll DESTINATION bin/ )
- INSTALL( FILES ${GDCM_DIR}/../../bin/gdcmjpeg8.dll DESTINATION bin/ )
- INSTALL( FILES ${GDCM_DIR}/../../bin/gdcmjpeg12.dll DESTINATION bin/ )
- INSTALL( FILES ${GDCM_DIR}/../../bin/gdcmjpeg16.dll DESTINATION bin/ )
- INSTALL( FILES ${GDCM_DIR}/../../bin/gdcmopenjpeg.dll DESTINATION bin/ )
- INSTALL( FILES ${GDCM_DIR}/../../bin/vtkgdcm.dll DESTINATION bin/ )
- ENDIF(USE_GDCM)
-
-
-ENDIF(BBTK_STANDALONE_INSTALLER)
-
-
-ENDIF (WIN32)
+ STRING(REGEX REPLACE "\\\\" "/" WINDIR "$ENV{WINDIR}")
+ # INSTALL( FILES ${WINDIR}/system32/msvcp71d.dll DESTINATION bin/ )
+ # INSTALL( FILES ${WINDIR}/system32/msvcr71d.dll DESTINATION bin/ )
+
+ IF(USE_VTK)
+ SET(VTK_BIN_DIR ${VTK_DIR}/../../bin )
+
+ FILE(GLOB LST_FILE_VTKDLL "${VTK_BIN_DIR}/*.dll")
+ FOREACH( iLST ${LST_FILE_VTKDLL} )
+ INSTALL(
+ FILES ${iLST}
+ DESTINATION bin/
+ )
+ ENDFOREACH(iLST)
+ ENDIF(USE_VTK)
+
+ IF(USE_ITK)
+ INSTALL( FILES ${ITK_DIR}/bin/release/ITKCommon.dll DESTINATION bin/ )
+ ENDIF(USE_ITK)
+
+ IF(USE_WXWIDGETS)
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_xrc_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_richtext_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_qa_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_media_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_html_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_gl_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_core_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_aui_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxmsw28d_adv_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxbase28d_xml_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxbase28d_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxbase28d_odbc_vc_custom.dll DESTINATION bin/ )
+ INSTALL( FILES ${WXWIDGETS_ROOT_DIR}/lib/vc_dll/wxbase28d_net_vc_custom.dll DESTINATION bin/ )
+ ENDIF(USE_WXWIDGETS)
+
+ IF(USE_GDCM)
+ INSTALL( FILES ${GDCM_DIR}/bin/release/gdcm.dll DESTINATION bin/ )
+ INSTALL( FILES ${GDCM_DIR}/bin/release/gdcmjpeg8.dll DESTINATION bin/ )
+ INSTALL( FILES ${GDCM_DIR}/bin/release/gdcmjpeg12.dll DESTINATION bin/ )
+ INSTALL( FILES ${GDCM_DIR}/bin/release/gdcmjpeg16.dll DESTINATION bin/ )
+ INSTALL( FILES ${GDCM_DIR}/bin/release/gdcmopenjpeg.dll DESTINATION bin/ )
+ INSTALL( FILES ${GDCM_DIR}/bin/release/vtkgdcm.dll DESTINATION bin/ )
+ ENDIF(USE_GDCM)
+
+ IF(USE_BOOST)
+ FILE(GLOB LST_FILE_BOOSTDLL "${_boost_LIBRARIES_SEARCH_DIRS}/*.dll")
+ FOREACH( iLST ${LST_FILE_BOOSTDLL} )
+ INSTALL(
+ FILES ${iLST}
+ DESTINATION bin/
+ )
+ ENDFOREACH(iLST)
+ ENDIF(USE_BOOST)
+
+ IF(USE_QT4)
+ FILE(GLOB LST_FILE_QT4DLL "${QT_LIBRARY_DIR}/*.dll")
+ FOREACH( iLST ${LST_FILE_QT4DLL} )
+ INSTALL(
+ FILES ${iLST}
+ DESTINATION bin/
+ )
+ ENDFOREACH(iLST)
+ ENDIF(USE_QT4)
+
+
+ENDIF(WIN32)
IF(BBTK_STANDALONE_INSTALLER)
STRING(REGEX REPLACE "\\\\" "/" WINDIR "$ENV{WINDIR}")
- INSTALL( FILES ${WINDIR}/system32/msvcp71d.dll DESTINATION bin/ )
- INSTALL( FILES ${WINDIR}/system32/msvcr71d.dll DESTINATION bin/ )
+ #INSTALL( FILES ${WINDIR}/system32/msvcp71d.dll DESTINATION bin/ )
+ #INSTALL( FILES ${WINDIR}/system32/msvcr71d.dll DESTINATION bin/ )
IF(USE_VTK)
SET(VTK_BIN_DIR ${VTK_DIR}/../../bin )