util/mknum.pl: Call OpenSSL::Ordinals::renumber() for real releases
[openssl.git] / util / mknum.pl
index a5f96b73739da0d85034e5dad522a8d0b44208a7..bf73797c3fffdbed85899fe49db1861c0f1d7d13 100644 (file)
@@ -2,7 +2,7 @@
 #! /usr/bin/env perl
 # Copyright 2018 The OpenSSL Project Authors. All Rights Reserved.
 #
-# Licensed under the OpenSSL license (the "License").  You may not use
+# Licensed under the Apache License 2.0 (the "License").  You may not use
 # this file except in compliance with the License.  You can obtain a copy
 # in the file LICENSE in the source distribution or at
 # https://www.openssl.org/source/license.html
@@ -88,6 +88,13 @@ foreach my $f (($symhacks_file // (), @ARGV)) {
     close IN;
 }
 
+# As long as we're running in development or alpha releases, we can have
+# symbols without specific numbers assigned.  When in beta or final release,
+# all symbols MUST have an assigned number.
+if ($version !~ m/^\d+\.\d+\.\d+(?:[a-z]+)?-(?:dev|alpha)/) {
+    $ordinals->renumber();
+}
+
 if ($checkexist) {
     my %new_names = map { $_->name() => 1 }
         $ordinals->items(comparator => sub { $_[0] cmp $_[1] },