|
@@ -1,11 +1,501 @@
|
|
|
--- Libnet-1.0.2a.orig/install-sh 2001-02-05 18:51:48.000000000 +0100
|
|
|
-+++ Libnet-1.0.2a/install-sh 2009-06-12 21:48:27.000000000 +0200
|
|
|
-@@ -44,7 +44,7 @@ mkdirprog="${MKDIRPROG-mkdir}"
|
|
|
- transformbasename=""
|
|
|
- transform_arg=""
|
|
|
- instcmd="$cpprog"
|
|
|
--chmodcmd="$chmodprog 0755"
|
|
|
-+chmodcmd=""
|
|
|
- chowncmd=""
|
|
|
- chgrpcmd=""
|
|
|
- stripcmd=""
|
|
|
++++ Libnet-1.0.2a/install-sh 2009-08-23 00:39:58.189621602 +0200
|
|
|
+@@ -1,19 +1,38 @@
|
|
|
+-#! /bin/sh
|
|
|
+-#
|
|
|
++#!/bin/sh
|
|
|
+ # install - install a program, script, or datafile
|
|
|
+-# This comes from X11R5 (mit/util/scripts/install.sh).
|
|
|
++
|
|
|
++scriptversion=2004-04-01.17
|
|
|
++
|
|
|
++# This originates from X11R5 (mit/util/scripts/install.sh), which was
|
|
|
++# later released in X11R6 (xc/config/util/install.sh) with the
|
|
|
++# following copyright and license.
|
|
|
+ #
|
|
|
+-# Copyright 1991 by the Massachusetts Institute of Technology
|
|
|
++# Copyright (C) 1994 X Consortium
|
|
|
+ #
|
|
|
+-# Permission to use, copy, modify, distribute, and sell this software and its
|
|
|
+-# documentation for any purpose is hereby granted without fee, provided that
|
|
|
+-# the above copyright notice appear in all copies and that both that
|
|
|
+-# copyright notice and this permission notice appear in supporting
|
|
|
+-# documentation, and that the name of M.I.T. not be used in advertising or
|
|
|
+-# publicity pertaining to distribution of the software without specific,
|
|
|
+-# written prior permission. M.I.T. makes no representations about the
|
|
|
+-# suitability of this software for any purpose. It is provided "as is"
|
|
|
+-# without express or implied warranty.
|
|
|
++# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
|
++# of this software and associated documentation files (the "Software"), to
|
|
|
++# deal in the Software without restriction, including without limitation the
|
|
|
++# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
|
++# sell copies of the Software, and to permit persons to whom the Software is
|
|
|
++# furnished to do so, subject to the following conditions:
|
|
|
++#
|
|
|
++# The above copyright notice and this permission notice shall be included in
|
|
|
++# all copies or substantial portions of the Software.
|
|
|
++#
|
|
|
++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
|
++# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
|
++# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
++# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
|
|
++# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
|
|
|
++# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
|
++#
|
|
|
++# Except as contained in this notice, the name of the X Consortium shall not
|
|
|
++# be used in advertising or otherwise to promote the sale, use or other deal-
|
|
|
++# ings in this Software without prior written authorization from the X Consor-
|
|
|
++# tium.
|
|
|
++#
|
|
|
++#
|
|
|
++# FSF changes to this file are in the public domain.
|
|
|
+ #
|
|
|
+ # Calling this script install-sh is preferred over install.sh, to prevent
|
|
|
+ # `make' implicit rules from creating a file called install from it
|
|
|
+@@ -23,13 +42,11 @@
|
|
|
+ # from scratch. It can only install one file at a time, a restriction
|
|
|
+ # shared with many OS's install programs.
|
|
|
+
|
|
|
+-
|
|
|
+ # 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}"
|
|
|
+@@ -41,210 +58,268 @@ stripprog="${STRIPPROG-strip}"
|
|
|
+ rmprog="${RMPROG-rm}"
|
|
|
+ mkdirprog="${MKDIRPROG-mkdir}"
|
|
|
+
|
|
|
+-transformbasename=""
|
|
|
+-transform_arg=""
|
|
|
+-instcmd="$cpprog"
|
|
|
++transformbasename=
|
|
|
++transform_arg=
|
|
|
++instcmd="$mvprog"
|
|
|
+ chmodcmd="$chmodprog 0755"
|
|
|
+-chowncmd=""
|
|
|
+-chgrpcmd=""
|
|
|
+-stripcmd=""
|
|
|
++chowncmd=
|
|
|
++chgrpcmd=
|
|
|
++stripcmd=
|
|
|
+ rmcmd="$rmprog -f"
|
|
|
+ mvcmd="$mvprog"
|
|
|
+-src=""
|
|
|
+-dst=""
|
|
|
+-dir_arg=""
|
|
|
+-
|
|
|
+-while [ x"$1" != x ]; do
|
|
|
+- case $1 in
|
|
|
+- -c) instcmd="$cpprog"
|
|
|
+- shift
|
|
|
+- continue;;
|
|
|
+-
|
|
|
+- -d) dir_arg=true
|
|
|
+- shift
|
|
|
+- continue;;
|
|
|
++src=
|
|
|
++dst=
|
|
|
++dir_arg=
|
|
|
+
|
|
|
+- -m) chmodcmd="$chmodprog $2"
|
|
|
+- shift
|
|
|
+- shift
|
|
|
+- continue;;
|
|
|
++usage="Usage: $0 [OPTION]... SRCFILE DSTFILE
|
|
|
++ or: $0 [OPTION]... SRCFILES... DIRECTORY
|
|
|
++ or: $0 -d DIRECTORIES...
|
|
|
+
|
|
|
+- -o) chowncmd="$chownprog $2"
|
|
|
+- shift
|
|
|
+- shift
|
|
|
+- continue;;
|
|
|
++In the first form, install SRCFILE to DSTFILE, removing SRCFILE by default.
|
|
|
++In the second, create the directory path DIR.
|
|
|
+
|
|
|
+- -g) chgrpcmd="$chgrpprog $2"
|
|
|
+- shift
|
|
|
+- shift
|
|
|
+- continue;;
|
|
|
++Options:
|
|
|
++-b=TRANSFORMBASENAME
|
|
|
++-c copy source (using $cpprog) instead of moving (using $mvprog).
|
|
|
++-d create directories instead of installing files.
|
|
|
++-g GROUP $chgrp installed files to GROUP.
|
|
|
++-m MODE $chmod installed files to MODE.
|
|
|
++-o USER $chown installed files to USER.
|
|
|
++-s strip installed files (using $stripprog).
|
|
|
++-t=TRANSFORM
|
|
|
++--help display this help and exit.
|
|
|
++--version display version info and exit.
|
|
|
+
|
|
|
+- -s) stripcmd="$stripprog"
|
|
|
+- shift
|
|
|
+- continue;;
|
|
|
++Environment variables override the default commands:
|
|
|
++ CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
|
|
|
++"
|
|
|
+
|
|
|
+- -t=*) transformarg=`echo $1 | sed 's/-t=//'`
|
|
|
+- shift
|
|
|
+- continue;;
|
|
|
++while test -n "$1"; do
|
|
|
++ case $1 in
|
|
|
++ -b=*) transformbasename=`echo $1 | sed 's/-b=//'`
|
|
|
++ shift
|
|
|
++ continue;;
|
|
|
+
|
|
|
+- -b=*) transformbasename=`echo $1 | sed 's/-b=//'`
|
|
|
+- shift
|
|
|
+- continue;;
|
|
|
++ -c) instcmd=$cpprog
|
|
|
++ shift
|
|
|
++ continue;;
|
|
|
+
|
|
|
+- *) if [ x"$src" = x ]
|
|
|
+- then
|
|
|
+- src=$1
|
|
|
+- else
|
|
|
+- # this colon is to work around a 386BSD /bin/sh bug
|
|
|
+- :
|
|
|
+- dst=$1
|
|
|
+- fi
|
|
|
+- shift
|
|
|
+- continue;;
|
|
|
+- esac
|
|
|
+-done
|
|
|
++ -d) dir_arg=true
|
|
|
++ shift
|
|
|
++ continue;;
|
|
|
+
|
|
|
+-if [ x"$src" = x ]
|
|
|
+-then
|
|
|
+- echo "install: no input file specified"
|
|
|
+- exit 1
|
|
|
+-else
|
|
|
+- true
|
|
|
+-fi
|
|
|
++ -g) chgrpcmd="$chgrpprog $2"
|
|
|
++ shift
|
|
|
++ shift
|
|
|
++ continue;;
|
|
|
+
|
|
|
+-if [ x"$dir_arg" != x ]; then
|
|
|
+- dst=$src
|
|
|
+- src=""
|
|
|
+-
|
|
|
+- if [ -d $dst ]; then
|
|
|
+- instcmd=:
|
|
|
+- else
|
|
|
+- instcmd=mkdir
|
|
|
+- fi
|
|
|
+-else
|
|
|
++ --help) echo "$usage"; exit 0;;
|
|
|
+
|
|
|
+-# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
|
|
|
+-# might cause directories to be created, which would be especially bad
|
|
|
+-# if $src (and thus $dsttmp) contains '*'.
|
|
|
++ -m) chmodcmd="$chmodprog $2"
|
|
|
++ shift
|
|
|
++ shift
|
|
|
++ continue;;
|
|
|
+
|
|
|
+- if [ -f $src -o -d $src ]
|
|
|
+- then
|
|
|
+- true
|
|
|
+- else
|
|
|
+- echo "install: $src does not exist"
|
|
|
+- exit 1
|
|
|
+- fi
|
|
|
+-
|
|
|
+- if [ x"$dst" = x ]
|
|
|
+- then
|
|
|
+- echo "install: no destination specified"
|
|
|
+- exit 1
|
|
|
+- else
|
|
|
+- true
|
|
|
+- fi
|
|
|
++ -o) chowncmd="$chownprog $2"
|
|
|
++ shift
|
|
|
++ shift
|
|
|
++ continue;;
|
|
|
+
|
|
|
+-# 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
|
|
|
++ -s) stripcmd=$stripprog
|
|
|
++ shift
|
|
|
++ continue;;
|
|
|
+
|
|
|
+- if [ -d $dst ]
|
|
|
+- then
|
|
|
+- dst="$dst"/`basename $src`
|
|
|
+- else
|
|
|
+- true
|
|
|
+- fi
|
|
|
+-fi
|
|
|
++ -t=*) transformarg=`echo $1 | sed 's/-t=//'`
|
|
|
++ shift
|
|
|
++ continue;;
|
|
|
+
|
|
|
+-## this sed command emulates the dirname command
|
|
|
+-dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
|
|
|
++ --version) echo "$0 $scriptversion"; exit 0;;
|
|
|
+
|
|
|
+-# Make sure that the destination directory exists.
|
|
|
+-# this part is taken from Noah Friedman's mkinstalldirs script
|
|
|
++ *) # When -d is used, all remaining arguments are directories to create.
|
|
|
++ test -n "$dir_arg" && break
|
|
|
++ # Otherwise, the last argument is the destination. Remove it from $@.
|
|
|
++ for arg
|
|
|
++ do
|
|
|
++ if test -n "$dstarg"; then
|
|
|
++ # $@ is not empty: it contains at least $arg.
|
|
|
++ set fnord "$@" "$dstarg"
|
|
|
++ shift # fnord
|
|
|
++ fi
|
|
|
++ shift # arg
|
|
|
++ dstarg=$arg
|
|
|
++ done
|
|
|
++ break;;
|
|
|
++ esac
|
|
|
++done
|
|
|
+
|
|
|
+-# Skip lots of stat calls in the usual case.
|
|
|
+-if [ ! -d "$dstdir" ]; then
|
|
|
+-defaultIFS='
|
|
|
+-'
|
|
|
+-IFS="${IFS-${defaultIFS}}"
|
|
|
++if test -z "$1"; then
|
|
|
++ if test -z "$dir_arg"; then
|
|
|
++ echo "$0: no input file specified." >&2
|
|
|
++ exit 1
|
|
|
++ fi
|
|
|
++ # It's OK to call `install-sh -d' without argument.
|
|
|
++ # This can happen when creating conditional directories.
|
|
|
++ exit 0
|
|
|
++fi
|
|
|
+
|
|
|
+-oIFS="${IFS}"
|
|
|
+-# Some sh's can't handle IFS=/ for some reason.
|
|
|
+-IFS='%'
|
|
|
+-set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
|
|
|
+-IFS="${oIFS}"
|
|
|
++for src
|
|
|
++do
|
|
|
++ # Protect names starting with `-'.
|
|
|
++ case $src in
|
|
|
++ -*) src=./$src ;;
|
|
|
++ esac
|
|
|
+
|
|
|
+-pathcomp=''
|
|
|
++ if test -n "$dir_arg"; then
|
|
|
++ dst=$src
|
|
|
++ src=
|
|
|
+
|
|
|
+-while [ $# -ne 0 ] ; do
|
|
|
+- pathcomp="${pathcomp}${1}"
|
|
|
+- shift
|
|
|
++ if test -d "$dst"; then
|
|
|
++ instcmd=:
|
|
|
++ chmodcmd=
|
|
|
++ else
|
|
|
++ instcmd=$mkdirprog
|
|
|
++ fi
|
|
|
++ else
|
|
|
++ # Waiting for this to be detected by the "$instcmd $src $dsttmp" command
|
|
|
++ # might cause directories to be created, which would be especially bad
|
|
|
++ # if $src (and thus $dsttmp) contains '*'.
|
|
|
++ if test ! -f "$src" && test ! -d "$src"; then
|
|
|
++ echo "$0: $src does not exist." >&2
|
|
|
++ exit 1
|
|
|
++ fi
|
|
|
+
|
|
|
+- if [ ! -d "${pathcomp}" ] ;
|
|
|
+- then
|
|
|
+- $mkdirprog "${pathcomp}"
|
|
|
+- else
|
|
|
+- true
|
|
|
+- fi
|
|
|
++ if test -z "$dstarg"; then
|
|
|
++ echo "$0: no destination specified." >&2
|
|
|
++ exit 1
|
|
|
++ fi
|
|
|
+
|
|
|
+- pathcomp="${pathcomp}/"
|
|
|
+-done
|
|
|
+-fi
|
|
|
++ dst=$dstarg
|
|
|
++ # Protect names starting with `-'.
|
|
|
++ case $dst in
|
|
|
++ -*) dst=./$dst ;;
|
|
|
++ esac
|
|
|
+
|
|
|
+-if [ x"$dir_arg" != x ]
|
|
|
+-then
|
|
|
+- $doit $instcmd $dst &&
|
|
|
++ # If destination is a directory, append the input filename; won't work
|
|
|
++ # if double slashes aren't ignored.
|
|
|
++ if test -d "$dst"; then
|
|
|
++ dst=$dst/`basename "$src"`
|
|
|
++ fi
|
|
|
++ fi
|
|
|
+
|
|
|
+- if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi &&
|
|
|
+- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi &&
|
|
|
+- if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi &&
|
|
|
+- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi
|
|
|
+-else
|
|
|
++ # This sed command emulates the dirname command.
|
|
|
++ dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
|
|
|
+
|
|
|
+-# If we're going to rename the final executable, determine the name now.
|
|
|
++ # Make sure that the destination directory exists.
|
|
|
+
|
|
|
+- if [ x"$transformarg" = x ]
|
|
|
+- then
|
|
|
+- dstfile=`basename $dst`
|
|
|
+- else
|
|
|
+- dstfile=`basename $dst $transformbasename |
|
|
|
+- sed $transformarg`$transformbasename
|
|
|
+- fi
|
|
|
++ # Skip lots of stat calls in the usual case.
|
|
|
++ if test ! -d "$dstdir"; then
|
|
|
++ defaultIFS='
|
|
|
++ '
|
|
|
++ IFS="${IFS-$defaultIFS}"
|
|
|
+
|
|
|
+-# don't allow the sed command to completely eliminate the filename
|
|
|
++ oIFS=$IFS
|
|
|
++ # Some sh's can't handle IFS=/ for some reason.
|
|
|
++ IFS='%'
|
|
|
++ set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
|
|
|
++ IFS=$oIFS
|
|
|
+
|
|
|
+- if [ x"$dstfile" = x ]
|
|
|
+- then
|
|
|
+- dstfile=`basename $dst`
|
|
|
+- else
|
|
|
+- true
|
|
|
+- fi
|
|
|
++ pathcomp=
|
|
|
+
|
|
|
+-# Make a temp file name in the proper directory.
|
|
|
++ while test $# -ne 0 ; do
|
|
|
++ pathcomp=$pathcomp$1
|
|
|
++ shift
|
|
|
++ if test ! -d "$pathcomp"; then
|
|
|
++ $mkdirprog "$pathcomp" || lasterr=$?
|
|
|
++ # mkdir can fail with a `File exist' error in case several
|
|
|
++ # install-sh are creating the directory concurrently. This
|
|
|
++ # is OK.
|
|
|
++ test ! -d "$pathcomp" && { (exit ${lasterr-1}); exit; }
|
|
|
++ fi
|
|
|
++ pathcomp=$pathcomp/
|
|
|
++ done
|
|
|
++ fi
|
|
|
+
|
|
|
+- dsttmp=$dstdir/#inst.$$#
|
|
|
++ if test -n "$dir_arg"; then
|
|
|
++ $doit $instcmd "$dst" \
|
|
|
++ && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
|
|
|
++ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
|
|
|
++ && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
|
|
|
++ && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
|
|
|
+
|
|
|
+-# Move or copy the file name to the temp name
|
|
|
++ else
|
|
|
++ # If we're going to rename the final executable, determine the name now.
|
|
|
++ if test -z "$transformarg"; then
|
|
|
++ dstfile=`basename "$dst"`
|
|
|
++ else
|
|
|
++ dstfile=`basename "$dst" $transformbasename \
|
|
|
++ | sed $transformarg`$transformbasename
|
|
|
++ fi
|
|
|
+
|
|
|
+- $doit $instcmd $src $dsttmp &&
|
|
|
++ # don't allow the sed command to completely eliminate the filename.
|
|
|
++ test -z "$dstfile" && dstfile=`basename "$dst"`
|
|
|
+
|
|
|
+- trap "rm -f ${dsttmp}" 0 &&
|
|
|
++ # Make a couple of temp file names in the proper directory.
|
|
|
++ dsttmp=$dstdir/_inst.$$_
|
|
|
++ rmtmp=$dstdir/_rm.$$_
|
|
|
+
|
|
|
+-# and set any options; do chmod last to preserve setuid bits
|
|
|
++ # Trap to clean up those temp files at exit.
|
|
|
++ trap 'status=$?; rm -f "$dsttmp" "$rmtmp" && exit $status' 0
|
|
|
++ trap '(exit $?); exit' 1 2 13 15
|
|
|
+
|
|
|
+-# If any of these fail, we abort the whole thing. If we want to
|
|
|
+-# ignore errors from any of these, just make sure not to ignore
|
|
|
+-# errors from the above "$doit $instcmd $src $dsttmp" command.
|
|
|
++ # Move or copy the file name to the temp name
|
|
|
++ $doit $instcmd "$src" "$dsttmp" &&
|
|
|
+
|
|
|
+- if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi &&
|
|
|
+- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi &&
|
|
|
+- if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi &&
|
|
|
+- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi &&
|
|
|
++ # and set any options; do chmod last to preserve setuid bits.
|
|
|
++ #
|
|
|
++ # If any of these fail, we abort the whole thing. If we want to
|
|
|
++ # ignore errors from any of these, just make sure not to ignore
|
|
|
++ # errors from the above "$doit $instcmd $src $dsttmp" command.
|
|
|
++ #
|
|
|
++ { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
|
|
|
++ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
|
|
|
++ && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
|
|
|
++ && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
|
|
|
+
|
|
|
+-# Now rename the file to the real destination.
|
|
|
++ # Now rename the file to the real destination.
|
|
|
++ { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
|
|
|
++ || {
|
|
|
++ # The rename failed, perhaps because mv can't rename something else
|
|
|
++ # to itself, or perhaps because mv is so ancient that it does not
|
|
|
++ # support -f.
|
|
|
+
|
|
|
+- $doit $rmcmd -f $dstdir/$dstfile &&
|
|
|
+- $doit $mvcmd $dsttmp $dstdir/$dstfile
|
|
|
++ # Now remove or move aside any old file at destination location.
|
|
|
++ # We try this two ways since rm can't unlink itself on some
|
|
|
++ # systems and the destination file might be busy for other
|
|
|
++ # reasons. In this case, the final cleanup might fail but the new
|
|
|
++ # file should still install successfully.
|
|
|
++ {
|
|
|
++ if test -f "$dstdir/$dstfile"; then
|
|
|
++ $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
|
|
|
++ || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
|
|
|
++ || {
|
|
|
++ echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
|
|
|
++ (exit 1); exit
|
|
|
++ }
|
|
|
++ else
|
|
|
++ :
|
|
|
++ fi
|
|
|
++ } &&
|
|
|
+
|
|
|
+-fi &&
|
|
|
++ # Now rename the file to the real destination.
|
|
|
++ $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
|
|
|
++ }
|
|
|
++ }
|
|
|
++ fi || { (exit 1); exit; }
|
|
|
++done
|
|
|
+
|
|
|
++# The final little trick to "correctly" pass the exit status to the exit trap.
|
|
|
++{
|
|
|
++ (exit 0); exit
|
|
|
++}
|
|
|
+
|
|
|
+-exit 0
|
|
|
++# Local variables:
|
|
|
++# eval: (add-hook 'write-file-hooks 'time-stamp)
|
|
|
++# time-stamp-start: "scriptversion="
|
|
|
++# time-stamp-format: "%:y-%02m-%02d.%02H"
|
|
|
++# time-stamp-end: "$"
|
|
|
++# End:
|