xorg.xorgserver: add cf-private on darwin

Undefined symbols for architecture x86_64:
      "_NSDefaultRunLoopMode", referenced from:
          _X11ApplicationMain in libXquartz.a(X11Application.o)
      "_OBJC_CLASS_$_NSArray", referenced from:
          objc-class-ref in libXquartz.a(X11Application.o)
          objc-class-ref in libXquartz.a(X11Controller.o)
          objc-class-ref in libxpbproxy.a(x-selection.o)
      "_OBJC_CLASS_$_NSData", referenced from:
          objc-class-ref in libxpbproxy.a(x-selection.o)
      "_OBJC_CLASS_$_NSDictionary", referenced from:
          objc-class-ref in libxpbproxy.a(x-selection.o)
      "_OBJC_CLASS_$_NSMutableArray", referenced from:
          objc-class-ref in libXquartz.a(X11Application.o)
          objc-class-ref in libXquartz.a(X11Controller.o)
      "_OBJC_CLASS_$_NSMutableDictionary", referenced from:
          objc-class-ref in libXquartz.a(X11Application.o)
      "_OBJC_CLASS_$_NSRunLoop", referenced from:
          objc-class-ref in libXquartz.a(X11Application.o)
      "_OBJC_CLASS_$_NSURL", referenced from:
          objc-class-ref in libXquartz.a(X11Application.o)
      "_OBJC_EHTYPE_$_NSException", referenced from:
          GCC_except_table29 in libxpbproxy.a(x-selection.o)
    ld: symbol(s) not found for architecture x86_64
This commit is contained in:
Daiderd Jordan 2018-11-06 19:00:03 +01:00
parent 2b76ad8fe7
commit ecf7c9c4b4
No known key found for this signature in database
GPG key ID: D02435D05B810C96
2 changed files with 16 additions and 10 deletions

View file

@ -2,10 +2,12 @@
stdenv, makeWrapper, lib, fetchurl, fetchpatch,
automake, autoconf, libtool, intltool, mtdev, libevdev, libinput,
python, freetype, apple_sdk, tradcpp, fontconfig,
python, freetype, tradcpp, fontconfig,
libGL, spice-protocol, zlib, libGLU, dbus, libunwind, libdrm,
mesa_noglu, udev, bootstrap_cmds, bison, flex, clangStdenv, autoreconfHook,
mcpp, epoxy, openssl, pkgconfig, llvm_6 }:
mcpp, epoxy, openssl, pkgconfig, llvm_6,
cf-private, ApplicationServices, Carbon, Cocoa, Xplugin
}:
let
inherit (stdenv) lib isDarwin;
@ -108,9 +110,9 @@ self: super:
});
libAppleWM = super.libAppleWM.overrideAttrs (attrs: {
buildInputs = attrs.buildInputs ++ [ apple_sdk.frameworks.ApplicationServices ];
buildInputs = attrs.buildInputs ++ [ ApplicationServices ];
preConfigure = ''
substituteInPlace src/Makefile.in --replace -F/System -F${apple_sdk.frameworks.ApplicationServices}
substituteInPlace src/Makefile.in --replace -F/System -F${ApplicationServices}
'';
});
@ -466,7 +468,11 @@ self: super:
sha256 = "1j1i3n5xy1wawhk95kxqdc54h34kg7xp4nnramba2q8xqfr5k117";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ dri2proto dri3proto renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ];
buildInputs = [ dri2proto dri3proto renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ]
++ stdenv.lib.optionals stdenv.isDarwin [
# Needed for NSDefaultRunLoopMode symbols.
cf-private
];
postPatch = stdenv.lib.optionalString stdenv.isLinux "sed '1i#include <malloc.h>' -i include/os.h";
meta.platforms = stdenv.lib.platforms.unix;
} else throw "unsupported xorg abiCompat ${abiCompat} for ${attrs_passed.name}";
@ -538,9 +544,7 @@ self: super:
nativeBuildInputs = attrs.nativeBuildInputs ++ [ autoreconfHook self.utilmacros self.fontutil ];
buildInputs = commonBuildInputs ++ [
bootstrap_cmds automake autoconf
apple_sdk.libs.Xplugin
apple_sdk.frameworks.Carbon
apple_sdk.frameworks.Cocoa
Xplugin Carbon Cocoa
];
propagatedBuildInputs = commonPropagatedBuildInputs ++ [
libAppleWM applewmproto
@ -582,7 +586,7 @@ self: super:
preConfigure = ''
mkdir -p $out/Applications
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -Wno-error"
substituteInPlace hw/xquartz/pbproxy/Makefile.in --replace -F/System -F${apple_sdk.frameworks.ApplicationServices}
substituteInPlace hw/xquartz/pbproxy/Makefile.in --replace -F/System -F${ApplicationServices}
'';
postInstall = ''
rm -fr $out/share/X11/xkb/compiled

View file

@ -13858,7 +13858,9 @@ with pkgs;
# have created a cycle.
xorg = recurseIntoAttrs ((lib.callPackageWith __splicedPackages ../servers/x11/xorg {
}).overrideScope' (lib.callPackageWith __splicedPackages ../servers/x11/xorg/overrides.nix {
inherit (darwin) apple_sdk;
inherit (darwin) cf-private;
inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa;
inherit (darwin.apple_sdk.libs) Xplugin;
bootstrap_cmds = if stdenv.isDarwin then darwin.bootstrap_cmds else null;
python = python2; # Incompatible with Python 3x
udev = if stdenv.isLinux then udev else null;