Merge pull request #299613 from reckenrode/libiconv-switch
darwin.libiconv: switch to libiconvReal and add to darwin-aliases
This commit is contained in:
commit
1500fe6dda
|
@ -11,6 +11,7 @@
|
||||||
, perl
|
, perl
|
||||||
, luajit
|
, luajit
|
||||||
, darwin
|
, darwin
|
||||||
|
, libiconv
|
||||||
, python3
|
, python3
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
@ -127,7 +128,7 @@ stdenv.mkDerivation {
|
||||||
--replace " -L${stdenv.cc.libc}/lib" "" \
|
--replace " -L${stdenv.cc.libc}/lib" "" \
|
||||||
--replace " -L${darwin.libobjc}/lib" "" \
|
--replace " -L${darwin.libobjc}/lib" "" \
|
||||||
--replace " -L${darwin.libunwind}/lib" "" \
|
--replace " -L${darwin.libunwind}/lib" "" \
|
||||||
--replace " -L${darwin.libiconv}/lib" ""
|
--replace " -L${libiconv}/lib" ""
|
||||||
|
|
||||||
# All the libraries we stripped have -osx- in their name as of this time.
|
# All the libraries we stripped have -osx- in their name as of this time.
|
||||||
# Assert now that this pattern no longer appears in config.mk.
|
# Assert now that this pattern no longer appears in config.mk.
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
, testers
|
, testers
|
||||||
, frankenphp
|
, frankenphp
|
||||||
, darwin
|
, darwin
|
||||||
|
, libiconv
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, makeBinaryWrapper
|
, makeBinaryWrapper
|
||||||
, runCommand
|
, runCommand
|
||||||
|
@ -64,7 +65,7 @@ in buildGoModule rec {
|
||||||
'' + lib.optionalString stdenv.isDarwin ''
|
'' + lib.optionalString stdenv.isDarwin ''
|
||||||
# replace hard-code homebrew path
|
# replace hard-code homebrew path
|
||||||
substituteInPlace ../frankenphp.go \
|
substituteInPlace ../frankenphp.go \
|
||||||
--replace "-L/opt/homebrew/opt/libiconv/lib" "-L${darwin.libiconv}/lib"
|
--replace "-L/opt/homebrew/opt/libiconv/lib" "-L${libiconv}/lib"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
preFixup = ''
|
preFixup = ''
|
||||||
|
|
|
@ -37,12 +37,12 @@ stdenv.mkDerivation rec {
|
||||||
+ lib.optionalString enableDarwinABICompat ''
|
+ lib.optionalString enableDarwinABICompat ''
|
||||||
for iconv_h_in in iconv.h.in iconv.h.build.in; do
|
for iconv_h_in in iconv.h.in iconv.h.build.in; do
|
||||||
substituteInPlace "include/$iconv_h_in" \
|
substituteInPlace "include/$iconv_h_in" \
|
||||||
--replace "#define iconv libiconv" "" \
|
--replace-fail "#define iconv libiconv" "" \
|
||||||
--replace "#define iconv_close libiconv_close" "" \
|
--replace-fail "#define iconv_close libiconv_close" "" \
|
||||||
--replace "#define iconv_open libiconv_open" "" \
|
--replace-fail "#define iconv_open libiconv_open" "" \
|
||||||
--replace "#define iconv_open_into libiconv_open_into" "" \
|
--replace-fail "#define iconv_open_into libiconv_open_into" "" \
|
||||||
--replace "#define iconvctl libiconvctl" "" \
|
--replace-fail "#define iconvctl libiconvctl" "" \
|
||||||
--replace "#define iconvlist libiconvlist" ""
|
--replace-fail "#define iconvlist libiconvlist" ""
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
, stdenv
|
, stdenv
|
||||||
, buildPythonPackage
|
, buildPythonPackage
|
||||||
, cargo
|
, cargo
|
||||||
, darwin
|
, libiconv
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, json-stream
|
, json-stream
|
||||||
, json-stream-rs-tokenizer
|
, json-stream-rs-tokenizer
|
||||||
|
@ -45,7 +45,7 @@ buildPythonPackage rec {
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = lib.optionals stdenv.isDarwin [
|
buildInputs = lib.optionals stdenv.isDarwin [
|
||||||
darwin.libiconv
|
libiconv
|
||||||
];
|
];
|
||||||
|
|
||||||
# Tests depend on json-stream, which depends on this package.
|
# Tests depend on json-stream, which depends on this package.
|
||||||
|
|
|
@ -11,7 +11,6 @@ let
|
||||||
};
|
};
|
||||||
"osx-10.12.6" = {
|
"osx-10.12.6" = {
|
||||||
xnu = "3789.70.16";
|
xnu = "3789.70.16";
|
||||||
libiconv = "50";
|
|
||||||
Libnotify = "165.20.1";
|
Libnotify = "165.20.1";
|
||||||
objc4 = "709.1";
|
objc4 = "709.1";
|
||||||
dyld = "433.5";
|
dyld = "433.5";
|
||||||
|
@ -38,7 +37,6 @@ let
|
||||||
dtrace = "168";
|
dtrace = "168";
|
||||||
xnu = "3248.60.10";
|
xnu = "3248.60.10";
|
||||||
libpthread = "138.10.4";
|
libpthread = "138.10.4";
|
||||||
libiconv = "44";
|
|
||||||
Libnotify = "150.40.1";
|
Libnotify = "150.40.1";
|
||||||
objc4 = "680";
|
objc4 = "680";
|
||||||
eap8021x = "222.40.1";
|
eap8021x = "222.40.1";
|
||||||
|
@ -272,7 +270,6 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // {
|
||||||
};
|
};
|
||||||
libclosure = applePackage "libclosure" "osx-10.11.6" "sha256-L5rQ+UBpf3B+W1U+gZKk7fXulslHsc8lxnCsplV+nr0=" {};
|
libclosure = applePackage "libclosure" "osx-10.11.6" "sha256-L5rQ+UBpf3B+W1U+gZKk7fXulslHsc8lxnCsplV+nr0=" {};
|
||||||
libdispatch = applePackage "libdispatch" "osx-10.10.5" "sha256-jfAEk0OLrJa9AIZVikIoHomd+l+4rCfc320Xh50qK5M=" {};
|
libdispatch = applePackage "libdispatch" "osx-10.10.5" "sha256-jfAEk0OLrJa9AIZVikIoHomd+l+4rCfc320Xh50qK5M=" {};
|
||||||
libiconv = applePackage "libiconv" "osx-10.12.6" "sha256-ZzPFkchK3EU95UQUVVrR0t8iilhi/VnIkjjtP6KT2oI=" {};
|
|
||||||
Libinfo = applePackage "Libinfo" "osx-10.11.6" "sha256-6F7wiwerv4nz/xXHtp1qCHSaFzZgzcRN+jbmXA5oWOQ=" {};
|
Libinfo = applePackage "Libinfo" "osx-10.11.6" "sha256-6F7wiwerv4nz/xXHtp1qCHSaFzZgzcRN+jbmXA5oWOQ=" {};
|
||||||
Libm = applePackage "Libm" "osx-10.7.4" "sha256-KjMETfT4qJm0m0Ux/F6Rq8bI4Q4UVnFx6IKbKxXd+Es=" {};
|
Libm = applePackage "Libm" "osx-10.7.4" "sha256-KjMETfT4qJm0m0Ux/F6Rq8bI4Q4UVnFx6IKbKxXd+Es=" {};
|
||||||
Libnotify = applePackage "Libnotify" "osx-10.12.6" "sha256-6wvMBxAUfiYcQtmlfYCj1d3kFmFM/jdboTd7hRvi3e4=" {};
|
Libnotify = applePackage "Libnotify" "osx-10.12.6" "sha256-6wvMBxAUfiYcQtmlfYCj1d3kFmFM/jdboTd7hRvi3e4=" {};
|
||||||
|
|
|
@ -1,38 +0,0 @@
|
||||||
{ stdenv, appleDerivation, lib
|
|
||||||
, enableStatic ? stdenv.hostPlatform.isStatic
|
|
||||||
, enableShared ? !stdenv.hostPlatform.isStatic
|
|
||||||
}:
|
|
||||||
|
|
||||||
appleDerivation {
|
|
||||||
postUnpack = "sourceRoot=$sourceRoot/libiconv";
|
|
||||||
|
|
||||||
preConfigure = lib.optionalString stdenv.hostPlatform.isiOS ''
|
|
||||||
sed -i 's/darwin\*/ios\*/g' configure libcharset/configure
|
|
||||||
'';
|
|
||||||
|
|
||||||
configureFlags = [
|
|
||||||
(lib.enableFeature enableStatic "static")
|
|
||||||
(lib.enableFeature enableShared "shared")
|
|
||||||
];
|
|
||||||
|
|
||||||
postInstall = lib.optionalString enableShared ''
|
|
||||||
mv $out/lib/libiconv.dylib $out/lib/libiconv-nocharset.dylib
|
|
||||||
${stdenv.cc.bintools.targetPrefix}install_name_tool -id $out/lib/libiconv-nocharset.dylib $out/lib/libiconv-nocharset.dylib
|
|
||||||
|
|
||||||
# re-export one useless symbol; ld will reject a dylib that only reexports other dylibs
|
|
||||||
echo 'void dont_use_this(){}' | ${stdenv.cc.bintools.targetPrefix}clang -dynamiclib -x c - -current_version 2.4.0 \
|
|
||||||
-compatibility_version 7.0.0 -current_version 7.0.0 -o $out/lib/libiconv.dylib \
|
|
||||||
-Wl,-reexport_library -Wl,$out/lib/libiconv-nocharset.dylib \
|
|
||||||
-Wl,-reexport_library -Wl,$out/lib/libcharset.dylib
|
|
||||||
'';
|
|
||||||
|
|
||||||
setupHooks = [
|
|
||||||
../../../../build-support/setup-hooks/role.bash
|
|
||||||
../../../../development/libraries/libiconv/setup-hook.sh
|
|
||||||
];
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
mainProgram = "iconv";
|
|
||||||
platforms = lib.platforms.darwin;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -27,7 +27,6 @@ file_cmds = applePackage' "file_cmds" "321.40.3" "macos-11.0.1" "0p077lnbcy8266m
|
||||||
hfs = applePackage' "hfs" "556.41.1" "macos-11.0.1" "0a0s6b12b0q07wslfifna0bj51dml9v098i4crr2m1vivnx4xj75" {};
|
hfs = applePackage' "hfs" "556.41.1" "macos-11.0.1" "0a0s6b12b0q07wslfifna0bj51dml9v098i4crr2m1vivnx4xj75" {};
|
||||||
libclosure = applePackage' "libclosure" "78" "macos-11.0.1" "0vf9n0k3m8dbprv1bf45zqg0g43bidy2i5z1v9a826bsf8lv7am7" {};
|
libclosure = applePackage' "libclosure" "78" "macos-11.0.1" "0vf9n0k3m8dbprv1bf45zqg0g43bidy2i5z1v9a826bsf8lv7am7" {};
|
||||||
libdispatch = applePackage' "libdispatch" "1271.40.12" "macos-11.0.1" "1ck5srcjapg18vqb8wl08gacs7ndc6xr067qjn3ngx39q1jdcywz" {};
|
libdispatch = applePackage' "libdispatch" "1271.40.12" "macos-11.0.1" "1ck5srcjapg18vqb8wl08gacs7ndc6xr067qjn3ngx39q1jdcywz" {};
|
||||||
libiconv = applePackage' "libiconv" "59" "macos-11.0.1" "0lwa4brdwm4lvrdnxylzsn1yph4m7csgri2zkc4xb4xiisz32pwp" {};
|
|
||||||
libmalloc = applePackage' "libmalloc" "317.40.8" "macos-11.0.1" "sha256-Tdhb0mq3w4Hwvp3xHB79Vr22hCOQK6h28HCsd7jvITI=" {};
|
libmalloc = applePackage' "libmalloc" "317.40.8" "macos-11.0.1" "sha256-Tdhb0mq3w4Hwvp3xHB79Vr22hCOQK6h28HCsd7jvITI=" {};
|
||||||
libplatform = applePackage' "libplatform" "254.40.4" "macos-11.0.1" "1qf3ri0yd8b1xjln1j1gyx7ks6k3a2jhd63blyvfby75y9s7flky" {};
|
libplatform = applePackage' "libplatform" "254.40.4" "macos-11.0.1" "1qf3ri0yd8b1xjln1j1gyx7ks6k3a2jhd63blyvfby75y9s7flky" {};
|
||||||
libpthread = applePackage' "libpthread" "454.40.3" "macos-11.0.1" "0zljbw8mpb80n1if65hhi9lkgwbgjr8vc9wvf7q1nl3mzyl35f8p" {};
|
libpthread = applePackage' "libpthread" "454.40.3" "macos-11.0.1" "0zljbw8mpb80n1if65hhi9lkgwbgjr8vc9wvf7q1nl3mzyl35f8p" {};
|
||||||
|
|
|
@ -22737,7 +22737,7 @@ with pkgs;
|
||||||
|
|
||||||
# GNU libc provides libiconv so systems with glibc don't need to
|
# GNU libc provides libiconv so systems with glibc don't need to
|
||||||
# build libiconv separately. Additionally, Apple forked/repackaged
|
# build libiconv separately. Additionally, Apple forked/repackaged
|
||||||
# libiconv so we use that instead of the vanilla version on that OS,
|
# libiconv, so build and use the upstream one with a compatible ABI,
|
||||||
# and BSDs include libiconv in libc.
|
# and BSDs include libiconv in libc.
|
||||||
#
|
#
|
||||||
# We also provide `libiconvReal`, which will always be a standalone libiconv,
|
# We also provide `libiconvReal`, which will always be a standalone libiconv,
|
||||||
|
@ -22748,7 +22748,7 @@ with pkgs;
|
||||||
then libcCross
|
then libcCross
|
||||||
else stdenv.cc.libc)
|
else stdenv.cc.libc)
|
||||||
else if stdenv.hostPlatform.isDarwin
|
else if stdenv.hostPlatform.isDarwin
|
||||||
then darwin.libiconv
|
then libiconvReal.override { enableDarwinABICompat = true; }
|
||||||
else libiconvReal;
|
else libiconvReal;
|
||||||
|
|
||||||
libcIconv = libc: let
|
libcIconv = libc: let
|
||||||
|
@ -22765,7 +22765,7 @@ with pkgs;
|
||||||
if lib.elem stdenv.hostPlatform.libc [ "glibc" "musl" ] then
|
if lib.elem stdenv.hostPlatform.libc [ "glibc" "musl" ] then
|
||||||
lib.getBin stdenv.cc.libc
|
lib.getBin stdenv.cc.libc
|
||||||
else if stdenv.hostPlatform.isDarwin then
|
else if stdenv.hostPlatform.isDarwin then
|
||||||
lib.getBin darwin.libiconv
|
lib.getBin libiconv
|
||||||
else
|
else
|
||||||
lib.getBin libiconvReal;
|
lib.getBin libiconvReal;
|
||||||
|
|
||||||
|
|
|
@ -50,4 +50,8 @@ mapAliases ({
|
||||||
### B ###
|
### B ###
|
||||||
|
|
||||||
builder = throw "'darwin.builder' has been changed and renamed to 'darwin.linux-builder'. The default ssh port is now 31022. Please update your configuration or override the port back to 22. See https://nixos.org/manual/nixpkgs/unstable/#sec-darwin-builder"; # added 2023-07-06
|
builder = throw "'darwin.builder' has been changed and renamed to 'darwin.linux-builder'. The default ssh port is now 31022. Please update your configuration or override the port back to 22. See https://nixos.org/manual/nixpkgs/unstable/#sec-darwin-builder"; # added 2023-07-06
|
||||||
|
|
||||||
|
### L ###
|
||||||
|
|
||||||
|
libiconv = pkgs.libiconv; # 2024-03-27
|
||||||
})
|
})
|
||||||
|
|
|
@ -2517,7 +2517,6 @@ self: super: with self; {
|
||||||
cryptodatahub = callPackage ../development/python-modules/cryptodatahub { };
|
cryptodatahub = callPackage ../development/python-modules/cryptodatahub { };
|
||||||
|
|
||||||
cryptography = callPackage ../development/python-modules/cryptography {
|
cryptography = callPackage ../development/python-modules/cryptography {
|
||||||
inherit (pkgs.darwin) libiconv;
|
|
||||||
inherit (pkgs.darwin.apple_sdk.frameworks) Security;
|
inherit (pkgs.darwin.apple_sdk.frameworks) Security;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -2542,7 +2541,6 @@ self: super: with self; {
|
||||||
css-html-js-minify = callPackage ../development/python-modules/css-html-js-minify { };
|
css-html-js-minify = callPackage ../development/python-modules/css-html-js-minify { };
|
||||||
|
|
||||||
css-inline = callPackage ../development/python-modules/css-inline {
|
css-inline = callPackage ../development/python-modules/css-inline {
|
||||||
inherit (pkgs.darwin) libiconv;
|
|
||||||
inherit (pkgs.darwin.apple_sdk.frameworks) Security SystemConfiguration;
|
inherit (pkgs.darwin.apple_sdk.frameworks) Security SystemConfiguration;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -11479,9 +11477,7 @@ self: super: with self; {
|
||||||
|
|
||||||
pyreaderwriterlock = callPackage ../development/python-modules/pyreaderwriterlock { };
|
pyreaderwriterlock = callPackage ../development/python-modules/pyreaderwriterlock { };
|
||||||
|
|
||||||
pyreadstat = callPackage ../development/python-modules/pyreadstat {
|
pyreadstat = callPackage ../development/python-modules/pyreadstat { };
|
||||||
inherit (pkgs.darwin) libiconv;
|
|
||||||
};
|
|
||||||
|
|
||||||
pyrealsense2 = toPythonModule (pkgs.librealsense.override {
|
pyrealsense2 = toPythonModule (pkgs.librealsense.override {
|
||||||
enablePython = true;
|
enablePython = true;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user