diff --git a/CPackConfig.cmake b/CPackConfig.cmake index ece7a5b3..8f9f484b 100644 --- a/CPackConfig.cmake +++ b/CPackConfig.cmake @@ -22,16 +22,21 @@ set(CPACK_SOURCE_GENERATOR "TGZ") set(CPACK_SOURCE_IGNORE_FILES "~$;[.]swp$;/[.]svn/;/[.]git/;.gitignore;/build/;tags;cscope.*") set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}") +if (WIN32) + set(CPACK_GENERATOR "ZIP") -### nsis generator -set(CPACK_GENERATOR "NSIS") + ### nsis generator + find_package(NSIS) + if (HAVE_NSIS) + set(CPACK_GENERATOR "${CPACK_GENERATOR};NSIS") + set(CPACK_NSIS_DISPLAY_NAME "The SSH Library") + set(CPACK_NSIS_COMPRESSOR "/SOLID zlib") + set(CPACK_NSIS_MENU_LINKS "http://www.libssh.org/" "libssh homepage") + endif (HAVE_NSIS) +endif (WIN32) set(CPACK_PACKAGE_INSTALL_DIRECTORY "libssh") -set(CPACK_NSIS_DISPLAY_NAME "The SSH Library") -set(CPACK_NSIS_COMPRESSOR "/SOLID zlib") -set(CPACK_NSIS_MENU_LINKS "http://www.libssh.org/" "libssh homepage") - set(CPACK_PACKAGE_FILE_NAME ${APPLICATION_NAME}-${CPACK_PACKAGE_VERSION}) set(CPACK_COMPONENT_LIBRARIES_DISPLAY_NAME "Libraries") diff --git a/cmake/Modules/FindNSIS.cmake b/cmake/Modules/FindNSIS.cmake new file mode 100644 index 00000000..c3910435 --- /dev/null +++ b/cmake/Modules/FindNSIS.cmake @@ -0,0 +1,31 @@ +# - Try to find NSIS +# Once done this will define +# +# NSIS_FOUND - system has NSIS +# NSIS_MAKE - NSIS creator executable +# +# Copyright (c) 2010 Andreas Schneider +# +# Redistribution and use is allowed according to the terms of the New +# BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# + +if (NSIS_MAKE) + # in cache already + set(NSIS_FOUND TRUE) +elseif (NSIS_MAKE) + find_program(NSIS_MAKE + NAMES + makensis + PATHS + ${_NSIS_DIR} + ${_NSIS_DIR}/Bin + $ENV{PROGRAMFILES}/NSIS + ) + + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(NSIS DEFAULT_MSG NSIS_MAKE) + + mark_as_advanced(NSIS_MAKE) +endif (NSIS_MAKE)