| 81 | |
| 82 | # copied from configure |
| 83 | def icu_info(icu_full_path): |
| 84 | uvernum_h = os.path.join(icu_full_path, 'source/common/unicode/uvernum.h') |
| 85 | if not os.path.isfile(uvernum_h): |
| 86 | print(' Error: could not load %s - is ICU installed?' % uvernum_h) |
| 87 | sys.exit(1) |
| 88 | icu_ver_major = None |
| 89 | matchVerExp = r'^\s*#define\s+U_ICU_VERSION_SHORT\s+"([^"]*)".*' |
| 90 | match_version = re.compile(matchVerExp) |
| 91 | for line in open(uvernum_h).readlines(): |
| 92 | m = match_version.match(line) |
| 93 | if m: |
| 94 | icu_ver_major = m.group(1) |
| 95 | if not icu_ver_major: |
| 96 | print(' Could not read U_ICU_VERSION_SHORT version from %s' % uvernum_h) |
| 97 | sys.exit(1) |
| 98 | icu_endianness = sys.byteorder[0] # TODO(srl295): EBCDIC should be 'e' |
| 99 | return (icu_ver_major, icu_endianness) |
| 100 | |
| 101 | (icu_ver_major, icu_endianness) = icu_info(options.icusrc) |
| 102 | print("Data file root: icudt%s%s" % (icu_ver_major, icu_endianness)) |