diff options
author | Alyssa Ross <hi@alyssa.is> | 2021-04-09 18:28:16 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2021-04-12 18:46:15 +0000 |
commit | fd2e737e0678ee7d8081baef05b305146a2c0034 (patch) | |
tree | ac3e9b27576a0382335532d126f9a66d486bc638 /nixpkgs/pkgs/os-specific/darwin/apple-source-releases/ICU/default.nix | |
parent | cc207d720b6aa836e256c1ee9842bc739e630a8a (diff) | |
parent | 9e377a6ce42dccd9b624ae4ce8f978dc892ba0e2 (diff) | |
download | nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar.gz nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar.bz2 nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar.lz nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar.xz nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar.zst nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.zip |
Merge remote-tracking branch 'nixpkgs/nixos-unstable'
Diffstat (limited to 'nixpkgs/pkgs/os-specific/darwin/apple-source-releases/ICU/default.nix')
-rw-r--r-- | nixpkgs/pkgs/os-specific/darwin/apple-source-releases/ICU/default.nix | 55 |
1 files changed, 44 insertions, 11 deletions
diff --git a/nixpkgs/pkgs/os-specific/darwin/apple-source-releases/ICU/default.nix b/nixpkgs/pkgs/os-specific/darwin/apple-source-releases/ICU/default.nix index 761ff3ea9252..032b1447463d 100644 --- a/nixpkgs/pkgs/os-specific/darwin/apple-source-releases/ICU/default.nix +++ b/nixpkgs/pkgs/os-specific/darwin/apple-source-releases/ICU/default.nix @@ -1,23 +1,56 @@ -{ appleDerivation }: +{ appleDerivation, python3 }: appleDerivation { - patches = [ ./clang-5.patch ]; + nativeBuildInputs = [ python3 ]; postPatch = '' substituteInPlace makefile \ - --replace /usr/bin/ "" \ - --replace '$(ISYSROOT)' "" \ - --replace 'shell xcodebuild -version -sdk' 'shell true' \ - --replace 'shell xcrun -sdk $(SDKPATH) -find' 'shell echo' \ - --replace '-install_name $(libdir)' "-install_name $out/lib/" \ - --replace /usr/local/bin/ /bin/ \ - --replace /usr/lib/ /lib/ \ + --replace "/usr/bin/" "" \ + --replace "xcrun --sdk macosx --find" "echo -n" \ + --replace "xcrun --sdk macosx.internal --show-sdk-path" "echo -n /dev/null" \ + --replace "-install_name " "-install_name $out" + + substituteInPlace icuSources/config/mh-darwin \ + --replace "-install_name " "-install_name $out/" + + # drop using impure /var/db/timezone/icutz + substituteInPlace makefile \ + --replace '-DU_TIMEZONE_FILES_DIR=\"\\\"$(TZDATA_LOOKUP_DIR)\\\"\" -DU_TIMEZONE_PACKAGE=\"\\\"$(TZDATA_PACKAGE)\\\"\"' "" + + # FIXME: This will cause `ld: warning: OS version (12.0) too small, changing to 13.0.0`, APPLE should fix it. + substituteInPlace makefile \ + --replace "ZIPPERING_LDFLAGS=-Wl,-iosmac_version_min,12.0" "ZIPPERING_LDFLAGS=" + + # skip test for missing encodingSamples data + substituteInPlace icuSources/test/cintltst/ucsdetst.c \ + --replace "&TestMailFilterCSS" "NULL" + + patchShebangs icuSources ''; - makeFlags = [ "DSTROOT=$(out)" ]; + # APPLE is using makefile to save its default configuration and call ./configure, so we hack makeFlags + # instead of configuring ourself, trying to stay abreast of APPLE. + dontConfigure = true; + makeFlags = [ + "DSTROOT=$(out)" + + # remove /usr prefix on include and lib + "PRIVATE_HDR_PREFIX=" + "libdir=/lib/" + + "DATA_INSTALL_DIR=/share/icu/" + "DATA_LOOKUP_DIR=$(DSTROOT)$(DATA_INSTALL_DIR)" + + # hack to use our lower macos version + "MAC_OS_X_VERSION_MIN_REQUIRED=__MAC_OS_X_VERSION_MIN_REQUIRED" + "OSX_HOST_VERSION_MIN_STRING=$(MACOSX_DEPLOYMENT_TARGET)" + ]; + + doCheck = true; + checkTarget = "check"; postInstall = '' - mv $out/usr/local/include $out/include + # we don't need all those in usr/local rm -rf $out/usr ''; } |