jackaudio: reenable on darwin
Apply patch to fix darwin build.
This commit is contained in:
parent
c82bb3133c
commit
6e7cc807ff
3 changed files with 13 additions and 63 deletions
|
@ -1,49 +0,0 @@
|
|||
diff --git a/common/Jackdmp.cpp b/common/Jackdmp.cpp
|
||||
index 7eea281..4b8d75d 100644
|
||||
--- a/common/Jackdmp.cpp
|
||||
+++ b/common/Jackdmp.cpp
|
||||
@@ -50,43 +50,11 @@ are "hard-coded" in the source. A much better approach would be to use the contr
|
||||
- get available drivers and their possible parameters, then prepare to parse them.
|
||||
*/
|
||||
|
||||
-#ifdef __APPLE__
|
||||
-#include <CoreFoundation/CFNotificationCenter.h>
|
||||
-#include <CoreFoundation/CoreFoundation.h>
|
||||
-
|
||||
-static void notify_server_start(const char* server_name)
|
||||
-{
|
||||
- // Send notification to be used in the JackRouter plugin
|
||||
- CFStringRef ref = CFStringCreateWithCString(NULL, server_name, kCFStringEncodingMacRoman);
|
||||
- CFNotificationCenterPostNotificationWithOptions(CFNotificationCenterGetDistributedCenter(),
|
||||
- CFSTR("com.grame.jackserver.start"),
|
||||
- ref,
|
||||
- NULL,
|
||||
- kCFNotificationDeliverImmediately | kCFNotificationPostToAllSessions);
|
||||
- CFRelease(ref);
|
||||
-}
|
||||
-
|
||||
-static void notify_server_stop(const char* server_name)
|
||||
-{
|
||||
- // Send notification to be used in the JackRouter plugin
|
||||
- CFStringRef ref1 = CFStringCreateWithCString(NULL, server_name, kCFStringEncodingMacRoman);
|
||||
- CFNotificationCenterPostNotificationWithOptions(CFNotificationCenterGetDistributedCenter(),
|
||||
- CFSTR("com.grame.jackserver.stop"),
|
||||
- ref1,
|
||||
- NULL,
|
||||
- kCFNotificationDeliverImmediately | kCFNotificationPostToAllSessions);
|
||||
- CFRelease(ref1);
|
||||
-}
|
||||
-
|
||||
-#else
|
||||
-
|
||||
static void notify_server_start(const char* server_name)
|
||||
{}
|
||||
static void notify_server_stop(const char* server_name)
|
||||
{}
|
||||
|
||||
-#endif
|
||||
-
|
||||
static void copyright(FILE* file)
|
||||
{
|
||||
fprintf(file, "jackdmp " VERSION "\n"
|
||||
|
|
@ -1,8 +1,9 @@
|
|||
{ stdenv, fetchFromGitHub, pkgconfig, python2Packages, makeWrapper
|
||||
, fetchpatch
|
||||
, bash, libsamplerate, libsndfile, readline, eigen, celt
|
||||
, wafHook
|
||||
, wafHook, aften
|
||||
# Darwin Dependencies
|
||||
, aften, AudioToolbox, CoreAudio, CoreFoundation
|
||||
, AudioUnit, CoreAudio, cf-private, libobjc, Accelerate
|
||||
|
||||
# Optional Dependencies
|
||||
, dbus ? null, libffado ? null, alsaLib ? null
|
||||
|
@ -39,22 +40,20 @@ stdenv.mkDerivation rec {
|
|||
nativeBuildInputs = [ pkgconfig python makeWrapper wafHook ];
|
||||
buildInputs = [ libsamplerate libsndfile readline eigen celt
|
||||
optDbus optPythonDBus optLibffado optAlsaLib optLibopus
|
||||
] ++ optionals stdenv.isDarwin [ aften AudioToolbox CoreAudio CoreFoundation ];
|
||||
|
||||
# CoreFoundation 10.10 doesn't include CFNotificationCenter.h yet.
|
||||
patches = optionals stdenv.isDarwin [ ./darwin-cf.patch ];
|
||||
aften
|
||||
] ++ optionals stdenv.isDarwin [
|
||||
AudioUnit CoreAudio Accelerate cf-private libobjc
|
||||
];
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace svnversion_regenerate.sh \
|
||||
--replace /bin/bash ${bash}/bin/bash
|
||||
'';
|
||||
|
||||
# It looks like one of the frameworks depends on <CoreFoundation/CFAttributedString.h>
|
||||
# since frameworks are impure we also have to use the impure CoreFoundation here.
|
||||
# FIXME: remove when CoreFoundation is updated to 10.11
|
||||
preConfigure = optionalString stdenv.isDarwin ''
|
||||
export NIX_CFLAGS_COMPILE="-F${CoreFoundation}/Library/Frameworks $NIX_CFLAGS_COMPILE"
|
||||
'';
|
||||
patches = [ (fetchpatch {
|
||||
url = "https://github.com/jackaudio/jack2/commit/d851fada460d42508a6f82b19867f63853062583.patch";
|
||||
sha256 = "1iwwxjzvgrj7dz3s8alzlhcgmcarjcbkrgvsmy6kafw21pyyw7hp";
|
||||
}) ];
|
||||
|
||||
wafConfigureFlags = [
|
||||
"--classic"
|
||||
|
@ -76,6 +75,5 @@ stdenv.mkDerivation rec {
|
|||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ goibhniu ];
|
||||
badPlatforms = [ "x86_64-darwin" ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -22992,7 +22992,8 @@ in
|
|||
|
||||
jack2 = callPackage ../misc/jackaudio {
|
||||
libopus = libopus.override { withCustomModes = true; };
|
||||
inherit (darwin.apple_sdk.frameworks) AudioToolbox CoreAudio CoreFoundation;
|
||||
inherit (darwin.apple_sdk.frameworks) AudioUnit CoreAudio Accelerate;
|
||||
inherit (darwin) cf-private libobjc;
|
||||
};
|
||||
libjack2 = jack2.override { prefix = "lib"; };
|
||||
jack2Full = jack2; # TODO: move to aliases.nix
|
||||
|
|
Loading…
Reference in a new issue