diff options
author | Daiderd Jordan <daiderd@gmail.com> | 2020-02-06 14:15:35 +0100 |
---|---|---|
committer | Daiderd Jordan <daiderd@gmail.com> | 2020-02-06 14:15:35 +0100 |
commit | 3987ea9a9d4464869ac6b8e8519a386190b6b68d (patch) | |
tree | 97bb839f5443e5594c79ff3859caa281fca4d392 /pkgs/applications/video | |
parent | f8a38f67bdec6de2978e1215a807035dc6960d4b (diff) | |
download | nixpkgs-3987ea9a9d4464869ac6b8e8519a386190b6b68d.tar nixpkgs-3987ea9a9d4464869ac6b8e8519a386190b6b68d.tar.gz nixpkgs-3987ea9a9d4464869ac6b8e8519a386190b6b68d.tar.bz2 nixpkgs-3987ea9a9d4464869ac6b8e8519a386190b6b68d.tar.lz nixpkgs-3987ea9a9d4464869ac6b8e8519a386190b6b68d.tar.xz nixpkgs-3987ea9a9d4464869ac6b8e8519a386190b6b68d.tar.zst nixpkgs-3987ea9a9d4464869ac6b8e8519a386190b6b68d.zip |
mpv: add flag for swift on darwin
While we currently don't have a pure swift build on macOS it's possible to build mpv using the swift compiler from CLT. eg. self: super: let CommandLineTools = "/Library/Developer/CommandLineTools"; in { swift = super.stdenv.mkDerivation { name = "swift-CommandLineTools-0.0.0"; phases = [ "installPhase" "fixupPhase" ]; propagatedBuildInputs = [ self.darwin.DarwinTools ]; installPhase = '' mkdir -p $out/bin $out/lib ln -s ${CommandLineTools}/usr/bin/swift $out/bin ln -s ${CommandLineTools}/usr/lib/swift $out/lib ln -s ${CommandLineTools}/SDKs $out ''; setupHook = builtins.toFile "hook" '' addCommandLineTools() { echo >&2 echo "WARNING: this is impure and unreliable, make sure the CommandLineTools are installed!" >&2 echo " $ xcode-select --install" >&2 echo >&2 [ -d ${CommandLineTools} ] export NIX_LDFLAGS+=" -L@out@/lib/swift/macosx" export SWIFT=swift export SWIFT_LIB_DYNAMIC=@out@/lib/swift/macosx export MACOS_SDK_VERSION=$(sw_vers -productVersion | awk -F. '{print $1 "." $2}') export MACOS_SDK=@out@/SDKs/MacOSX$MACOS_SDK_VERSION.sdk } prePhases+=" addCommandLineTools" ''; __impureHostDeps = [ CommandLineTools ]; }; mpv = super.mpv.override { swiftSupport = true; }; }
Diffstat (limited to 'pkgs/applications/video')
-rw-r--r-- | pkgs/applications/video/mpv/default.nix | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix index f7ac5ef58cd..052e190a3e1 100644 --- a/pkgs/applications/video/mpv/default.nix +++ b/pkgs/applications/video/mpv/default.nix @@ -38,11 +38,12 @@ , libpngSupport ? true, libpng ? null , pulseSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio ? null , rubberbandSupport ? stdenv.isLinux, rubberband ? null -, screenSaverSupport ? true, libXScrnSaver ? null , sambaSupport ? stdenv.isLinux, samba ? null +, screenSaverSupport ? true, libXScrnSaver ? null , sdl2Support ? true, SDL2 ? null , sndioSupport ? true, sndio ? null , speexSupport ? true, speex ? null +, swiftSupport ? false, swift ? null , theoraSupport ? true, libtheora ? null , vaapiSupport ? stdenv.isLinux, libva ? null , vdpauSupport ? true, libvdpau ? null @@ -119,7 +120,6 @@ in stdenv.mkDerivation rec { "--disable-libmpv-static" "--disable-static-build" "--disable-build-date" # Purity - "--disable-macos-cocoa-cb" # Disable whilst Swift isn't supported (enableFeature archiveSupport "libarchive") (enableFeature cddaSupport "cdda") (enableFeature dvdnavSupport "dvdnav") @@ -130,11 +130,13 @@ in stdenv.mkDerivation rec { (enableFeature vaapiSupport "vaapi") (enableFeature waylandSupport "wayland") (enableFeature stdenv.isLinux "dvbin") - ]; + ] # Disable whilst Swift isn't supported + ++ stdenv.lib.optional (!swiftSupport) "--disable-macos-cocoa-cb"; nativeBuildInputs = [ addOpenGLRunpath docutils makeWrapper perl pkgconfig python3 wafHook which - ]; + ] + ++ optional swiftSupport swift; buildInputs = [ ffmpeg_4 freetype libass libpthreadstubs @@ -172,7 +174,7 @@ in stdenv.mkDerivation rec { ++ optionals x11Support [ libX11 libXext libGLU libGL libXxf86vm libXrandr ] ++ optionals vulkanSupport [ libplacebo shaderc vulkan-headers vulkan-loader ] ++ optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ - CoreFoundation Cocoa CoreAudio + CoreFoundation Cocoa CoreAudio MediaPlayer ]); enableParallelBuilding = true; |