This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
t/test.pl fresh_perl_like() bug
[perl5.git] / lib / unicore / README.perl
CommitLineData
1911be83 1The *.txt files were copied from
8836d2a5 2
99870f4d 3 ftp://www.unicode.org/Public/UNIDATA
b6922eda 4
99870f4d 5with subdirectories 'extracted' and 'auxiliary'
61131c94 6
99870f4d
KW
7The Unihan files were not included due to space considerations. Also NOT
8included were any *.html files and *Test.txt files. It is possible to add the
9Unihan files, and edit mktables (see instructions near its beginning) to look
10at them.
11
12The file 'version' should exist and be a single line with the Unicode version,
13like:
145.2.0
61131c94
KW
15
16To be 8.3 filesystem friendly, the names of some of the input files have been
17changed from the values that are in the Unicode DB:
18
19mv PropertyValueAliases.txt PropValueAliases.txt
20mv NamedSequencesProv.txt NamedSqProv.txt
21mv DerivedAge.txt DAge.txt
22mv DerivedCoreProperties.txt DCoreProperties.txt
23mv DerivedNormalizationProps.txt DNormalizationProps.txt
24mv extracted/DerivedBidiClass.txt extracted/DBidiClass.txt
25mv extracted/DerivedBinaryProperties.txt extracted/DBinaryProperties.txt
26mv extracted/DerivedCombiningClass.txt extracted/DCombiningClass.txt
27mv extracted/DerivedDecompositionType.txt extracted/DDecompositionType.txt
28mv extracted/DerivedEastAsianWidth.txt extracted/DEastAsianWidth.txt
29mv extracted/DerivedGeneralCategory.txt extracted/DGeneralCategory.txt
30mv extracted/DerivedJoiningGroup.txt extracted/DJoinGroup.txt
31mv extracted/DerivedJoiningType.txt extracted/DJoinType.txt
32mv extracted/DerivedLineBreak.txt extracted/DLineBreak.txt
33mv extracted/DerivedNumericType.txt extracted/DNumType.txt
34mv extracted/DerivedNumericValues.txt extracted/DNumValues.txt
35
99870f4d
KW
36If you have the Unihan database (5.2 and above), you should also do the
37following:
61131c94 38
99870f4d
KW
39mv Unihan_DictionaryIndices.txt UnihanIndicesDictionary.txt
40mv Unihan_DictionaryLikeData.txt UnihanDataDictionaryLike.txt
41mv Unihan_IRGSources.txt UnihanIRGSources.txt
42mv Unihan_NumericValues.txt UnihanNumericValues.txt
43mv Unihan_OtherMappings.txt UnihanOtherMappings.txt
44mv Unihan_RadicalStrokeCounts.txt UnihanRadicalStrokeCounts.txt
45mv Unihan_Readings.txt UnihanReadings.txt
46mv Unihan_Variants.txt UnihanVariants.txt
47
48If you download everything, the names of files, such as test files, that are
49not used by mktables are not changed by the above, and will not work correctly
50as-is on 8.3 filesystems.
51
52mktables is used to generate the tables used by the rest of Perl. It will warn
53you about any *.txt files in the directory substructure that it doesn't know
54about. You should remove any so-identified, or edit mktables to add them to
55its lists to process. You can run
56
57 mktables -globlist
58
59to have it try to process these tables generically.
60
61If any files are added, deleted, or their names change, you must run
dbe75581 62
97050450 63 mktables -makelist
99870f4d
KW
64
65to generate a new list of all the files.
97050450 66
0fa75b59
JH
67FOR PUMPKINS
68
99870f4d
KW
69The files are inter-related. If you take the latest UnicodeData.txt, for
70example, but leave the older versions of other files, there can be subtle
71problems.
72
73When moving to a new version of Unicode, you need to update 'version' by hand
74
75 p4 edit version
76 ...
77
78You should look in the Unicode release notes (which are probably towards the
79bottom of http://www.unicode.org/reports/tr44/) to see if any properties have
80newly been moved to be Obsolete, Deprecated, or Stabilized. The full names for
81these should be added to the respective lists near the beginning of mktables,
82using an 'if' to add them for just this Unicode version going forward, so that
83mktables can continue to be used for earlier Unicode versions.
84
85When putting out a new Perl release, think about if any of the Deprecated
86properties should be moved to Suppressed.
b6922eda 87
a2bd7410
JH
88The *.pl files are generated from the *.txt files by the mktables script,
89more recently done during the Perl build process, but if you want to try
90the old manual way:
0fa75b59
JH
91
92 cd lib/unicore
99870f4d
KW
93 p4 edit *.pl */*.pl */*/*.pl
94 perl ./mktables -P ../../pod -T ../../t/re/uniprops.t -makelist
0fa75b59
JH
95 p4 revert -a
96 cd ../..
97 perl Porting/manicheck
e1aef32f 98
0fa75b59
JH
99If any new (or deleted, unlikely but not impossible) *.pl files are indicated:
100
101 cd lib/unicore
102 p4 add ...
103 p4 delete ...
104 cd ../...
105 p4 edit MANIFEST
106 ...
107
108And finally:
109
110 p4 submit
8836d2a5
JH
111
112--
99870f4d 113jhi@iki.fi; updated by nick@ccl4.org, public@khwilliamson.com