This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
mktables: Convert PropValueAliases.txt to use new early infrastructure
authorKarl Williamson <khw@cpan.org>
Mon, 27 Jul 2015 04:47:56 +0000 (22:47 -0600)
committerKarl Williamson <khw@cpan.org>
Wed, 29 Jul 2015 04:15:58 +0000 (22:15 -0600)
This file is crucial to compiling perl these days.  This commit converts
to use the new infrastructure for dealing with compiling Unicode
releases prior to when this file was made available.

charclass_invlists.h
lib/unicore/mktables
regcharclass.h

index b1701ed..e352f1e 100644 (file)
@@ -99521,7 +99521,7 @@ static const UV XPosixXDigit_invlist[] = { /* for EBCDIC POSIX-BC */
  * 1a0687fb9c6c4567e853913549df0944fe40821279a3e9cdaa6ab8679bc286fd lib/unicore/extracted/DLineBreak.txt
  * 40bcfed3ca727c19e1331f6c33806231d5f7eeeabd2e6a9e06a3740c85d0c250 lib/unicore/extracted/DNumType.txt
  * a18d502bad39d527ac5586d7bc93e29f565859e3bcc24ada627eff606d6f5fed lib/unicore/extracted/DNumValues.txt
- * 3ea969db51a2eb31c393738fa54cb0bf96568fb5ac3f35abba1c81db3b916b76 lib/unicore/mktables
+ * 3d548b2d1c831ed7ae2a49fe36f4b21698c0f432fb6faf37ea4d66ef6538968b lib/unicore/mktables
  * 462c9aaa608fb2014cd9649af1c5c009485c60b9c8b15b89401fdc10cf6161c6 lib/unicore/version
  * c6884f4d629f04d1316f3476cb1050b6a1b98ca30c903262955d4eae337c6b1e regen/charset_translations.pl
  * 7b6f61662df48e0cbfb234a926e02e5cb9468af052f7f9feb84285996f30df09 regen/mk_invlists.pl
index e9649d0..b7dc475 100644 (file)
@@ -10171,6 +10171,16 @@ END
     return @return;
 }
 
+sub substitute_PropValueAliases($) {
+    # Deal with early releases that don't have the crucial
+    # PropValueAliases.txt file.
+
+    my $file_object = shift;
+    $file_object->insert_lines(get_old_property_value_aliases());
+
+    process_PropValueAliases($file_object);
+}
+
 sub process_PropValueAliases {
     # This file contains values that properties look like:
     # bc ; AL        ; Arabic_Letter
@@ -10196,12 +10206,6 @@ sub process_PropValueAliases {
     my $file= shift;
     Carp::carp_extra_args(\@_) if main::DEBUG && @_;
 
-    # This whole file was non-existent in early releases, so use our own
-    # internal one if necessary.
-    if (! -e 'PropValueAliases.txt') {
-        $file->insert_lines(get_old_property_value_aliases());
-    }
-
     if ($v_version lt 4.0.0) {
         $file->insert_lines(split /\n/, <<'END'
 hst; L                                ; Leading_Jamo
@@ -18536,8 +18540,9 @@ my @input_file_objects = (
                     Progress_Message => 'Finishing property setup',
                     Handler => \&finish_property_setup,
                    ),
-    Input_file->new('PropValueAliases.txt', v0,
+    Input_file->new('PropValueAliases.txt', v3.2,
                      Handler => \&process_PropValueAliases,
+                     Early => [ \&substitute_PropValueAliases ],
                      Has_Missings_Defaults => $NOT_IGNORED,
                      Required_Even_in_Debug_Skip => 1,
                     ),
index fba1657..4cecf6a 100644 (file)
  * 1a0687fb9c6c4567e853913549df0944fe40821279a3e9cdaa6ab8679bc286fd lib/unicore/extracted/DLineBreak.txt
  * 40bcfed3ca727c19e1331f6c33806231d5f7eeeabd2e6a9e06a3740c85d0c250 lib/unicore/extracted/DNumType.txt
  * a18d502bad39d527ac5586d7bc93e29f565859e3bcc24ada627eff606d6f5fed lib/unicore/extracted/DNumValues.txt
- * 3ea969db51a2eb31c393738fa54cb0bf96568fb5ac3f35abba1c81db3b916b76 lib/unicore/mktables
+ * 3d548b2d1c831ed7ae2a49fe36f4b21698c0f432fb6faf37ea4d66ef6538968b lib/unicore/mktables
  * 462c9aaa608fb2014cd9649af1c5c009485c60b9c8b15b89401fdc10cf6161c6 lib/unicore/version
  * c6884f4d629f04d1316f3476cb1050b6a1b98ca30c903262955d4eae337c6b1e regen/charset_translations.pl
  * d9c04ac46bdd81bb3e26519f2b8eb6242cb12337205add3f7cf092b0c58dccc4 regen/regcharclass.pl