aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CPackConfig.cmake19
-rw-r--r--cmake/Modules/FindNSIS.cmake31
2 files changed, 43 insertions, 7 deletions
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}")
-
-### nsis generator
-set(CPACK_GENERATOR "NSIS")
+if (WIN32)
+ set(CPACK_GENERATOR "ZIP")
+
+ ### 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 <mail@cynapses.org>
+#
+# 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)