diff options
Diffstat (limited to 'Admin/README.update')
-rw-r--r-- | Admin/README.update | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/Admin/README.update b/Admin/README.update index 8d50baf..fe028ce 100644 --- a/Admin/README.update +++ b/Admin/README.update @@ -13,14 +13,22 @@ environment variables - UCD, which points to the directory containing the Unicode UCD Before updating, read the Unicode release note carefully and -understand any changes that might affect Gnulib. In particular, -changes in the text segmentation algorithms (provided by unilbrk.h, -uniwbrk.h, unigbrk.h) often require manual adjustment of source files. - -The release notes are typically available at: +understand any changes that might affect Gnulib. The release notes are +typically available at: https://unicode.org/versions/Unicode<VERSION>/ +In particular, changes in the text segmentation algorithms often +require manual adjustment of source files: + + - For unigbrk/ updates, look at the revision history of UAX #29 + <https://www.unicode.org/reports/tr29/>, section 3. + - For uniwbrk/ updates, look at the revision history of UAX #29 + <https://www.unicode.org/reports/tr29/>, section 4. + - For unilbrk/ updates, look at the revision history of UAX #14 + <https://www.unicode.org/reports/tr14/>. + + * Regenerating the Gnulib source code The source files in Gnulib are updated using a couple of tools: @@ -38,9 +46,8 @@ Note that 'gen-uni-tables' sometimes fails when a large portion of Unicode data changes. In that case, errors are reported as assertion failures and you will need to adjust 'lib/gen-uni-tables.c'. -Also note that the files under 'lib/uniwidth' and 'tests/uniwidth' are -currently _not_ updated automatically. You need to merge the -generated *.part file by hand. +Also note that the files under 'tests/uniwidth' are currently _not_ +updated automatically. You need to check the test failures by hand. * Updating the version numbers of modules @@ -64,11 +71,13 @@ to bump the version of affected modules. To identify affected modules, you can use the following command: $ (cd $GNULIB_SRCDIR && git show --oneline --name-only $COMMIT | tail -n+2) \ - | ./containing | LC_ALL=C sort | uniq \ - | ./dependent | LC_ALL=C sort | uniq + | ./containing | LC_ALL=C sort -u \ + | ./dependent | LC_ALL=C sort -u where $COMMIT is a git commit ID, which points to the regeneration, and 'containing' and 'dependent' are scripts included here. Note that -this command takes some time to complete. +this command takes some time to complete. Also, it is useful to +temporarily remove the dependency to 'wcwidth' from modules/mbchar +before this command. Daiki Ueno <ueno@gnu.org> |