Commit Graph

73 Commits

Author SHA1 Message Date
Thomas A
6b609b2b0c Update CMake Version To 3.13 2023-07-26 10:15:10 -07:00
CuriousTommy
485df3a741
Merge pull request #3 from darlinghq/update_sources_11.5
Update Sources 11.5 - ICU
2023-05-11 21:58:27 -07:00
Thomas A
62cac8f0bd Upload README.md and UPDATE_SOURCE.md 2023-04-17 19:49:51 -07:00
Thomas A
73a280b8fc Upload build_icusources.sh Script 2023-04-17 19:45:50 -07:00
Thomas A
97d7fa7caf Fix building 2022-11-20 18:25:51 -08:00
Thomas A
4fd8f4eaa9 Upload "icudt66l.dat.xz" artifact 2022-11-20 18:20:53 -08:00
Thomas A
044e8497cf Update Source To ICU-66112 2022-10-16 12:26:21 -07:00
Ariel Abreu
41eaa06edf
Fix data directory path definition 2021-03-04 22:02:42 -05:00
Ariel Abreu
e4ff6940a3
Publicly define U_SHOW_CPLUSPLUS_API for dependents
Apple did this weird thing where they specifically disabled U_SHOW_CPLUSPLUS_API for their modified build of ICU. We need to set it for our dependents because they use the C++ API
2020-07-01 16:27:29 -04:00
Ariel Abreu
8cc3d36edd
Pre-generate icudt64l.dat
Generation procedure:

1. `mkdir build`

2. `cp -rp icuSources/* build/`

3. `cd build`

4. `chmod +x runConfigureICU && chmod +x configure`

5. Patch `tools/icuinfo/icuinfo.cpp` to remove references to Mach components. See the end of this commit message for the current patch

6.
```
APPLE_INTERNAL_DIR="/AppleInternal" \
LANG="en_US.utf8" \
CPPFLAGS="-DU_DISABLE_RENAMING=1"  \
CFLAGS="-DU_SHOW_CPLUSPLUS_API=1 -DU_SHOW_INTERNAL_API=1 -DICU_DATA_DIR=\"\\\"/usr/local/share/icu/\\\"\" -DICU_DATA_DIR_PREFIX_ENV_VAR=\"\\\"APPLE_FRAMEWORKS_ROOT\\\"\" -m64 -g -Os -fno-exceptions -fvisibility=hidden" \
CXXFLAGS="-std=c++11 -DU_SHOW_CPLUSPLUS_API=1 -DU_SHOW_INTERNAL_API=1 -DICU_DATA_DIR=\"\\\"/usr/local/share/icu/\\\"\" -DICU_DATA_DIR_PREFIX_ENV_VAR=\"\\\"APPLE_FRAMEWORKS_ROOT\\\"\" -m64 -g -Os -fno-exceptions -fvisibility=hidden -fvisibility-inlines-hidden" \
DYLD_LIBRARY_PATH="/usr/local/lib" \
./runConfigureICU Linux --disable-renaming --disable-extras --disable-layout --disable-samples --with-data-packaging=archive --prefix=/usr/local --with-library-bits=64
```

7.
```
APPLE_INTERNAL_DIR="/AppleInternal" \
LANG="en_US.utf8" \
CFLAGS="-DU_SHOW_CPLUSPLUS_API=1 -DU_SHOW_INTERNAL_API=1 -DICU_DATA_DIR=\"\\\"/usr/local/share/icu/\\\"\" -DICU_DATA_DIR_PREFIX_ENV_VAR=\"\\\"APPLE_FRAMEWORKS_ROOT\\\"\" -m64 -g -Os -fno-exceptions -fvisibility=hidden" \
CXXFLAGS="-std=c++11 -DU_SHOW_CPLUSPLUS_API=1 -DU_SHOW_INTERNAL_API=1 -DICU_DATA_DIR=\"\\\"/usr/local/share/icu/\\\"\" -DICU_DATA_DIR_PREFIX_ENV_VAR=\"\\\"APPLE_FRAMEWORKS_ROOT\\\"\" -m64 -g -Os -fno-exceptions -fvisibility=hidden -fvisibility-inlines-hidden" \
DYLD_LIBRARY_PATH="/usr/local/lib" \
make
```

8. `cp data/out/icudt64l.dat ../icuSources/data/out/icudt64l.dat`

9. `xz -z ../icuSources/data/out/icudt64l.dat`

---

Example patch for `tools/icuinfo/icuinfo.cpp`:
```
--- ../icuSources/tools/icuinfo/icuinfo.cpp	2019-09-07 22:44:27.000000000 -0400
+++ tools/icuinfo/icuinfo.cpp	2020-07-01 10:21:00.796333708 -0400
@@ -308,7 +308,9 @@

 // Apple addition
 #include <unistd.h>
+#if 0
 #include <mach/mach_time.h>
+#endif
 #include <unicode/ustring.h>
 #include <unicode/udat.h>
 enum { kUCharsOutMax = 128, kBytesOutMax = 256 };
@@ -319,15 +321,18 @@
     static const UDate udatTry1 = 1290714600000.0; // 2010 Nov. 25 (Thurs) 11:50:00 AM PT
     static const UDate udatTry2 = 1451736016000.0; // 2016 Jan. 02  ...
     int remaining = 2;
+#if 0
     mach_timebase_info_data_t info;
     mach_timebase_info(&info);
+#endif
     while (remaining-- > 0) {
+#if 0
         uint64_t start, durationOpen, durationUse1, durationUse2;
         UDateFormat *udatfmt;
         int32_t datlen1, datlen2;
         UChar outUChars[kUCharsOutMax];
         UErrorCode status = U_ZERO_ERROR;
-
+
         start = mach_absolute_time();
         udatfmt = udat_open(UDAT_MEDIUM, UDAT_FULL, locale, tzName, -1, NULL, 0, &status);
         durationOpen = ((mach_absolute_time() - start) * info.numer)/info.denom;
@@ -347,8 +352,11 @@
             }
             udat_close(udatfmt);
         } else {
+#endif
             printf("first time %d udat_open failed\n", remaining);
+#if 0
         }
+#endif
     }
 }
```
2020-07-01 10:39:56 -04:00
Ariel Abreu
3b54408346
Almost 'Darling build of ICU-64252.0.1'; need to somehow generate icudt64l.dat 2020-07-01 00:05:07 -04:00
Ariel Abreu
f9b1f2f32a
ICU-64252.0.1 2020-06-30 13:48:02 -04:00
Ariel Abreu
f267517559
Remove macOS deployment target definitions
The deployment target is now set project-wide in the root Darling CMakeLists.txt
2020-06-12 21:16:38 -04:00
Ariel Abreu
ad91f5ee36
Initial update to clean up include directories
"initial" because there might some additional modifications necessary later on
2020-05-14 12:57:40 -04:00
Thomas A
22a4fa06ba Remove redundant definitions 2020-03-30 15:38:35 -07:00
Lubos Dolezel
3348c04fea Disable symbol renaming, it is not used on macOS 2018-01-13 20:39:58 +01:00
Viktor Oreshkin
b2f49d49a9 Fix build for clang 5 r292518 (C++ DR1310) 2017-11-01 18:16:30 +03:00
Viktor Oreshkin
1a13eb770e Fix CXX flags and libcxx includes 2017-11-01 18:01:35 +03:00
Andrew Hyatt
97f148c091 libicucore.dylib -> libicucore.A.dylib
With a symlink to the new name as well.
2017-08-13 12:50:12 -07:00
Andrew Hyatt
d66ba46cc4 Symlink individual headers 2017-06-25 22:29:46 -07:00
Andrew Hyatt
92b16565c1 Create a proper include folder 2017-06-13 18:03:34 -07:00
Lubos Dolezel
2d76072d87 Merge branch 'using-machos-experiment' 2017-03-27 10:52:47 +02:00
Lubos Dolezel
366f9cd839 Adapt to new libc 2017-03-27 10:52:47 +02:00
Lubos Dolezel
d96f2e487c Mach-O build 2017-03-27 10:52:47 +02:00
Lubos Dolezel
6fb99f4bf3 Adapt to new libc 2017-01-28 00:17:17 +01:00
Lubos Dolezel
e658d4e2de Mach-O build 2017-01-17 17:19:15 +01:00
Luboš Doležel
40fff350a3 Merge pull request #1 from ahyattdev/darling
Hide warnings
2016-11-23 09:38:42 +01:00
Andrew Hyatt
a9dc249bc5 Hide warnings 2016-11-22 20:45:11 -08:00
Lubos Dolezel
f8cd7888ed Don't install icu data in 32-bit builds 2016-02-27 22:06:56 +01:00
Lubos Dolezel
b688ae3716 Updated build file 2016-02-10 22:32:00 +01:00
Luboš Doležel
b49ba2400d Change ICU data location to share/darling/icu 2016-01-28 23:22:18 +01:00
Lubos Dolezel
575b5522ac Add stubdata into the build (like Apple does) 2015-11-13 15:20:16 +01:00
Lubos Dolezel
9f176624a5 Abort build correctly on missing "xz" 2015-11-12 22:52:14 +01:00
Lubos Dolezel
10c6a61b10 Darling build + pre-built ICU data 2015-11-12 20:42:54 +01:00
Apple
08b89b0a24 ICU-531.48.tar.gz 2015-03-10 17:57:33 +00:00
Apple
586446045a ICU-531.31.tar.gz 2014-11-14 00:05:24 +00:00
Apple
57a6839dcb ICU-531.30.tar.gz 2014-09-03 21:37:57 +00:00
Apple
efa1e6592f ICU-511.35.tar.gz 2014-08-12 06:44:54 +00:00
Apple
151279e379 ICU-511.34.tar.gz 2014-05-16 04:17:50 +00:00
Apple
e4f10fab0c ICU-511.32.tar.gz 2014-03-11 22:52:33 +00:00
Apple
4d9eefca00 ICU-511.31.tar.gz 2014-01-14 01:21:19 +00:00
Apple
2be6500137 ICU-511.27.tar.gz 2013-10-09 05:46:46 +00:00
Apple
51004dcb01 ICU-511.25.tar.gz 2013-08-13 23:52:56 +00:00
Apple
ba6d6ed23d ICU-491.11.3.tar.gz 2013-08-05 16:28:46 +00:00
Apple
ba516feee2 ICU-491.11.2.tar.gz 2013-04-09 23:28:52 +00:00
Apple
4388f06055 ICU-491.11.1.tar.gz 2012-07-27 17:35:01 +00:00
Apple
b25be06635 ICU-461.18.tar.gz 2012-03-08 22:16:41 +00:00
Apple
8421dd3e84 ICU-461.17.tar.gz 2012-03-08 22:16:03 +00:00
Apple
652986238f ICU-461.16.tar.gz 2011-11-15 18:15:50 +00:00
Apple
9953cfe31e ICU-461.13.tar.gz 2011-08-01 18:09:02 +00:00