Change configure.in to note that since we are using expr(1)'s regex match
command, the entries in template/.similar can really be regular expressions. This isn't a new feature, just an observation of what the code already did.
This commit is contained in:
parent
b178865891
commit
641c368ae9
@ -96,30 +96,28 @@ host="`echo $host | tr '[[A-Z]]' '[[a-z]]'`"
|
|||||||
if test -f "template/$host"
|
if test -f "template/$host"
|
||||||
then TEMPLATE="$host"
|
then TEMPLATE="$host"
|
||||||
else
|
else
|
||||||
# Next try for an exact match to a .similar entry.
|
# Scan template/.similar for a rule that tells us which template to use.
|
||||||
# There shouldn't be multiple matches, but take the last if there are.
|
# The format of each line of the file is
|
||||||
GUESS=`grep "^$host=" template/.similar | sed 's/^.*=//' | tail -1`
|
# hostnamepattern=templatefilename
|
||||||
|
# where the hostnamepattern is evaluated per the rules of expr(1) ---
|
||||||
|
# namely, it is a standard regular expression with an implicit ^ at the
|
||||||
|
# start. If multiple lines match, we will end up using the last match.
|
||||||
|
GUESS=""
|
||||||
|
exec 4<template/.similar
|
||||||
|
while read LINE <&4
|
||||||
|
do
|
||||||
|
SIMHOST=`expr "$LINE" : '\(.*\)='`
|
||||||
|
MATCH=`expr "$host" : "$SIMHOST"`
|
||||||
|
if test "$MATCH" != 0
|
||||||
|
then GUESS=`echo "$LINE" | sed 's/^.*=//'`
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
exec 4<&-
|
||||||
if test "$GUESS"
|
if test "$GUESS"
|
||||||
then TEMPLATE="$GUESS"
|
then TEMPLATE="$GUESS"
|
||||||
else
|
else
|
||||||
# Next look for a .similar entry that is a prefix of $host.
|
# Last chance ... maybe uname -s will match an entry.
|
||||||
# If there are multiple matches, take the last one.
|
TEMPLATE=`uname -s | tr '[[A-Z]]' '[[a-z]]'`
|
||||||
exec 4<template/.similar
|
|
||||||
while read LINE <&4
|
|
||||||
do
|
|
||||||
SIMHOST=`expr "$LINE" : '\(.*\)='`
|
|
||||||
MATCH=`expr "$host" : "$SIMHOST"`
|
|
||||||
if test "$MATCH" != 0
|
|
||||||
then GUESS=`echo "$LINE" | sed 's/^.*=//'`
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
exec 4<&-
|
|
||||||
if test "$GUESS"
|
|
||||||
then TEMPLATE="$GUESS"
|
|
||||||
else
|
|
||||||
# Last chance ... maybe uname -s will match an entry.
|
|
||||||
TEMPLATE=`uname -s | tr '[[A-Z]]' '[[a-z]]'`
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
])
|
])
|
||||||
@ -130,7 +128,7 @@ if test ! -f "template/$TEMPLATE"; then
|
|||||||
echo ""
|
echo ""
|
||||||
echo "$TEMPLATE does not exist"
|
echo "$TEMPLATE does not exist"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Available Templates (set using --with-template):"
|
echo "Available Templates (select one using --with-template):"
|
||||||
echo ""
|
echo ""
|
||||||
ls template
|
ls template
|
||||||
echo ""
|
echo ""
|
||||||
|
Loading…
Reference in New Issue
Block a user