diff --git a/icu/.footprint b/icu/.footprint index a745c01..ab89db0 100644 --- a/icu/.footprint +++ b/icu/.footprint @@ -69,6 +69,12 @@ drwxr-xr-x root/root usr/include/unicode/ -rw-r--r-- root/root usr/include/unicode/measfmt.h -rw-r--r-- root/root usr/include/unicode/measunit.h -rw-r--r-- root/root usr/include/unicode/measure.h +-rw-r--r-- root/root usr/include/unicode/messageformat2.h +-rw-r--r-- root/root usr/include/unicode/messageformat2_arguments.h +-rw-r--r-- root/root usr/include/unicode/messageformat2_data_model.h +-rw-r--r-- root/root usr/include/unicode/messageformat2_data_model_names.h +-rw-r--r-- root/root usr/include/unicode/messageformat2_formattable.h +-rw-r--r-- root/root usr/include/unicode/messageformat2_function_registry.h -rw-r--r-- root/root usr/include/unicode/messagepattern.h -rw-r--r-- root/root usr/include/unicode/msgfmt.h -rw-r--r-- root/root usr/include/unicode/normalizer2.h @@ -213,30 +219,30 @@ drwxr-xr-x root/root usr/include/unicode/ -rw-r--r-- root/root usr/include/unicode/vtzone.h drwxr-xr-x root/root usr/lib/ drwxr-xr-x root/root usr/lib/icu/ -drwxr-xr-x root/root usr/lib/icu/74.2/ --rw-r--r-- root/root usr/lib/icu/74.2/Makefile.inc --rw-r--r-- root/root usr/lib/icu/74.2/pkgdata.inc +drwxr-xr-x root/root usr/lib/icu/75.1/ +-rw-r--r-- root/root usr/lib/icu/75.1/Makefile.inc +-rw-r--r-- root/root usr/lib/icu/75.1/pkgdata.inc lrwxrwxrwx root/root usr/lib/icu/Makefile.inc -> current/Makefile.inc -lrwxrwxrwx root/root usr/lib/icu/current -> 74.2 +lrwxrwxrwx root/root usr/lib/icu/current -> 75.1 lrwxrwxrwx root/root usr/lib/icu/pkgdata.inc -> current/pkgdata.inc -lrwxrwxrwx root/root usr/lib/libicudata.so -> libicudata.so.74.2 -lrwxrwxrwx root/root usr/lib/libicudata.so.74 -> libicudata.so.74.2 --rwxr-xr-x root/root usr/lib/libicudata.so.74.2 -lrwxrwxrwx root/root usr/lib/libicui18n.so -> libicui18n.so.74.2 -lrwxrwxrwx root/root usr/lib/libicui18n.so.74 -> libicui18n.so.74.2 --rwxr-xr-x root/root usr/lib/libicui18n.so.74.2 -lrwxrwxrwx root/root usr/lib/libicuio.so -> libicuio.so.74.2 -lrwxrwxrwx root/root usr/lib/libicuio.so.74 -> libicuio.so.74.2 --rwxr-xr-x root/root usr/lib/libicuio.so.74.2 -lrwxrwxrwx root/root usr/lib/libicutest.so -> libicutest.so.74.2 -lrwxrwxrwx root/root usr/lib/libicutest.so.74 -> libicutest.so.74.2 --rwxr-xr-x root/root usr/lib/libicutest.so.74.2 -lrwxrwxrwx root/root usr/lib/libicutu.so -> libicutu.so.74.2 -lrwxrwxrwx root/root usr/lib/libicutu.so.74 -> libicutu.so.74.2 --rwxr-xr-x root/root usr/lib/libicutu.so.74.2 -lrwxrwxrwx root/root usr/lib/libicuuc.so -> libicuuc.so.74.2 -lrwxrwxrwx root/root usr/lib/libicuuc.so.74 -> libicuuc.so.74.2 --rwxr-xr-x root/root usr/lib/libicuuc.so.74.2 +lrwxrwxrwx root/root usr/lib/libicudata.so -> libicudata.so.75.1 +lrwxrwxrwx root/root usr/lib/libicudata.so.75 -> libicudata.so.75.1 +-rwxr-xr-x root/root usr/lib/libicudata.so.75.1 +lrwxrwxrwx root/root usr/lib/libicui18n.so -> libicui18n.so.75.1 +lrwxrwxrwx root/root usr/lib/libicui18n.so.75 -> libicui18n.so.75.1 +-rwxr-xr-x root/root usr/lib/libicui18n.so.75.1 +lrwxrwxrwx root/root usr/lib/libicuio.so -> libicuio.so.75.1 +lrwxrwxrwx root/root usr/lib/libicuio.so.75 -> libicuio.so.75.1 +-rwxr-xr-x root/root usr/lib/libicuio.so.75.1 +lrwxrwxrwx root/root usr/lib/libicutest.so -> libicutest.so.75.1 +lrwxrwxrwx root/root usr/lib/libicutest.so.75 -> libicutest.so.75.1 +-rwxr-xr-x root/root usr/lib/libicutest.so.75.1 +lrwxrwxrwx root/root usr/lib/libicutu.so -> libicutu.so.75.1 +lrwxrwxrwx root/root usr/lib/libicutu.so.75 -> libicutu.so.75.1 +-rwxr-xr-x root/root usr/lib/libicutu.so.75.1 +lrwxrwxrwx root/root usr/lib/libicuuc.so -> libicuuc.so.75.1 +lrwxrwxrwx root/root usr/lib/libicuuc.so.75 -> libicuuc.so.75.1 +-rwxr-xr-x root/root usr/lib/libicuuc.so.75.1 drwxr-xr-x root/root usr/lib/pkgconfig/ -rw-r--r-- root/root usr/lib/pkgconfig/icu-i18n.pc -rw-r--r-- root/root usr/lib/pkgconfig/icu-io.pc @@ -250,12 +256,12 @@ drwxr-xr-x root/root usr/sbin/ -rwxr-xr-x root/root usr/sbin/icupkg drwxr-xr-x root/root usr/share/ drwxr-xr-x root/root usr/share/icu/ -drwxr-xr-x root/root usr/share/icu/74.2/ --rw-r--r-- root/root usr/share/icu/74.2/LICENSE (EMPTY) -drwxr-xr-x root/root usr/share/icu/74.2/config/ --rw-r--r-- root/root usr/share/icu/74.2/config/mh-linux --rwxr-xr-x root/root usr/share/icu/74.2/install-sh --rwxr-xr-x root/root usr/share/icu/74.2/mkinstalldirs +drwxr-xr-x root/root usr/share/icu/75.1/ +-rw-r--r-- root/root usr/share/icu/75.1/LICENSE +drwxr-xr-x root/root usr/share/icu/75.1/config/ +-rw-r--r-- root/root usr/share/icu/75.1/config/mh-linux +-rwxr-xr-x root/root usr/share/icu/75.1/install-sh +-rwxr-xr-x root/root usr/share/icu/75.1/mkinstalldirs drwxr-xr-x root/root usr/share/man/ drwxr-xr-x root/root usr/share/man/man1/ -rw-r--r-- root/root usr/share/man/man1/derb.1.gz diff --git a/icu/.signature b/icu/.signature index 7f2aed7..620bc79 100644 --- a/icu/.signature +++ b/icu/.signature @@ -1,6 +1,7 @@ untrusted comment: verify with /etc/ports/opt-arm.pub -RWQh9Dk2FlLauJdQdvo5OWF6VZqcNkYkKNV+q207CBoUfkR8bXaPDSpDv7pN8ckcoD4owO9mWp1TyDYKGRKhJlCpw6ymhKWHxA8= -SHA256 (Pkgfile) = 7d155cd6d9d6c5baf17d0263812c51688e8b6df0c20737bf79fd81754cdbed0d -SHA256 (.footprint) = b9197cec990e76886d5396856989bc9c327c82277d21c1f70a9a03c569869a9a -SHA256 (icu4c-74_2-src.tgz) = 5e4fb11d6a3e6b85afb55de8da8a71538f1d8fd64fce893986b37d60e5bb0091 +RWQh9Dk2FlLauLNtc3Ia1Js56FF+Ep7IHP8VqsI8+3i17TuNFHlb30wzzdqH+80+dPFhrK29fYY72Za1U+7pma8sjDsL+wDp9w8= +SHA256 (Pkgfile) = 4eee70ceed5e1564c9a616b2236e0882b4218e20fb18003001d4729357478dc8 +SHA256 (.footprint) = 669c7f71108af145cd8609d529e38b824095738bbf416f7a8dac129ce98d7362 +SHA256 (icu4c-75_1-src.tgz) = cb968df3e4d2e87e8b11c49a5d01c787bd13b9545280fc6642f826527618caef SHA256 (icudata-stdlibs.patch) = 9633727d1875b90e87d0a6d8b727fb926a4f831e4c8f1e2c4f3eb24b08097153 +SHA256 (ICU-22132.patch) = f534b472dd7a6961591466eef542e2c3ad698d3008c9b6af813c66cbc0b4dd8e diff --git a/icu/ICU-22132.patch b/icu/ICU-22132.patch new file mode 100644 index 0000000..3b93c92 --- /dev/null +++ b/icu/ICU-22132.patch @@ -0,0 +1,25 @@ +diff -u a/i18n/vtzone.cpp a/i18n/vtzone.cpp +--- a/i18n/vtzone.cpp 2023-07-14 09:05:38.000000000 +0100 ++++ b/i18n/vtzone.cpp 2023-07-14 09:05:38.000000000 +0100 +@@ -1735,14 +1735,14 @@ + } + } + } else { +- UnicodeString icutzprop; +- UVector customProps(nullptr, uhash_compareUnicodeString, status); ++ UVector customProps(uprv_deleteUObject, uhash_compareUnicodeString, status); + if (olsonzid.length() > 0 && icutzver.length() > 0) { +- icutzprop.append(olsonzid); +- icutzprop.append(u'['); +- icutzprop.append(icutzver); +- icutzprop.append(u']'); +- customProps.addElement(&icutzprop, status); ++ LocalPointer icutzprop(new UnicodeString(ICU_TZINFO_PROP), status); ++ icutzprop->append(olsonzid); ++ icutzprop->append(u'['); ++ icutzprop->append(icutzver); ++ icutzprop->append(u']'); ++ customProps.adoptElement(icutzprop.orphan(), status); + } + writeZone(writer, *tz, &customProps, status); + } \ No newline at end of file diff --git a/icu/Pkgfile b/icu/Pkgfile index 189c671..aedd730 100644 --- a/icu/Pkgfile +++ b/icu/Pkgfile @@ -3,12 +3,14 @@ # Maintainer: Danny Rawlins, crux at romster dot me # Arch Maintainer: CRUX-ARM System Team, devel at crux-arm dot nu # Packager: Younes Hafri, ycrux at club-internet dot fr +# Maintainer: Tim Biermann, tbier at posteo dot de +# Optional: clang lld name=icu -version=74.2 -release=2 +version=75.1 +release=1 source=(https://github.com/unicode-org/icu/releases/download/release-${version//./-}/icu4c-${version/./_}-src.tgz - icudata-stdlibs.patch) + icudata-stdlibs.patch ICU-22132.patch) build() { cd icu/source @@ -19,16 +21,18 @@ build() { export CC=gcc CXX=g++ patch -p2 -i $SRC/icudata-stdlibs.patch + patch -Np1 -i $SRC/ICU-22132.patch + export CFLAGS="$CFLAGS -fno-strict-aliasing" + export CXXFLAGS="$CFLAGS" + echo $CFLAGS $CXXFLAGS + CONFIG_SHELL=/bin/bash \ ./configure \ --prefix=/usr \ --mandir=/usr/share/man \ --disable-samples \ --disable-tests - # https://github.com/unicode-org/icu/blob/main/icu4c/LICENSE does not seem to work - touch ../LICENSE - make make -j1 DESTDIR=$PKG install } diff --git a/icu/icu-65.1-initialized-buffer-uloc_getKeywordValue.patch b/icu/icu-65.1-initialized-buffer-uloc_getKeywordValue.patch deleted file mode 100644 index 475921d..0000000 --- a/icu/icu-65.1-initialized-buffer-uloc_getKeywordValue.patch +++ /dev/null @@ -1,23 +0,0 @@ -From fab4c3c719977205a3f005ddfd7fffbb9c19c587 Mon Sep 17 00:00:00 2001 -From: Frank Tang -Date: Wed, 30 Oct 2019 17:45:22 -0700 -Subject: [PATCH] ICU-20884 initialized buffer uloc_getKeywordValue - ---- - icu4c/source/common/uloc.cpp | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/icu4c/source/common/uloc.cpp b/icu4c/source/common/uloc.cpp -index 6a9bfcfbff5..ea81c0ce87f 100644 ---- a/icu4c/source/common/uloc.cpp -+++ b/icu4c/source/common/uloc.cpp -@@ -766,6 +766,9 @@ uloc_getKeywordValue(const char* localeID, - char* buffer, int32_t bufferCapacity, - UErrorCode* status) - { -+ if (buffer != nullptr) { -+ buffer[0] = '\0'; -+ } - const char* startSearchHere = NULL; - const char* nextSeparator = NULL; - char keywordNameBuffer[ULOC_KEYWORD_BUFFER_LEN];