]> Creatis software - creaImageIO.git/blob - install/CMakeLists.txt
install creaImageIO
[creaImageIO.git] / install / CMakeLists.txt
1
2 #-----------------------------------------------------------------------------
3 # CPACK+NSIS PACKAGING
4 #-----------------------------------------------------------------------------
5
6 #---Documentation-------------
7 #http://www.cmake.org/Wiki/CMake:Packaging_With_CPack
8 #http://www.cmake.org/Wiki/CMake:CPackConfiguration
9 #http://www.cmake.org/Wiki/CMake:Install_Commands
10
11 INCLUDE(InstallRequiredSystemLibraries)
12
13 SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_NAME} - CREATIS")
14 SET(CPACK_PACKAGE_VENDOR "CREATIS")
15 SET(CPACK_PACKAGE_DESCRIPTION_FILE "${PROJECT_SOURCE_DIR}/README.txt")
16 SET(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE.txt")
17 SET(CPACK_PACKAGE_VERSION_MAJOR ${PROJECT_MAJOR_VERSION})
18 SET(CPACK_PACKAGE_VERSION_MINOR ${PROJECT_MINOR_VERSION})
19 SET(CPACK_PACKAGE_VERSION_PATCH ${PROJECT_BUILD_VERSION})
20
21 IF(WIN32)
22         SET(CPACK_PACKAGE_INSTALL_DIRECTORY "CreaTools\\\\${PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
23 ELSE(WIN32)
24         SET(CPACK_PACKAGE_INSTALL_DIRECTORY "CreaTools/${PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
25 ENDIF(WIN32)
26
27 IF(WIN32)
28         SET(CMAKE_INSTALL_PREFIX C:/CreaTools/${PROJECT_NAME})
29 ENDIF(WIN32)
30
31
32 IF(WIN32 AND NOT UNIX)
33   # There is a bug in NSI that does not handle full unix paths properly. Make
34   # sure there is at least one set of four (4) backlasshes.
35 #EED  SET(CPACK_PACKAGE_ICON "${CMAKE_CURRENT_SOURCE_DIR}/kernel/install/gnome/bbi-icon2.bmp")
36 #  SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin/BBI_EXE.exe")
37   SET(CPACK_NSIS_DISPLAY_NAME "${PROJECT_NAME}")
38   SET(CPACK_NSIS_HELP_LINK "http://www.creatis.insa-lyon.fr/creatools/${PROJECT_NAME}")
39   SET(CPACK_NSIS_URL_INFO_ABOUT "http://www.creatis.insa-lyon.fr/creatools/${PROJECT_NAME}")
40   SET(CPACK_NSIS_CONTACT "info-dev@creatis.insa-lyon.fr")
41   SET(CPACK_NSIS_MODIFY_PATH ON)
42 ELSE(WIN32 AND NOT UNIX)
43 #  SET(CPACK_STRIP_FILES "bin/bbi")
44   SET(CPACK_SOURCE_STRIP_FILES "")
45 ENDIF(WIN32 AND NOT UNIX)
46 SET(CPACK_PACKAGE_EXECUTABLES "creaImageIOApp" "creaImageIOApp")
47   
48
49 INCLUDE(CPack)
50
51 OPTION(BUILD_STANDALONE_INSTALLER "Build installer which installs all the third-party dynamic libraries needed ?" OFF) 
52 IF(BUILD_STANDALONE_INSTALLER) 
53   SET (ADDITIONAL_DLL_PATH "C:/Program Files/CreaTools/crea_ThirdParty_dlls-0.2.0/bin" CACHE PATH "Additional paths in which to look for dlls")
54 ENDIF(BUILD_STANDALONE_INSTALLER)
55
56
57 # Aditional INSTALL for CPACK mecanism.
58 IF (WIN32)
59   INSTALL( FILES ${PROJECT_BINARY_DIR}/RelWithDebInfo/sqlite3.dll DESTINATION bin ) 
60   INSTALL( FILES ${PROJECT_SOURCE_DIR}/win32/sqlite3.h DESTINATION include/creaImageIO ) 
61 ENDIF (WIN32)
62
63
64 #-- share/creaImageIO --
65
66 IF (WIN32)
67   SET(INSTALL_DATA_DIR "bin/share/creaImageIO")
68 ELSE (WIN32)
69   SET(INSTALL_DATA_DIR "share/creaImageIO/")
70 ENDIF (WIN32)
71 INSTALL( FILES ${PROJECT_SOURCE_DIR}/src/data/localdatabase_Descriptor.dscp DESTINATION ${INSTALL_DATA_DIR} )
72  
73
74
75 IF (BUILD_STANDALONE_INSTALLER)
76
77   IF(WIN32)
78    INSTALL( FILES ${SYSTEMROOT}/system32/msvcp71d.dll                     DESTINATION bin/ )
79    INSTALL( FILES ${SYSTEMROOT}/system32/msvcr71d.dll                     DESTINATION bin/ )
80    INSTALL( FILES ${PROJECT_BINARY_DIR}/relwithdebinfo//crea.dll          DESTINATION bin/ )
81    INSTALL( FILES ${PROJECT_BINARY_DIR}/relwithdebinfo//sqlite3.dll       DESTINATION bin/ )
82
83   #VTK dlls
84   #GDCM dlls
85   #WXWIDGETS dlls
86   IF(USE_VTK)
87     FILE(GLOB LST_FILE_VTKDLL "${ADDITIONAL_DLL_PATH}/*.dll")
88     FOREACH( iLST  ${LST_FILE_VTKDLL} )
89        INSTALL( 
90          FILES ${iLST}
91          DESTINATION bin/
92       )
93     ENDFOREACH(iLST)
94   ENDIF(USE_VTK)
95     
96  IF(USE_BOOST)
97          INSTALL( FILES  ${Boost_INCLUDE_DIR}/lib/boost_date_time-vc71-mt-1_38.dll   DESTINATION bin/ )
98          INSTALL( FILES  ${Boost_INCLUDE_DIR}/lib/boost_filesystem-vc71-mt-1_38.dll  DESTINATION bin/ )
99          INSTALL( FILES  ${Boost_INCLUDE_DIR}/lib/boost_iostreams-vc71-mt-1_38.dll   DESTINATION bin/ )
100          INSTALL( FILES  ${Boost_INCLUDE_DIR}/lib/boost_signals-vc71-mt-1_38.dll     DESTINATION bin/ )
101          INSTALL( FILES  ${Boost_INCLUDE_DIR}/lib/boost_thread-vc71-mt-1_38.dll      DESTINATION bin/ )
102  ENDIF(USE_BOOST)
103   
104 ENDIF(WIN32)
105
106 ENDIF (BUILD_STANDALONE_INSTALLER)
107
108
109