changed: disable boost std::atomic use by default
[opensg.git] / Support / CMakeLists.packaging.win.txt
blobf79a22816af6411ce3560856028cf89468c89586
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
3 PROJECT(OpenSGSupportPack)
5 IF("${${PROJECT_NAME}_SOURCE_DIR}"  STREQUAL "${${PROJECT_NAME}_BINARY_DIR}")
6   MESSAGE(FATAL_ERROR "OpenSG requires an out of source Build. \n"
7                       "Please create a separate binary directory and run "
8                       "CMake there.")
9 ENDIF("${${PROJECT_NAME}_SOURCE_DIR}"  STREQUAL "${${PROJECT_NAME}_BINARY_DIR}")
11 IF(CMAKE_INSTALL_PREFIX STREQUAL /usr/local OR WIN32)
12   SET(CMAKE_INSTALL_PREFIX ${CMAKE_CURRENT_BINARY_DIR}/Pack.install 
13                            CACHE PATH "" FORCE)
14 ENDIF()
16 ################
17 # Ref Dir
18 ################
20 STRING(REGEX REPLACE /[^/]*/[^/]*/[^/]*$ "" _BASE_INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR})
22 #MESSAGE("BASE DIR : ${_BASE_INSTALL_DIR}")
24 ################
25 # includes 
26 ################
28 FILE(GLOB_RECURSE _${PROJECT_NAME}_INCLUDES 
29                   RELATIVE ${_BASE_INSTALL_DIR}
30                   ${_BASE_INSTALL_DIR}/include/*)
32 FOREACH(_INCLUDE_ELEM ${_${PROJECT_NAME}_INCLUDES})
34   STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_INCLUDE_ELEM})
36 #  MESSAGE("INC : ${_INCLUDE_ELEM} headers")
38   INSTALL(FILES ${_BASE_INSTALL_DIR}/${_INCLUDE_ELEM}
39                 DESTINATION ${_INST_PATH}
40                 PERMISSIONS OWNER_WRITE OWNER_READ
41                             GROUP_READ
42                             WORLD_READ
43                 COMPONENT headers)
45 ENDFOREACH()
47 ################
48 # libs 
49 ################
51 FILE(GLOB_RECURSE _${PROJECT_NAME}_LIBS
52                   RELATIVE ${_BASE_INSTALL_DIR}
53                   ${_BASE_INSTALL_DIR}/lib@OSG_LIBDIR_BASE_SUFFIX@/*)
56 FOREACH(_LIB_ELEM ${_${PROJECT_NAME}_LIBS})
58   STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_LIB_ELEM})
60   SET(_ELEM_COMPONENT libraries_release)
62   IF(${_LIB_ELEM} MATCHES [dD]\\.lib$)
63     SET(_ELEM_COMPONENT libraries_debug)
64   ELSEIF(${_LIB_ELEM} MATCHES l?i?b?boost.*-[gG][dD]-)
65     SET(_ELEM_COMPONENT libraries_debug)
66   ELSEIF(${_LIB_ELEM} MATCHES l?i?b?boost.*-[gG][dD]\\.lib$)
67     SET(_ELEM_COMPONENT libraries_debug)
68   ENDIF()
70 #  MESSAGE("LIB : ${_LIB_ELEM} ${_ELEM_COMPONENT} ${_INST_PATH}")
72   INSTALL(FILES ${_BASE_INSTALL_DIR}/${_LIB_ELEM}
73                 DESTINATION ${_INST_PATH}
74                 PERMISSIONS OWNER_WRITE OWNER_READ
75                             GROUP_READ
76                             WORLD_READ
77                 COMPONENT ${_ELEM_COMPONENT})
79 ENDFOREACH()
81 ################
82 # share
83 ################
85 FILE(GLOB_RECURSE _${PROJECT_NAME}_SHARE
86                   RELATIVE ${_BASE_INSTALL_DIR}
87                   ${_BASE_INSTALL_DIR}/share/*)
89 #MESSAGE("SHARE IN : ${_${PROJECT_NAME}_SHARE}")
91 FOREACH(_SHARE_ELEM ${_${PROJECT_NAME}_SHARE})
93   STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_SHARE_ELEM})
95   SET(_ELEM_COMPONENT libraries_release)
97   IF(NOT ${_INST_PATH} MATCHES /Packaging)
99 #    MESSAGE("SHARE : ${_SHARE_ELEM} ${_ELEM_COMPONENT} ${_INST_PATH}")
101     INSTALL(FILES ${_BASE_INSTALL_DIR}/${_SHARE_ELEM}
102                   DESTINATION ${_INST_PATH}
103                   PERMISSIONS OWNER_WRITE OWNER_READ
104                               GROUP_READ
105                               WORLD_READ
106                   COMPONENT ${_ELEM_COMPONENT})
107   ENDIF()
109 ENDFOREACH()
111 ################
112 # bin
113 ################
115 FILE(GLOB_RECURSE _${PROJECT_NAME}_BIN
116                   RELATIVE ${_BASE_INSTALL_DIR}
117                   ${_BASE_INSTALL_DIR}/bin/*)
120 FOREACH(_BIN_ELEM ${_${PROJECT_NAME}_BIN})
122   STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_BIN_ELEM})
124   SET(_ELEM_COMPONENT runtime_release)
126   IF(${_BIN_ELEM} MATCHES [dD]\\.dll$)
127     SET(_ELEM_COMPONENT runtime_debug)
128   ELSEIF(${_BIN_ELEM} MATCHES boost.*-[gG][dD]-)
129     SET(_ELEM_COMPONENT runtime_debug)
130   ELSEIF(${_BIN_ELEM} MATCHES boost.*-[gG][dD]\\.dll$)
131     SET(_ELEM_COMPONENT runtime_debug)
132   ENDIF()
134 #  MESSAGE("BIN : ${_BIN_ELEM} ${_ELEM_COMPONENT} ${_INST_PATH}")
136   INSTALL(FILES ${_BASE_INSTALL_DIR}/${_BIN_ELEM}
137                 DESTINATION ${_INST_PATH}
138                 PERMISSIONS OWNER_WRITE OWNER_READ
139                             GROUP_READ
140                             WORLD_READ
141                 COMPONENT ${_ELEM_COMPONENT})
143 ENDFOREACH()
146 ################
147 # qt includes 
148 ################
150 FILE(GLOB_RECURSE _${PROJECT_NAME}_INCLUDES 
151                   RELATIVE ${_BASE_INSTALL_DIR}
152                   ${_BASE_INSTALL_DIR}/qt/include/*)
154 FOREACH(_INCLUDE_ELEM ${_${PROJECT_NAME}_INCLUDES})
156   STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_INCLUDE_ELEM})
158 #  MESSAGE("INC : ${_INCLUDE_ELEM} headers ${_INST_PATH}")
160   INSTALL(FILES ${_BASE_INSTALL_DIR}/${_INCLUDE_ELEM}
161                 DESTINATION ${_INST_PATH}
162                 PERMISSIONS OWNER_WRITE OWNER_READ
163                             GROUP_READ
164                             WORLD_READ
165                 COMPONENT headers)
167 ENDFOREACH()
169 ################
170 # qt mkspecs
171 ################
173 FILE(GLOB_RECURSE _${PROJECT_NAME}_MKSPECS
174                   RELATIVE ${_BASE_INSTALL_DIR}
175                   ${_BASE_INSTALL_DIR}/qt/mkspecs/*)
177 IF(EXISTS _${PROJECT_NAME}_MKSPECS)
178   LIST(APPEND _${PROJECT_NAME}_MKSPECS)
179 ENDIF()
181 IF(EXISTS qt/q3porting.xml)
182   LIST(APPEND qt/q3porting.xml)
183 ENDIF()
185 FOREACH(_MKSPEC_ELEM ${_${PROJECT_NAME}_MKSPECS})
187   STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_MKSPEC_ELEM})
189 #  MESSAGE("MKSPEC : ${_MKSPEC_ELEM} headers ${_INST_PATH}")
191   INSTALL(FILES ${_BASE_INSTALL_DIR}/${_MKSPEC_ELEM}
192                 DESTINATION ${_INST_PATH}
193                 PERMISSIONS OWNER_WRITE OWNER_READ
194                             GROUP_READ
195                             WORLD_READ
196                 COMPONENT headers)
198 ENDFOREACH()
201 ################
202 # qt libs 
203 ################
205 FILE(GLOB_RECURSE _${PROJECT_NAME}_LIBS
206                   RELATIVE ${_BASE_INSTALL_DIR}
207                   ${_BASE_INSTALL_DIR}/qt/lib/*)
210 FOREACH(_LIB_ELEM ${_${PROJECT_NAME}_LIBS})
212   IF(NOT ${_LIB_ELEM} MATCHES .*\\.dll$)
214     STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_LIB_ELEM})
216     SET(_ELEM_COMPONENT libraries_release)
218     IF(${_LIB_ELEM} MATCHES [dD]\\.lib$)
219       SET(_ELEM_COMPONENT libraries_debug)
220     ELSEIF(${_LIB_ELEM} MATCHES [dD]4\\.lib$)
221       SET(_ELEM_COMPONENT libraries_debug)
222     ELSEIF(${_LIB_ELEM} MATCHES [dD]4\\.pdb$)
223       SET(_ELEM_COMPONENT libraries_debug)
224     ELSEIF(${_LIB_ELEM} MATCHES [dD]\\.prl)
225       SET(_ELEM_COMPONENT libraries_debug)
226     ENDIF()
228 #    MESSAGE("LIB : ${_LIB_ELEM} ${_ELEM_COMPONENT} ${_INST_PATH}")
230     INSTALL(FILES ${_BASE_INSTALL_DIR}/${_LIB_ELEM}
231                   DESTINATION ${_INST_PATH}
232                   PERMISSIONS OWNER_WRITE OWNER_READ
233                               GROUP_READ
234                               WORLD_READ
235                   COMPONENT ${_ELEM_COMPONENT})
237   ENDIF()
239 ENDFOREACH()
242 ################
243 # qt bin
244 ################
246 FILE(GLOB_RECURSE _${PROJECT_NAME}_BIN
247                   RELATIVE ${_BASE_INSTALL_DIR}
248                   ${_BASE_INSTALL_DIR}/qt/bin/*)
251 FOREACH(_BIN_ELEM ${_${PROJECT_NAME}_BIN})
253   STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_BIN_ELEM})
255   SET(_ELEM_COMPONENT runtime_release)
257   IF(${_BIN_ELEM} MATCHES [dD]\\.dll$)
258     SET(_ELEM_COMPONENT runtime_debug)
259   ELSEIF(${_BIN_ELEM} MATCHES .*d4\\.dll$)
260     SET(_ELEM_COMPONENT runtime_debug)
261   ELSEIF(${_BIN_ELEM} MATCHES .*\\.exe$)
262     SET(_ELEM_COMPONENT development_tools)
263   ENDIF()
265 #  MESSAGE("QTBIN : ${_BIN_ELEM} ${_ELEM_COMPONENT} ${_INST_PATH}")
267   INSTALL(FILES ${_BASE_INSTALL_DIR}/${_BIN_ELEM}
268                 DESTINATION ${_INST_PATH}
269                 PERMISSIONS OWNER_WRITE OWNER_READ
270                             GROUP_READ
271                             WORLD_READ
272                 COMPONENT ${_ELEM_COMPONENT})
274 ENDFOREACH()
277 ################
278 # qt trans
279 ################
281 FILE(GLOB_RECURSE _${PROJECT_NAME}_BIN
282                   RELATIVE ${_BASE_INSTALL_DIR}
283                   ${_BASE_INSTALL_DIR}/qt/translations/*)
286 FOREACH(_BIN_ELEM ${_${PROJECT_NAME}_BIN})
288   STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_BIN_ELEM})
290   SET(_ELEM_COMPONENT runtime_release)
292 #  MESSAGE("QTTRANS : ${_BIN_ELEM} ${_ELEM_COMPONENT} ${_INST_PATH}")
294   INSTALL(FILES ${_BASE_INSTALL_DIR}/${_BIN_ELEM}
295                 DESTINATION ${_INST_PATH}
296                 PERMISSIONS OWNER_WRITE OWNER_READ
297                             GROUP_READ
298                             WORLD_READ
299                 COMPONENT ${_ELEM_COMPONENT})
301 ENDFOREACH()
304 ################
305 # qt phrase
306 ################
308 FILE(GLOB_RECURSE _${PROJECT_NAME}_BIN
309                   RELATIVE ${_BASE_INSTALL_DIR}
310                   ${_BASE_INSTALL_DIR}/qt/phrasebooks/*)
313 FOREACH(_BIN_ELEM ${_${PROJECT_NAME}_BIN})
315   STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_BIN_ELEM})
317   SET(_ELEM_COMPONENT runtime_release)
319 #  MESSAGE("QTPH : ${_BIN_ELEM} ${_ELEM_COMPONENT} ${_INST_PATH}")
321   INSTALL(FILES ${_BASE_INSTALL_DIR}/${_BIN_ELEM}
322                 DESTINATION ${_INST_PATH}
323                 PERMISSIONS OWNER_WRITE OWNER_READ
324                             GROUP_READ
325                             WORLD_READ
326                 COMPONENT ${_ELEM_COMPONENT})
328 ENDFOREACH()
331 ################
332 # qt imports
333 ################
335 FILE(GLOB_RECURSE _${PROJECT_NAME}_BIN
336                   RELATIVE ${_BASE_INSTALL_DIR}
337                   ${_BASE_INSTALL_DIR}/qt/imports/*)
340 FOREACH(_BIN_ELEM ${_${PROJECT_NAME}_BIN})
342   STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_BIN_ELEM})
344   SET(_ELEM_COMPONENT runtime_release)
346   IF(${_BIN_ELEM} MATCHES [dD]\\.dll$)
347     SET(_ELEM_COMPONENT runtime_debug)
348   ELSEIF(${_BIN_ELEM} MATCHES [dD]\\.pdb)
349     SET(_ELEM_COMPONENT runtime_debug)
350   ELSEIF(${_BIN_ELEM} MATCHES .*d4\\.dll$)
351     SET(_ELEM_COMPONENT runtime_debug)
352   ELSEIF(${_BIN_ELEM} MATCHES .*\\.exe$)
353     SET(_ELEM_COMPONENT development_tools)
354   ENDIF()
356 #  MESSAGE("QTIMP : ${_BIN_ELEM} ${_ELEM_COMPONENT} ${_INST_PATH}")
358   INSTALL(FILES ${_BASE_INSTALL_DIR}/${_BIN_ELEM}
359                 DESTINATION ${_INST_PATH}
360                 PERMISSIONS OWNER_WRITE OWNER_READ
361                             GROUP_READ
362                             WORLD_READ
363                 COMPONENT ${_ELEM_COMPONENT})
365 ENDFOREACH()
368 ################
369 # qt plugins
370 ################
372 FILE(GLOB_RECURSE _${PROJECT_NAME}_BIN
373                   RELATIVE ${_BASE_INSTALL_DIR}
374                   ${_BASE_INSTALL_DIR}/qt/plugins/*)
377 FOREACH(_BIN_ELEM ${_${PROJECT_NAME}_BIN})
379   STRING(REGEX REPLACE /[^/]*$ "" _INST_PATH ${_BIN_ELEM})
381   SET(_ELEM_COMPONENT runtime_release)
383   IF(${_BIN_ELEM} MATCHES [dD]\\.dll$)
384     SET(_ELEM_COMPONENT runtime_debug)
385   ELSEIF(${_BIN_ELEM} MATCHES [dD]\\.pdb)
386     SET(_ELEM_COMPONENT runtime_debug)
387   ELSEIF(${_BIN_ELEM} MATCHES .*d4\\.dll$)
388     SET(_ELEM_COMPONENT runtime_debug)
389   ELSEIF(${_BIN_ELEM} MATCHES .*d4\\.pdb)
390     SET(_ELEM_COMPONENT runtime_debug)
391   ELSEIF(${_BIN_ELEM} MATCHES .*\\.exe$)
392     SET(_ELEM_COMPONENT development_tools)
393   ENDIF()
395 #  MESSAGE("QTIMP : ${_BIN_ELEM} ${_ELEM_COMPONENT} ${_INST_PATH}")
397   INSTALL(FILES ${_BASE_INSTALL_DIR}/${_BIN_ELEM}
398                 DESTINATION ${_INST_PATH}
399                 PERMISSIONS OWNER_WRITE OWNER_READ
400                             GROUP_READ
401                             WORLD_READ
402                 COMPONENT ${_ELEM_COMPONENT})
404 ENDFOREACH()
407 STRING(REGEX REPLACE ".*\\.(fc[1-9][0-9])\\..*" "\\1" 
408              _OSG_FC_VERSION ${CMAKE_SYSTEM_VERSION})
410 SET(OSG_HOST_SYSTEM_NAME ${CMAKE_HOST_SYSTEM_NAME})
412 IF(_OSG_FC_VERSION)
413   SET(OSG_HOST_SYSTEM_NAME ${_OSG_FC_VERSION})
414 ENDIF()
416 IF(WIN32)
417   SET(OSG_HOST_SYSTEM_NAME "win")
418 ENDIF()
420 IF(CMAKE_CL_64)
421   SET(OSG_HOST_SYSTEM_PROCESSOR x86_64)
422 ELSE()
423   SET(OSG_HOST_SYSTEM_PROCESSOR 32)
424 ENDIF()
426 SET(SYSTEM_SPEC ${OSG_HOST_SYSTEM_NAME}.${OSG_HOST_SYSTEM_PROCESSOR})
428 # Date macro by Benoit RAT (www.neub.co.nr)
429 MACRO (TODAY RESULT)
430   IF (WIN32)
431     EXECUTE_PROCESS(COMMAND "cmd" "/C date /T" OUTPUT_VARIABLE ${RESULT})
432 #    string(REGEX REPLACE "(..)/(..)/..(..).*" "\\3\\2\\1" "${RESULT}" "${${RESULT}}")
433     string(REGEX REPLACE "([a-zA-Z]+ )(..)/(..)/..(..).*" "\\2_\\3_20\\4" "${RESULT}" "${${RESULT}}")
434   ELSEIF(UNIX)
435     EXECUTE_PROCESS(COMMAND "date" "+%d_%m_%Y" OUTPUT_VARIABLE ${RESULT})
436 #    string(REGEX REPLACE "(..)_(..)_..(..).*" "\\1_\\2_\\3" "${RESULT}" "${${RESULT}}")
437     string(REGEX REPLACE "\n" "" "${RESULT}" "${${RESULT}}")
438   ELSE (WIN32)
439     MESSAGE(SEND_ERROR "date not implemented")
440     SET(${RESULT} 000000)
441   ENDIF (WIN32)
442 ENDMACRO (TODAY)
444 IF(OSG_BUILD_DATE)
445   SET(DATE ${OSG_BUILD_DATE})
446 ELSE()
447   IF(${CMAKE_VERSION} VERSION_GREATER "3.0.0")
448     STRING(TIMESTAMP DATE "%d.%m.%Y")
449   ELSE()
450     TODAY(DATE)
451   ENDIF()
452 ENDIF()
454 MESSAGE("XXXX ${DATE}")
457 SET(CPACK_PACKAGE_NAME                "OpenSGSupport")
458 SET(CPACK_PACKAGE_VERSION             @OSG_VERSION@)
459 SET(CPACK_PACKAGE_VERSION_MAJOR       @OSG_VERSION_MAJOR@)
460 SET(CPACK_PACKAGE_VERSION_MINOR       @OSG_VERSION_MINOR@)
461 SET(CPACK_PACKAGE_VERSION_PATCH       @OSG_VERSION_PATCH@)
462 SET(CPACK_PACKAGE_VENDOR              "OpenSG")
463 SET(CPACK_PACKAGE_CONTACT             "Dirk Reiners <dirk@www.opensg.org>")
464 SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "OpenSGSupport provides the third party libraries OpenSG uses")
465 SET(CPACK_RESOURCE_FILE_LICENSE       "${_BASE_INSTALL_DIR}/share/doc/OpenSG/COPYING.support")
467 SET(CPACK_COMPONENTS_GROUPING ONE_PER_GROUP)
469 IF(NOT OSG_SINGLE_PACKAGE)
470   SET(CPACK_ARCHIVE_COMPONENT_INSTALL ON)
471   SET(CPACK_RPM_COMPONENT_INSTALL     ON)
472 ENDIF()
474 SET(CPACK_PACKAGE_FILE_NAME       "OpenSGSupport.@OSG_VERSION@.${DATE}.${SYSTEM_SPEC}.@OSG_WIN_SEC@")
476 SET(OSGBUILD_PACKAGE_TYPE "ZIP" CACHE STRING "")
478 IF(NOT OSGBUILD_PACKAGE_TYPE OR OSGBUILD_PACKAGE_TYPE STREQUAL "")
479   IF(WIN32)
480     SET(OSGBUILD_PACKAGE_TYPE "ZIP")
481   ELSE(WIN32)
482     SET(OSGBUILD_PACKAGE_TYPE "TBZ2")
483   ENDIF(WIN32)
484 ENDIF()
486 STRING(TOUPPER ${OSGBUILD_PACKAGE_TYPE} CPACK_GENERATOR)
488 SET(CPACK_COMPONENTS_ALL libraries_release
489                          libraries_debug
491                          runtime_release
492                          runtime_debug
494                          headers
495                          development_tools)
497 SET(CPACK_COMPONENT_GROUP_RUNTIME_DESCRIPTION        "Suport Files needed to execute software with OpenSG.")
498 SET(CPACK_COMPONENT_GROUP_DEVEL_DESCRIPTION          "Development support files needed to develop software with OpenSG.")
500 SET(CPACK_COMPONENT_LIBRARIES_RELEASE_DISPLAY_NAME   "Support Release Libraries")
501 SET(CPACK_COMPONENT_LIBRARIES_RELEASE_DESCRIPTION    "Support Release Libraries Description")
502 SET(CPACK_COMPONENT_LIBRARIES_RELEASE_GROUP          "devel")
503 SET(CPACK_COMPONENT_LIBRARIES_RELEASE_INSTALL_TYPES  Full Developer)
505 SET(CPACK_COMPONENT_LIBRARIES_DEBUG_DISPLAY_NAME     "Support Debug Libraries")
506 SET(CPACK_COMPONENT_LIBRARIES_DEBUG_DESCRIPTION      "Support Debug Libraries Description")
507 SET(CPACK_COMPONENT_LIBRARIES_DEBUG_GROUP            "devel")
508 SET(CPACK_COMPONENT_LIBRARIES_DEBUG_INSTALL_TYPES    Full Developer)
510 SET(CPACK_COMPONENT_RUNTIME_RELEASE_DISPLAY_NAME     "Support Release Runtime")
511 SET(CPACK_COMPONENT_RUNTIME_RELEASE_DESCRIPTION      "Support Release Runtime Libraries Description")
512 SET(CPACK_COMPONENT_RUNTIME_RELEASE_GROUP            "runtime")
513 SET(CPACK_COMPONENT_RUNTIME_RELEASE_INSTALL_TYPES    Full Developer Runtime)
515 SET(CPACK_COMPONENT_RUNTIME_DEBUG_DISPLAY_NAME       "Support Debug Runtime")
516 SET(CPACK_COMPONENT_RUNTIME_DEBUG_DESCRIPTION        "Support Debug Runtimes Libraries Description")
517 SET(CPACK_COMPONENT_RUNTIME_DEBUG_GROUP              "devel")
518 SET(CPACK_COMPONENT_RUNTIME_DEBUG_INSTALL_TYPES      Full Developer)
520 SET(CPACK_COMPONENT_HEADERS_DISPLAY_NAME             "Support Headers")
521 SET(CPACK_COMPONENT_HEADERS_DESCRIPTION              "Support Headers Description")
522 SET(CPACK_COMPONENT_HEADERS_GROUP                    "devel")
523 SET(CPACK_COMPONENT_HEADERS_INSTALL_TYPES             Full Developer)
525 SET(CPACK_COMPONENT_DEVELOPMENT_TOOLS_DISPLAY_NAME   "Support Dev Tools")
526 SET(CPACK_COMPONENT_DEVELOPMENT_TOOLS_DESCRIPTION    "Support Dev Tools Description")
527 SET(CPACK_COMPONENT_DEVELOPMENT_TOOLS_GROUP          "devel")
528 SET(CPACK_COMPONENT_DEVELOPMENT_TOOLS_INSTALL_TYPES  Full Developer)
530 #NSIS specific configuration
531 IF(WIN32)
532   INCLUDE(InstallRequiredSystemLibraries)
533   IF(OSGBUILD_PACKAGE_TYPE STREQUAL "NSIS")
534 #    IF(MSVC AND (${CMAKE_VERSION} VERSION_GREATER "2.8.0" OR
535 #                 ${CMAKE_VERSION} VERSION_EQUAL   "2.8.0"   ))
536 #      INCLUDE(CMakeDetermineVSServicePack)
537 #      DetermineVSServicePack( my_service_pack )
539 #      IF(my_service_pack)
540 #        SET(CPACK_PACKAGE_FILE_NAME       "OpenSGSupport.@OSG_VERSION@.${DATE}.${SYSTEM_SPEC}.${my_service_pack}.@OSG_WIN_SEC@")
541 #      ENDIF()
542 #    ENDIF()
544     STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" CXX_COMPILER_VERSION_MAJOR "${CMAKE_CXX_COMPILER_VERSION}")
545     STRING(REGEX REPLACE "^[0-9]+\\.([0-9]+)\\.[0-9]+.*" "\\1" CXX_COMPILER_VERSION_MINOR "${CMAKE_CXX_COMPILER_VERSION}")
546     STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" CXX_COMPILER_VERSION_PATCH "${CMAKE_CXX_COMPILER_VERSION}")
548     SET(CPACK_PACKAGE_FILE_NAME       "OpenSGSupport.@OSG_VERSION@.${DATE}.${SYSTEM_SPEC}.cl${CXX_COMPILER_VERSION_MAJOR}.@OSG_WIN_SEC@")
550     #Extra install commands
551     SET(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "")
552     SET(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS "")
555     SET(CPACK_NSIS_MUI_ICON            "${CMAKE_SOURCE_DIR}/OpenSG2_Icon.ico")
556     SET(CPACK_NSIS_MUI_UNIICON         "${CMAKE_SOURCE_DIR}/OpenSG2_Icon.ico")
557     FILE(TO_NATIVE_PATH                "${CMAKE_SOURCE_DIR}\\InstallerHeader.bmp" WS_CPACK_PACKAGE_ICON)
558     STRING(REPLACE "\\" "\\\\\\\\" CPACK_PACKAGE_ICON ${WS_CPACK_PACKAGE_ICON})
559     SET(CPACK_NSIS_MODIFY_PATH         ON)
560     SET(CPACK_NSIS_INSTALLED_ICON_NAME "${CPACK_PACKAGE_NAME}")
561     SET(CPACK_NSIS_HELP_LINK           "http://www.opensg.org/wiki/Help")
562     SET(CPACK_NSIS_URL_INFO_ABOUT      "http://www.opensg.org")
563     SET(CPACK_NSIS_CONTACT             "${CPACK_PACKAGE_CONTACT}")
564     SET(CPACK_NSIS_CREATE_ICONS_EXTRA  "createShortCut '$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\${PROJECT_NAME} Directory.lnk' '$INSTDIR'")
565     SET(CPACK_NSIS_DELETE_ICONS_EXTRA  "Delete '$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\${PROJECT_NAME} Directory.lnk'")
566     SET(CPACK_NSIS_MENU_LINKS          "")
568     IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
569       SET(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64")
570     ELSE()
571       SET(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES32")
572     ENDIF()
574   ENDIF()
575 ENDIF()
577 MESSAGE("FOOO ${CPACK_PACKAGE_FILE_NAME}")
579 INCLUDE(CPack)