Merge commit '2d464f75ed46869b5942c4b479772a0367b30608' into master.upstream

This is a partial commit from staging in an attempt to make merges
smaller.
This commit is contained in:
William A. Kennington III
2015-09-23 14:35:23 -07:00
32 changed files with 3689 additions and 257 deletions

View File

@@ -120,7 +120,7 @@ in rec {
__propagatedImpureHostDeps = [ "/usr/lib/libXplugin.1.dylib" ];
propagatedBuildInputs = with frameworks; [
OpenGL ApplicationServices Carbon IOKit CoreFoundation CoreGraphics CoreServices CoreText
OpenGL ApplicationServices Carbon IOKit CF CoreGraphics CoreServices CoreText
];
installPhase = ''
@@ -144,9 +144,7 @@ in rec {
};
};
frameworks = (stdenv.lib.mapAttrs framework (import ./frameworks.nix { inherit frameworks libs; })) // {
CoreFoundation = CF;
};
frameworks = stdenv.lib.mapAttrs framework (import ./frameworks.nix { inherit frameworks libs CF; });
inherit sdk;
}

View File

@@ -2,76 +2,76 @@
# Epic weird knot-tying happening here.
# TODO: clean up the process for generating this and include it
{ frameworks, libs }:
{ frameworks, libs, CF }:
with frameworks; with libs; {
AGL = [ Carbon OpenGL ];
AVFoundation = [ ApplicationServices CoreGraphics ];
AVKit = [];
Accounts = [];
AddressBook = [ Carbon CoreFoundation ];
AddressBook = [ Carbon CF ];
AppKit = [ AudioToolbox QuartzCore ];
AppKitScripting = [];
AppleScriptKit = [];
AppleScriptObjC = [];
AppleShareClientCore = [ CoreServices ];
AudioToolbox = [ AudioUnit CoreAudio CoreFoundation CoreMIDI ];
AudioUnit = [ Carbon CoreAudio CoreFoundation ];
AudioToolbox = [ AudioUnit CoreAudio CF CoreMIDI ];
AudioUnit = [ Carbon CoreAudio CF ];
AudioVideoBridging = [ Foundation ];
Automator = [];
CFNetwork = [ CoreFoundation ];
CFNetwork = [ CF ];
CalendarStore = [];
Cocoa = [];
Collaboration = [];
CoreAudio = [ CoreFoundation IOKit ];
CoreAudio = [ CF IOKit ];
CoreAudioKit = [ AudioUnit ];
CoreData = [];
CoreGraphics = [ Accelerate CoreFoundation IOKit IOSurface SystemConfiguration ];
CoreGraphics = [ Accelerate CF IOKit IOSurface SystemConfiguration ];
CoreLocation = [];
CoreMIDI = [ CoreFoundation ];
CoreMIDI = [ CF ];
CoreMIDIServer = [];
CoreMedia = [ ApplicationServices AudioToolbox CoreAudio CoreFoundation CoreGraphics CoreVideo ];
CoreMediaIO = [ CoreFoundation CoreMedia ];
CoreText = [ CoreFoundation CoreGraphics ];
CoreVideo = [ ApplicationServices CoreFoundation CoreGraphics IOSurface OpenGL ];
CoreMedia = [ ApplicationServices AudioToolbox CoreAudio CF CoreGraphics CoreVideo ];
CoreMediaIO = [ CF CoreMedia ];
CoreText = [ CF CoreGraphics ];
CoreVideo = [ ApplicationServices CF CoreGraphics IOSurface OpenGL ];
CoreWLAN = [ SecurityFoundation ];
DVComponentGlue = [ CoreServices QuickTime ];
DVDPlayback = [];
DirectoryService = [ CoreFoundation ];
DiscRecording = [ CoreFoundation CoreServices IOKit ];
DirectoryService = [ CF ];
DiscRecording = [ CF CoreServices IOKit ];
DiscRecordingUI = [];
DiskArbitration = [ CoreFoundation IOKit ];
DiskArbitration = [ CF IOKit ];
DrawSprocket = [ Carbon ];
EventKit = [];
ExceptionHandling = [];
FWAUserLib = [];
ForceFeedback = [ CoreFoundation IOKit ];
Foundation = [ CoreFoundation Security ApplicationServices AppKit SystemConfiguration ];
GLKit = [ CoreFoundation ];
ForceFeedback = [ CF IOKit ];
Foundation = [ CF Security ApplicationServices AppKit SystemConfiguration ];
GLKit = [ CF ];
GLUT = [ GL OpenGL ];
GSS = [];
GameController = [];
GameKit = [ Foundation ];
ICADevices = [ Carbon CoreFoundation IOBluetooth ];
ICADevices = [ Carbon CF IOBluetooth ];
IMServicePlugIn = [];
IOBluetoothUI = [ IOBluetooth ];
IOKit = [ CoreFoundation ];
IOSurface = [ CoreFoundation IOKit xpc ];
IOKit = [ CF ];
IOSurface = [ CF IOKit xpc ];
ImageCaptureCore = [];
ImageIO = [ CoreFoundation CoreGraphics ];
ImageIO = [ CF CoreGraphics ];
InputMethodKit = [ Carbon ];
InstallerPlugins = [];
InstantMessage = [];
JavaFrameEmbedding = [];
JavaScriptCore = [ CoreFoundation ];
JavaScriptCore = [ CF ];
Kerberos = [];
Kernel = [ CoreFoundation IOKit ];
Kernel = [ CF IOKit ];
LDAP = [];
LatentSemanticMapping = [ Carbon CoreFoundation ];
LatentSemanticMapping = [ Carbon CF ];
MapKit = [];
MediaAccessibility = [ CoreFoundation CoreGraphics CoreText QuartzCore ];
MediaToolbox = [ AudioToolbox CoreFoundation CoreMedia ];
NetFS = [ CoreFoundation ];
MediaAccessibility = [ CF CoreGraphics CoreText QuartzCore ];
MediaToolbox = [ AudioToolbox CF CoreMedia ];
NetFS = [ CF ];
OSAKit = [ Carbon ];
OpenAL = [];
OpenCL = [ IOSurface OpenGL ];
@@ -81,7 +81,7 @@ with frameworks; with libs; {
PubSub = [];
Python = [ ApplicationServices ];
QTKit = [ QuickTime ];
QuickLook = [ ApplicationServices CoreFoundation ];
QuickLook = [ ApplicationServices CF ];
QuickTime = [ ApplicationServices AudioUnit Carbon CoreAudio CoreServices OpenGL QuartzCore ];
Ruby = [];
RubyCocoa = [];
@@ -89,31 +89,31 @@ with frameworks; with libs; {
ScreenSaver = [];
Scripting = [];
ScriptingBridge = [];
Security = [ CoreFoundation IOKit ];
Security = [ CF IOKit ];
SecurityFoundation = [];
SecurityInterface = [ Security ];
ServiceManagement = [ CoreFoundation Security ];
ServiceManagement = [ CF Security ];
Social = [];
SpriteKit = [];
StoreKit = [];
SyncServices = [];
SystemConfiguration = [ CoreFoundation Security ];
SystemConfiguration = [ CF Security ];
TWAIN = [ Carbon ];
Tcl = [];
Tk = [ ApplicationServices Carbon X11 ];
VideoDecodeAcceleration = [ CoreFoundation CoreVideo ];
VideoToolbox = [ CoreFoundation CoreMedia CoreVideo ];
VideoDecodeAcceleration = [ CF CoreVideo ];
VideoToolbox = [ CF CoreMedia CoreVideo ];
WebKit = [ ApplicationServices Carbon JavaScriptCore OpenGL X11 ];
# Umbrellas
Accelerate = [ CoreWLAN IOBluetooth ];
ApplicationServices = [ CoreFoundation CoreServices CoreText ImageIO ];
Carbon = [ ApplicationServices CoreFoundation CoreServices IOKit Security QuartzCore ];
ApplicationServices = [ CF CoreServices CoreText ImageIO ];
Carbon = [ ApplicationServices CF CoreServices IOKit Security QuartzCore ];
CoreBluetooth = [];
CoreServices = [ CFNetwork CoreAudio CoreData CoreFoundation DiskArbitration Security NetFS OpenDirectory ServiceManagement ];
CoreServices = [ CFNetwork CoreAudio CoreData CF DiskArbitration Security NetFS OpenDirectory ServiceManagement ];
IOBluetooth = [ IOKit ];
JavaVM = [];
OpenDirectory = [];
Quartz = [ QuickLook ];
QuartzCore = [ ApplicationServices CoreFoundation CoreVideo OpenCL ];
QuartzCore = [ ApplicationServices CF CoreVideo OpenCL ];
}

View File

@@ -6,7 +6,6 @@ rec {
];
IOKit = [
"/System/Library/Frameworks/IOKit.framework"
"/usr/lib/libenergytrace.dylib"
];
DiskArbitration = [
"/System/Library/Frameworks/DiskArbitration.framework"
@@ -31,8 +30,6 @@ rec {
"/System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore"
"/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC"
"/System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling"
"/usr/lib/libChineseTokenizer.dylib"
"/usr/lib/libmarisa.dylib"
"/usr/lib/libmecabra.dylib"
"/usr/lib/libcmph.dylib"
"/usr/lib/libiconv.2.dylib"

View File

@@ -47,8 +47,9 @@ appleDerivation {
'';
postInstall = ''
# gross! convince apple to release this as part of CF
cp /System/Library/Frameworks/CoreFoundation.framework/Headers/CFAttributedString.h "$out/System/Library/Frameworks/CoreFoundation.framework/Headers"
# gross! convince apple to release these as part of CF
cp /System/Library/Frameworks/CoreFoundation.framework/Headers/{CFAttributedString,CFNotificationCenter}.h \
"$out/System/Library/Frameworks/CoreFoundation.framework/Headers"
mv $out/System/* $out
rmdir $out/System

View File

@@ -1,4 +1,4 @@
{ stdenv, fetchurl, autoconf, automake, libtool
{ stdenv, fetchurl, autoconf, automake, libtool_2
, llvm, libcxx, libcxxabi, clang, openssl, libuuid
, libobjc ? null
}:
@@ -18,7 +18,7 @@ let
sha256 = "01f31ijpnplbiyp7ldwzy8vbkn3j3m56n5blsvsav5nlp4lp2g71";
};
buildInputs = [ autoconf automake libtool openssl libuuid ] ++
buildInputs = [ autoconf automake libtool_2 openssl libuuid ] ++
# Only need llvm and clang if the stdenv isn't already clang-based (TODO: just make a stdenv.cc.isClang)
stdenv.lib.optionals (!stdenv.isDarwin) [ llvm clang ] ++
stdenv.lib.optionals stdenv.isDarwin [ libcxxabi libobjc ];