git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@200 fdac6126-5c0c-442c-9429-916003d36597
144 lines
5.6 KiB
CMake
144 lines
5.6 KiB
CMake
# option to disable inclusion of qmake build system into source package
|
|
option (
|
|
DISABLE_QMAKE_BUILD
|
|
"Disable inclusion of qmake build system into source package"
|
|
OFF
|
|
)
|
|
|
|
# set name
|
|
set (CPACK_PACKAGE_NAME "OpenMesh")
|
|
set (CPACK_PACKAGE_VENDOR "ACG")
|
|
|
|
# set version
|
|
set (CPACK_PACKAGE_VERSION_MAJOR "${OPENMESH_VERSION_MAJOR}")
|
|
set (CPACK_PACKAGE_VERSION_MINOR "${OPENMESH_VERSION_MINOR}")
|
|
set (CPACK_PACKAGE_VERSION_PATCH "${OPENMESH_VERSION_PATCH}")
|
|
set (CPACK_PACKAGE_VERSION "${OPENMESH_VERSION}")
|
|
|
|
# addition package info
|
|
set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "OpenMesh")
|
|
#set (CPACK_PACKAGE_EXECUTABLES "DecimaterGui;SubdividerGui;QtViewer" "OpenMesh Decimater;OpenMesh Subdivider;OpenMesh Mesh Viewer")
|
|
set (CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}")
|
|
set (CPACK_PACKAGE_INSTALL_REGISTRY_KEY "${CPACK_PACKAGE_NAME}")
|
|
set (CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}")
|
|
set (CPACK_SOURCE_STRIP_FILES "")
|
|
|
|
# set (CPACK_STRIP_FILES "bin/OpenFlipper")
|
|
|
|
# source package generation
|
|
set (CPACK_SOURCE_GENERATOR "TGZ;TBZ2;ZIP")
|
|
|
|
# ignored files in source package
|
|
set (CPACK_SOURCE_IGNORE_FILES "\\\\.#;/#;.*~")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/\\\\.git")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/\\\\.svn")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "${CMAKE_CURRENT_BINARY_DIR}")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "Makefile")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "Makefile\\\\..*")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "\\\\.moc\\\\.cpp$")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "CMakeCache.txt")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "CMakeFiles")
|
|
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/.*_(32|64)_Debug/")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/.*_(32|64)_Release/")
|
|
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/MacOS")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/WIN")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/tmp/")
|
|
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/.*\\\\.kdevelop")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/.*\\\\.kdevses")
|
|
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/ACG/lib/")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/ACG/include/")
|
|
|
|
if (DISABLE_QMAKE_BUILD)
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/.*\\\\.pro")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "/qmake/")
|
|
list (APPEND CPACK_SOURCE_IGNORE_FILES "\\\\.qmake\\\\.cache")
|
|
endif ()
|
|
|
|
# filter out all disabled plugins
|
|
# file (
|
|
# GLOB _plugins_in
|
|
# RELATIVE "${CMAKE_SOURCE_DIR}"
|
|
# "${CMAKE_SOURCE_DIR}/Plugin-*"
|
|
# )
|
|
#foreach (_plugin ${_plugins_in})
|
|
# string (REPLACE "Plugin-" "" _plugin_name ${_plugin})
|
|
# string (TOUPPER ${_plugin_name} _PLUGIN)
|
|
# if (NOT EXISTS ${CMAKE_SOURCE_DIR}/${_plugin}/CMakeLists.txt AND DISABLE_QMAKE_BUILD)
|
|
# list (APPEND CPACK_SOURCE_IGNORE_FILES "${CMAKE_SOURCE_DIR}/${_plugin}")
|
|
# elseif (DISABLE_PLUGIN_${_PLUGIN})
|
|
# list (APPEND CPACK_SOURCE_IGNORE_FILES "${CMAKE_SOURCE_DIR}/${_plugin}")
|
|
# endif ()
|
|
#endforeach ()
|
|
|
|
|
|
if (WIN32)
|
|
# window NSIS installer
|
|
set (CPACK_GENERATOR "NSIS")
|
|
set (CPACK_PACKAGE_INSTALL_DIRECTORY "${CPACK_PACKAGE_NAME} ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}")
|
|
set (CPACK_NSIS_DISPLAY_NAME "OpenMesh v${CPACK_PACKAGE_VERSION}")
|
|
# set (CPACK_NSIS_MUI_ICON "${CMAKE_SOURCE_DIR}\\\\OpenFlipper\\\\Icons\\\\OpenFlipper_Icon_128x128x32.ico")
|
|
# we need a real uninstaller icon here and we have to define both to make the installer icon work
|
|
# set (CPACK_NSIS_MUI_UNIICON "${CMAKE_SOURCE_DIR}\\\\OpenFlipper\\\\Icons\\\\OpenFlipper_Icon_128x128x32.ico")
|
|
# set (CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}\\\\OpenFlipper\\\\Icons\\\\installer.bmp")
|
|
set (CPACK_NSIS_HELP_LINK "http:\\\\www.openmesh.org")
|
|
set (CPACK_NSIS_URL_INFO_ABOUT "http:\\\\www.openmesh.org")
|
|
# TODO: fillme
|
|
# set (CPACK_NSIS_CONTACT "")
|
|
|
|
#set (CPACK_NSIS_CREATE_ICONS
|
|
# "CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\OpenFlipper.lnk\\\" \\\"$INSTDIR\\\\OpenFlipper.exe\\\""
|
|
# )
|
|
#set (CPACK_NSIS_DELETE_ICONS
|
|
# "Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\OpenFlipper.lnk\\\""
|
|
# )
|
|
|
|
# append dll's to installed package
|
|
#if (EXISTS ${CMAKE_SOURCE_DIR}/WIN)
|
|
#file (GLOB _files "${CMAKE_SOURCE_DIR}/WIN/DLLs/DLLs 32 debug/*.dll")
|
|
#install(FILES ${_files}
|
|
#DESTINATION ${ACG_PROJECT_BINDIR}
|
|
#CONFIGURATIONS Debug
|
|
#)
|
|
#file (GLOB _files "${CMAKE_SOURCE_DIR}/WIN/DLLs/DLLs 32 release/*.dll")
|
|
#install (FILES ${_files}
|
|
# DESTINATION ${ACG_PROJECT_BINDIR}
|
|
# CONFIGURATIONS Release
|
|
#)
|
|
#install (FILES "${CMAKE_SOURCE_DIR}/WIN/DLLs/Redistributables/Visual Studio 2008/vcredist_x86.exe"
|
|
# DESTINATION ${ACG_PROJECT_BINDIR}
|
|
#)
|
|
#set (CPACK_NSIS_EXTRA_INSTALL_COMMANDS "ExecWait '\\\"$INSTDIR\\\\vcredist_x86.exe\\\" /q:a'")
|
|
#endif ()
|
|
#elseif (APPLE)
|
|
# apple Drag'n'Drop installer package
|
|
#set (CPACK_GENERATOR "DragNDrop;TGZ")
|
|
#set (CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/OpenFlipper/Icons/OpenFlipper_Icon.icns")
|
|
endif ()
|
|
|
|
# has to be last
|
|
if (WIN32)
|
|
set (CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP "true")
|
|
include (InstallRequiredSystemLibraries)
|
|
install (PROGRAMS ${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS} DESTINATION ${ACG_PROJECT_BINDIR})
|
|
else ()
|
|
include (InstallRequiredSystemLibraries)
|
|
endif ()
|
|
|
|
|
|
include (CPack)
|
|
|
|
if (NOT WIN32 AND NOT APPLE)
|
|
# no binary target for linux
|
|
file (REMOVE "${CMAKE_BINARY_DIR}/CPackConfig.cmake")
|
|
endif ()
|
|
|
|
# cmake doesn't create a source package target, so we have to add our own
|
|
if (EXISTS "${CMAKE_BINARY_DIR}/CPackSourceConfig.cmake")
|
|
add_custom_target (PACKAGE_SOURCE
|
|
${CMAKE_CPACK_COMMAND} --config "${CMAKE_BINARY_DIR}/CPackSourceConfig.cmake"
|
|
)
|
|
endif () |