diff options
author | Ken Martin <ken.martin@kitware.com> | 2001-06-21 16:01:18 (GMT) |
---|---|---|
committer | Ken Martin <ken.martin@kitware.com> | 2001-06-21 16:01:18 (GMT) |
commit | 0ff3bdba204fec0671e601be5ff8b7af3ba821c8 (patch) | |
tree | f60e6e69d4d6a809340b5f7441ed29a4b4750495 /Templates | |
parent | 8deccd3c2ea9d0eb5a63b2019a3dec984e7e0ae5 (diff) | |
download | CMake-0ff3bdba204fec0671e601be5ff8b7af3ba821c8.zip CMake-0ff3bdba204fec0671e601be5ff8b7af3ba821c8.tar.gz CMake-0ff3bdba204fec0671e601be5ff8b7af3ba821c8.tar.bz2 |
better install support
Diffstat (limited to 'Templates')
-rw-r--r-- | Templates/CMakeLists.txt | 3 | ||||
-rwxr-xr-x | Templates/install-sh | 135 |
2 files changed, 138 insertions, 0 deletions
diff --git a/Templates/CMakeLists.txt b/Templates/CMakeLists.txt new file mode 100644 index 0000000..2162908 --- /dev/null +++ b/Templates/CMakeLists.txt @@ -0,0 +1,3 @@ +# just install the modules +INSTALL_FILES(/share/CMake/Templates .*\.cmake$) +INSTALL_FILES(/share/CMake/Templates "" configure install-sh) diff --git a/Templates/install-sh b/Templates/install-sh new file mode 100755 index 0000000..f4b977d --- /dev/null +++ b/Templates/install-sh @@ -0,0 +1,135 @@ +#!/bin/sh + +# +# install - install a program, script, or datafile +# This comes from X11R5; it is not part of GNU. +# +# $XConsortium: install.sh,v 1.2 89/12/18 14:47:22 jim Exp $ +# +# This script is compatible with the BSD install script, but was written +# from scratch. +# + + +# set DOITPROG to echo to test this script + +# Don't use :- since 4.3BSD and earlier shells don't like it. +doit="${DOITPROG-}" + + +# put in absolute paths if you don't have them in your path; or use env. vars. + +mvprog="${MVPROG-mv}" +cpprog="${CPPROG-cp}" +chmodprog="${CHMODPROG-chmod}" +chownprog="${CHOWNPROG-chown}" +chgrpprog="${CHGRPPROG-chgrp}" +stripprog="${STRIPPROG-strip}" +rmprog="${RMPROG-rm}" +mkdirprog="${MKDIRPROG-mkdir -p}" + +instcmd="$mvprog" +chmodcmd="" +chowncmd="" +chgrpcmd="" +stripcmd="" +rmcmd="$rmprog -f" +mvcmd="$mvprog" +src="" +dst="" +mkdir=n + +while [ x"$1" != x ]; do + case $1 in + -c) instcmd="$cpprog" + shift + continue;; + + -d) instcmd="$mkdirprog" + mkdir=y + src="/dev/null" + shift + continue;; + + -m) chmodcmd="$chmodprog $2" + shift + shift + continue;; + + -o) chowncmd="$chownprog $2" + shift + shift + continue;; + + -g) chgrpcmd="$chgrpprog $2" + shift + shift + continue;; + + -s) stripcmd="$stripprog" + shift + continue;; + + *) if [ x"$src" = x ] + then + src=$1 + else + dst=$1 + fi + shift + continue;; + esac +done + +if [ x"$src" = x ] +then + echo "install: no input file specified" + exit 1 +fi + +if [ x"$dst" = x ] +then + echo "install: no destination specified" + exit 1 +fi + + +if [ $mkdir = y ]; then + $doit $instcmd $dst + dsttmp=$dst +else + + # If destination is a directory, append the input filename; if your + # system does not like double slashes in filenames, you may need to + # add some logic + + if [ $mkdir = n -a -d $dst ] + then + dst="$dst"/`basename $src` + fi + + # Make a temp file name in the proper directory. + + dstdir=`dirname $dst` + dsttmp=$dstdir/#inst.$$# + + # Move or copy the file name to the temp name + + $doit $instcmd $src $dsttmp +fi + +# and set any options; do chmod last to preserve setuid bits + +if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; fi +if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; fi +if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; fi +if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; fi + +if [ $mkdir = n ]; then + # Now rename the file to the real destination. + + $doit $rmcmd $dst + $doit $mvcmd $dsttmp $dst +fi + +exit 0 |