From: Tom Tromey Date: Mon, 7 May 2001 16:28:56 +0000 (+0000) Subject: * automake.in (GNITS_VERSION_PATTERN): Document. Added `fork X-Git-Tag: handle-languages~2 X-Git-Url: https://sourceware.org/git/?a=commitdiff_plain;h=d5520dd7ddc7f5d01db9bd67f60b8418f6e79b60;p=automake.git * automake.in (GNITS_VERSION_PATTERN): Document. Added `fork identifier'. (handle_options): Handle fork identifier in version number. --- diff --git a/ChangeLog b/ChangeLog index 3d1d030a..34d72bb5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2001-05-06 Tom Tromey + * automake.in (GNITS_VERSION_PATTERN): Document. Added `fork + identifier'. + (handle_options): Handle fork identifier in version number. + * automake.texi (Dist): Document distcheck-hook. * tests/confh4.test: Updated to reflect DEFS change. diff --git a/automake.in b/automake.in index cc803ccf..765ec922 100755 --- a/automake.in +++ b/automake.in @@ -95,7 +95,10 @@ my $SUFFIX_RULE_PATTERN = '^\.([a-zA-Z0-9]+)\.([a-zA-Z0-9]+)$'; # otherwise it will think rules like `foo=bar; \' are errors. my $MACRO_PATTERN = '^ *([A-Za-z0-9_@]+)[ \t]*([:+]?)=[ \t]*(.*)$'; my $BOGUS_MACRO_PATTERN = '^ *([^ \t]*)[ \t]*([:+]?)=[ \t]*(.*)$'; -my $GNITS_VERSION_PATTERN = '[0-9]+\.[0-9]+([a-z]|\.[0-9]+)?'; +# This pattern recognizes a Gnits version id and sets $1 if the +# release is an alpha release. We also allow a suffix which can be +# used to extend the version number with a "fork" identifier. +my $GNITS_VERSION_PATTERN = '[0-9]+\.[0-9]+([a-z]|\.[0-9]+)?(-[A-Za-z0-9]+)?'; my $IF_PATTERN = '^if[ \t]+([A-Za-z][A-Za-z0-9_]*)[ \t]*(#.*)?$'; my $ELSE_PATTERN = '^else(?:[ \t]+([A-Za-z][A-Za-z0-9_]*))?[ \t]*(#.*)?$'; my $ENDIF_PATTERN = '^endif(?:[ \t]+([A-Za-z][A-Za-z0-9_]*))?[ \t]*(#.*)?$'; @@ -1240,29 +1243,35 @@ sub handle_options { $use_dependencies = 0; } - elsif (/([0-9]+)\.([0-9]+)([a-z]?)/) + elsif (/([0-9]+)\.([0-9]+)([a-z]?)(-[A-Za-z0-9]+)?/) { # Got a version number. - my ($rmajor, $rminor, $ralpha) = ($1, $2, $3); + my ($rmajor, $rminor, $ralpha, $rfork) = ($1, $2, $3, $4); &prog_error ("version is incorrect: $VERSION") - if $VERSION !~ /([0-9]+)\.([0-9]+)([a-z]?)/; + if $VERSION !~ /([0-9]+)\.([0-9]+)([a-z]?)(-[A-Za-z0-9]+)?/; - my ($tmajor, $tminor, $talpha) = ($1, $2, $3); + my ($tmajor, $tminor, $talpha, $tfork) = ($1, $2, $3, $4); + + $rfork ||= ''; + $tfork ||= ''; # 2.0 is better than 1.0. # 1.2 is better than 1.1. # 1.2a is better than 1.2. + # If we require 3.4n-foo then we require something + # >= 3.4n, with the `foo' fork identifier. if ($rmajor > $tmajor || ($rmajor == $tmajor && $rminor > $tminor) || ($rminor == $tminor && $rminor == $tminor - && $ralpha gt $talpha)) - { + && $ralpha gt $talpha) + || ($rfork ne '' && $rfork ne $tfork)) + { &am_line_error ('AUTOMAKE_OPTIONS', - "require version $_, only have $VERSION"); + "require version $_, but have $VERSION"); return 1; - } + } } else {