summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2007-01-31 21:48:22 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2007-01-31 21:48:22 (GMT)
commit22767f7e3f8933feec1a017529519fceeb67233b (patch)
tree6a65145c824ac93a6a26289b97b0cfebbdaf5fbd
parent94550852ebbe63ea4be3f34521f7095e8ec26660 (diff)
downloadCMake-22767f7e3f8933feec1a017529519fceeb67233b.zip
CMake-22767f7e3f8933feec1a017529519fceeb67233b.tar.gz
CMake-22767f7e3f8933feec1a017529519fceeb67233b.tar.bz2
ENH: add support files for cpack cygwin setup package stuff
-rw-r--r--Utilities/Release/Cygwin/CMakeLists.txt25
-rw-r--r--Utilities/Release/Cygwin/README.cygwin.in42
-rwxr-xr-xUtilities/Release/Cygwin/cygwin-package.sh.in13
-rw-r--r--Utilities/Release/Cygwin/cygwin-patch.diff.in0
-rw-r--r--Utilities/Release/Cygwin/cygwin-setup.hint.in5
5 files changed, 85 insertions, 0 deletions
diff --git a/Utilities/Release/Cygwin/CMakeLists.txt b/Utilities/Release/Cygwin/CMakeLists.txt
new file mode 100644
index 0000000..24f529b
--- /dev/null
+++ b/Utilities/Release/Cygwin/CMakeLists.txt
@@ -0,0 +1,25 @@
+FILE(GLOB INSTALLED_CURSES /usr/bin/cygncurses*.dll)
+SET(MAX 0)
+FOREACH(f ${INSTALLED_CURSES})
+ IF(NOT "${f}" MATCHES "\\+")
+ STRING(REGEX REPLACE ".*([0-9]).dll" "\\1" NUMBER "${f}")
+ IF(NUMBER GREATER MAX)
+ SET(MAX ${NUMBER})
+ ENDIF(NUMBER GREATER MAX)
+ ENDIF(NOT "${f}" MATCHES "\\+")
+ENDFOREACH(f)
+STRING(REGEX REPLACE "/usr/bin/" "\\1" NUMBER "${f}")
+SET(CMAKE_NCURSES_VERSION "libncurses${MAX}")
+MESSAGE(STATUS "Using curses version: libncurses${MAX}")
+CONFIGURE_FILE("${CMake_SOURCE_DIR}/Utilities/Release/Cygwin/cygwin-setup.hint.in"
+ "${CMake_BINARY_DIR}/setup.hint")
+CONFIGURE_FILE("${CMake_SOURCE_DIR}/Utilities/Release/Cygwin/README.cygwin.in"
+ "${CMake_BINARY_DIR}/Docs/@CYGWIN_PACKAGE_NAME@-@CPACK_CYGWIN_PATCH_NUMBER@.README")
+INSTALL_FILES(/share/doc/Cygwin FILES
+ ${CMake_BINARY_DIR}/Docs/@CYGWIN_PACKAGE_NAME@-@CPACK_CYGWIN_PATCH_NUMBER@.README
+ )
+CONFIGURE_FILE("${CMake_SOURCE_DIR}/Utilities/Release/Cygwin/cygwin-package.sh.in"
+ ${CPACK_CYGWIN_BUILD_SCRIPT})
+CONFIGURE_FILE("${CMake_SOURCE_DIR}/Utilities/Release/Cygwin/cygwin-patch.diff.in"
+ ${CPACK_CYGWIN_PATCH_FILE})
+
diff --git a/Utilities/Release/Cygwin/README.cygwin.in b/Utilities/Release/Cygwin/README.cygwin.in
new file mode 100644
index 0000000..10a253b
--- /dev/null
+++ b/Utilities/Release/Cygwin/README.cygwin.in
@@ -0,0 +1,42 @@
+cmake
+--------------------------------------
+Runtime requirements:
+ cygwin-1.5.21(0.156/4/2) or newer
+
+Build requirements
+ cygwin-1.5.21(0.156/4/2) or newer
+ make
+
+Canonical homepage:
+ http://www.cmake.org
+
+Canonical download:
+ ftp://www.cmake.org/pub/cmake/
+
+------------------------------------
+
+Build instructions:
+ unpack @CYGWIN_SRC_PACKAGE_NAME@.tar.bz2
+ if you use setup to install this src package, it will be
+ unpacked under /usr/src automatically
+ cd /usr/src
+ ./@CYGWIN_PACKAGE_NAME@.sh
+
+This will create:
+ /usr/src/@CYGWIN_PACKAGE_NAME@.tar.bz2
+ /usr/src/@CYGWIN_SRC_PACKAGE_NAME@.tar.bz2
+
+-------------------------------------------
+
+Port Notes:
+
+The directory /usr/share/@CPACK_CYGWIN_NAME@/include is purposely not
+located at /usr/include/@CPACK_CYGWIN_NAME@ or /usr/include/cmake. The
+files it contains are not meant for inclusion in any C or C++ program.
+They are used for compiling dynamically loadable CMake commands inside
+projects that provide them. CMake will automatically provide the
+proper include path when the files are needed.
+
+------------------
+
+Cygwin port maintained by: CMake Developers <cmake@www.cmake.org>
diff --git a/Utilities/Release/Cygwin/cygwin-package.sh.in b/Utilities/Release/Cygwin/cygwin-package.sh.in
new file mode 100755
index 0000000..0ce7b7e
--- /dev/null
+++ b/Utilities/Release/Cygwin/cygwin-package.sh.in
@@ -0,0 +1,13 @@
+tdir=`pwd`
+tar xvfj @CYGWIN_SRC_PACKAGE_NAME@.tar.bz2 &&
+cd @CYGWIN_SRC_PACKAGE_NAME@ &&
+mkdir .build &&
+cd .build &&
+../bootstrap --parallel=2 &&
+make -j2 &&
+make test &&
+./bin/cpack &&
+./bin/cpack --config CPackSourceConfig.cmake
+
+mv @CYGWIN_SRC_PACKAGE_NAME@-@CPACK_CYGWIN_PATCH_NUMBER@-src.tar.bz2 "$tdir"
+mv @CYGWIN_PACKAGE_NAME@-@CPACK_CYGWIN_PATCH_NUMBER@.tar.bz2 "$tdir"
diff --git a/Utilities/Release/Cygwin/cygwin-patch.diff.in b/Utilities/Release/Cygwin/cygwin-patch.diff.in
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/Utilities/Release/Cygwin/cygwin-patch.diff.in
diff --git a/Utilities/Release/Cygwin/cygwin-setup.hint.in b/Utilities/Release/Cygwin/cygwin-setup.hint.in
new file mode 100644
index 0000000..9706c0d
--- /dev/null
+++ b/Utilities/Release/Cygwin/cygwin-setup.hint.in
@@ -0,0 +1,5 @@
+# CMake setup.hint file for cygwin setup.exe program
+category: Devel
+requires: @CMAKE_NCURSES_VERSION@ cygwin
+sdesc: "A cross platform build manager"
+ldesc: "CMake is a cross platform build manager. It allows you to specify build parameters for C and C++ programs in a cross platform manner. For cygwin Makefiles will be generated. CMake is also capable of generating microsoft project files, nmake, and borland makefiles. CMake can also perform system inspection operations like finding installed libraries and header files."