| Name: ICU (Fuchsia fork of Chromium fork) |
| License: MIT |
| License File: LICENSE |
| Upstream Git: https://chromium.googlesource.com/chromium/deps/icu/ |
| Description: |
| |
| This directory contains the source code of ICU4C for C/C++, following |
| Chromium's changes. |
| |
| This is a slight fork of Chromium's ICU, which itself is a fork of the upstream |
| ICU project. See the section "LOCAL MODIFICATIONS" for the details of the |
| local changes. |
| |
| Most of the Fuchsia-specific changes have been upstreamed to Chromium. If |
| possible, update the upstream Chromium repository directly and not the Fuchsia |
| copy directly. |
| |
| The differences between the Chromium and the Fuchsia builds are behind the |
| `icu_is_in_fuchsia` gn argument. |
| |
| LOCAL MODIFICATIONS |
| |
| The following patch has been applied to source/common/uposixdefs.h: |
| |
| diff --git a/source/common/uposixdefs.h b/source/common/uposixdefs.h |
| index 23c3f6d4..015064ab 100644 |
| --- a/source/common/uposixdefs.h |
| +++ b/source/common/uposixdefs.h |
| @@ -33,7 +33,7 @@ |
| */ |
| #ifdef _XOPEN_SOURCE |
| /* Use the predefined value. */ |
| -#else |
| +#elif !defined(__APPLE__) |
| /* |
| * Version 6.0: |
| * The Open Group Base Specifications Issue 6 (IEEE Std 1003.1, 2004 Edition) |
| |
| UPDATE PROCEDURE |
| |
| To ensure that Fuchsia's ICU repo properly tracks Chromium's version, do the |
| following when catching up: |
| |
| 1. Add the Chromium upstream remote (first-time only): |
| |
| Run the following command to add the upstream Chromium copy of the ICU |
| repository. This is only needed if you have not previously added the |
| Chromium remote: |
| $ git remote add chromium https://chromium.googlesource.com/chromium/deps/icu.git |
| |
| 2. Merge from Chromium ToT: |
| |
| From $FUCHSIA_DIR/third_party/icu on the origin/master branch, run: |
| $ git merge chromium/master |
| |
| See an example here: |
| https://fuchsia-review.googlesource.com/c/third_party/icu/+/403454 |