doc: document and warn if the ICU version is too old
Fixes: https://github.com/nodejs/node/issues/19657 PR-URL: https://github.com/nodejs/node/pull/23766 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com>
This commit is contained in:
parent
341006b144
commit
d8b6a1d4f6
@ -470,6 +470,10 @@ You can find other ICU releases at
|
||||
Download the file named something like `icu4c-**##.#**-src.tgz` (or
|
||||
`.zip`).
|
||||
|
||||
To check the minimum recommended ICU, run `./configure --help` and see
|
||||
the help for the `--with-icu-source` option. A warning will be printed
|
||||
during configuration if the ICU version is too old.
|
||||
|
||||
##### Unix/macOS
|
||||
|
||||
From an already-unpacked ICU:
|
||||
|
@ -51,6 +51,8 @@ valid_mips_arch = ('loongson', 'r1', 'r2', 'r6', 'rx')
|
||||
valid_mips_fpu = ('fp32', 'fp64', 'fpxx')
|
||||
valid_mips_float_abi = ('soft', 'hard')
|
||||
valid_intl_modes = ('none', 'small-icu', 'full-icu', 'system-icu')
|
||||
with open ('tools/icu/icu_versions.json') as f:
|
||||
icu_versions = json.load(f)
|
||||
|
||||
# create option groups
|
||||
shared_optgroup = optparse.OptionGroup(parser, "Shared libraries",
|
||||
@ -425,7 +427,9 @@ intl_optgroup.add_option('--with-icu-locales',
|
||||
intl_optgroup.add_option('--with-icu-source',
|
||||
action='store',
|
||||
dest='with_icu_source',
|
||||
help='Intl mode: optional local path to icu/ dir, or path/URL of icu source archive.')
|
||||
help='Intl mode: optional local path to icu/ dir, or path/URL of '
|
||||
'the icu4c source archive. '
|
||||
'v%d.x or later recommended.' % icu_versions["minimum_icu"])
|
||||
|
||||
parser.add_option('--with-ltcg',
|
||||
action='store_true',
|
||||
@ -1452,6 +1456,9 @@ def configure_intl(o):
|
||||
icu_ver_major = m.group(1)
|
||||
if not icu_ver_major:
|
||||
error('Could not read U_ICU_VERSION_SHORT version from %s' % uvernum_h)
|
||||
elif int(icu_ver_major) < icu_versions["minimum_icu"]:
|
||||
error('icu4c v%d.x is too old, v%d.x or later is required.' % (int(icu_ver_major),
|
||||
icu_versions["minimum_icu"]))
|
||||
icu_endianness = sys.byteorder[0];
|
||||
o['variables']['icu_ver_major'] = icu_ver_major
|
||||
o['variables']['icu_endianness'] = icu_endianness
|
||||
|
3
tools/icu/icu_versions.json
Normal file
3
tools/icu/icu_versions.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"minimum_icu": 57
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user