Commit 2284f64c authored by Richard Levitte's avatar Richard Levitte
Browse files

util/mkdef.pl: prepare for DEPRECATEDIN_X



This is in preparation for new versioning scheme, where the
recommendation is to start deprecations at major version boundary.

Reviewed-by: default avatarTim Hudson <tjh@openssl.org>
Reviewed-by: default avatarMatthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
Reviewed-by: default avatarMatt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/7724)
parent 0fb2815b
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -193,8 +193,8 @@ sub feature_filter {

    if ($apiv) {
        foreach (@features) {
            next unless /^DEPRECATEDIN_(\d+)_(\d+)_(\d+)$/;
            my $symdep = sprintf "%x%02x%02x", $1, $2, $3;
            next unless /^DEPRECATEDIN_(\d+)(?:_(\d+)_(\d+))?$/;
            my $symdep = sprintf "%x%02x%02x", $1, ($2 // 0), ($3 // 0);
            $verdict = 0 if $apiv ge $symdep;
        }
    }
+6 −3
Original line number Diff line number Diff line
@@ -72,11 +72,14 @@ my @opensslcpphandlers = (
          if ($op ne '<' && $op ne '>=') {
              die "Error: unacceptable operator $op: $_[0]\n";
          }
          my ($one, $major, $minor) =
          my ($major, $minor, $edit) =
              ( ($v >> 28) & 0xf,
                ($v >> 20) & 0xff,
                ($v >> 12) & 0xff );
          my $t = "DEPRECATEDIN_${one}_${major}_${minor}";
          my $t = "DEPRECATEDIN_" .
              ($major <= 1
               ? "${major}_${minor}_${edit}"
               : "${major}");
          my $cond = $op eq '<' ? 'ifndef' : 'ifdef';
          return (<<"EOF");
#$cond $t
@@ -284,7 +287,7 @@ EOF
    # We trick the parser by pretending that the declaration is wrapped in a
    # check if the DEPRECATEDIN macro is defined or not.  Callers of parse()
    # will have to decide what to do with it.
    { regexp   => qr/(DEPRECATEDIN_\d+_\d+_\d+)<<<\((.*)\)>>>/,
    { regexp   => qr/(DEPRECATEDIN_\d+(?:_\d+_\d+)?)<<<\((.*)\)>>>/,
      massager => sub { return (<<"EOF");
#ifndef $1
$2;