summaryrefslogtreecommitdiff
path: root/support/rlvers.sh
diff options
context:
space:
mode:
authorJari Aalto <jari.aalto@cante.net>2000-03-17 21:46:59 +0000
committerJari Aalto <jari.aalto@cante.net>2009-09-12 16:46:53 +0000
commitbb70624e964126b7ac4ff085ba163a9c35ffa18f (patch)
treeba2dd4add13ada94b1899c6d4aca80195b80b74b /support/rlvers.sh
parentb72432fdcc59300c6fe7c9d6c8a31ad3447933f5 (diff)
downloadbash-bb70624e964126b7ac4ff085ba163a9c35ffa18f.tar.gz
Imported from ../bash-2.04.tar.gz.
Diffstat (limited to 'support/rlvers.sh')
-rwxr-xr-xsupport/rlvers.sh22
1 files changed, 17 insertions, 5 deletions
diff --git a/support/rlvers.sh b/support/rlvers.sh
index 12abeda9..ea85afa4 100755
--- a/support/rlvers.sh
+++ b/support/rlvers.sh
@@ -5,17 +5,19 @@
#
PROGNAME=`basename $0`
-
-trap 'rm -f /tmp/rlvers /tmp/rlvers.?' 0 1 2 3 6 15
+TDIR=/tmp/rlvers
# defaults
CC=cc
RL_LIBDIR=/usr/local/lib
+TERMCAP_LIB="-ltermcap"
+
while [ $# -gt 0 ]; do
case "$1" in
-C) shift ; CC="$1"; shift ;;
-L) shift ; RL_LIBDIR="$1" ; shift ;;
+ -T) shift ; TERMCAP_LIB="$1" ; shift ;;
-v) shift ; verbose=y ;;
--) shift ; break ;;
*) echo "${PROGNAME}: usage: $PROGNAME [-C compiler] [-L libdir] [-v]" >&2 ; exit 2;;
@@ -41,7 +43,17 @@ if [ -n "$verbose" ]; then
echo "${PROGNAME}: attempting program compilation"
fi
-cat > /tmp/rlvers.c << EOF
+# make $TDIR mode 0700
+mkdir $TDIR || {
+ echo "${PROGNAME}: ${TDIR}: file exists" >&2
+ echo 0
+ exit 1
+}
+chmod 700 $TDIR
+
+trap 'rm -f $TDIR/rlvers $TDIR/rlvers.? ; rmdir $TDIR' 0 1 2 3 6 15
+
+cat > $TDIR/rlvers.c << EOF
#include <stdio.h>
extern char *rl_library_version;
@@ -52,9 +64,9 @@ main()
}
EOF
-if eval ${CC} -L${RL_LIBDIR} -o /tmp/rlvers /tmp/rlvers.c -lreadline -ltermcap -lcurses;
+if eval ${CC} -L${RL_LIBDIR} -o $TDIR/rlvers $TDIR/rlvers.c -lreadline ${TERMCAP_LIB};
then
- v=`/tmp/rlvers`
+ v=`$TDIR/rlvers`
else
if [ -n "$verbose" ] ; then
echo "${PROGNAME}: compilation failed: status $?"