mirror of
git://git.sv.gnu.org/coreutils.git
synced 2026-02-11 18:02:13 +02:00
bootstrap: fix handling of various perl --version formats
* bootstrap (get_version): Don't use perl's $] special variable, as that requires updating all bootstrap.conf files to use perl's x.yyyzzz version format. Instead make the regular expression more general to support version formats from older perl-5.005_002 (5.5.2) and perl-5.11 which has other numbers in the version line.
This commit is contained in:
committed by
Jim Meyering
parent
b92e0455e1
commit
cb775df09e
19
bootstrap
19
bootstrap
@@ -311,20 +311,23 @@ sort_ver() { # sort -V is not generally available
|
||||
get_version() {
|
||||
app=$1
|
||||
|
||||
# perl 5.11's --version output does not fit the mold,
|
||||
# handle perl as a special case.
|
||||
if test "_$app" = _perl; then
|
||||
perl -le 'print $]' || return 1
|
||||
return 0
|
||||
fi
|
||||
|
||||
$app --version >/dev/null 2>&1 || return 1
|
||||
|
||||
$app --version 2>&1 |
|
||||
sed -n 's/[^0-9.]*\([0-9]\{1,\}\.[.a-z0-9-]*\).*/\1/p
|
||||
sed -n '# extract version within line
|
||||
s/.*[v ]\{1,\}\([0-9]\{1,\}\.[.a-z0-9-]*\).*/\1/
|
||||
t done
|
||||
|
||||
# extract version at start of line
|
||||
s/^\([0-9]\{1,\}\.[.a-z0-9-]*\).*/\1/
|
||||
t done
|
||||
|
||||
d
|
||||
|
||||
:done
|
||||
#the following essentially does s/5.005/5.5/
|
||||
s/\.0*\([1-9]\)/.\1/g
|
||||
p
|
||||
q'
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user