Commit Graph

101 Commits

Author SHA1 Message Date
Jan Tojnar
b8c07facaa Fix eval with nix-env -qas
At least on NixOS, it fails to evaluate as follows:

	$ nix-env -qaPs -f .
	error: attribute '__propagatedImpureHostDeps' missing
2021-11-17 16:28:55 +01:00
Andrew Childs
55dcd99859 root: use pure CoreSymbolication on Darwin
The current build works by linking against CoreSymbolication in
/System/Library/PrivateFrameworks. This is impure and doesn't work in
newer versions of macOS.

See https://github.com/NixOS/nixpkgs/issues/128576
2021-06-29 11:00:05 +09:00
Andrew Childs
257cb1c8e8 print-reexports: rehome, tbd4 support, cross compilation 2021-05-17 00:27:01 +09:00
Calum MacRae
2c82907da4
apple-sdk: generate SkyLight framework outputs 2021-04-16 17:19:17 +01:00
Calum MacRae
914c604a01
apple-sdk: fix PrivateFrameworks symlinks
With the absence of these symlinks, private frameworks aren't exposed
to the linker.
2021-04-16 17:19:17 +01:00
Andrew Childs
5268bf50d2 apple_sdk.libs.sandbox: init 2021-03-20 11:32:32 -04:00
Monson Shao
2467f5e4d2
darwin.apple-sdk: drop appleSdkVersion
In fact no one is using appleSdkVersion, and stdenv is decoupled with sdk.
2021-01-21 00:26:16 +08:00
Ben Siraphob
16d91ee628 pkgs/os-specific: stdenv.lib -> lib 2021-01-17 23:26:08 +07:00
Profpatsch
4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00
Sandro Jäckel
848d1986b8
apple_sdk.frameworks.AVFoundation: Add missing MediaToolbox
This fixes:
/nix/store/7ckpydmlah3j86py3c4f27p0fbkxyzfi-apple-framework-AVFoundation/Library/Frameworks/AVFoundation.framework/Headers/AVAudioMix.h:15:9: fatal error: 'MediaToolbox/MTAudioProcessingTap.h' file not found
2020-12-09 20:10:59 +01:00
Sandro Jäckel
eb1d742813
apple_sdk.frameworks.AVFoundation: Add missing CoreMedia
This fixes apple-framework-AVFoundation/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h:17:9: fatal error: 'CoreMedia/CMTime.h' file not found
2020-12-09 20:10:59 +01:00
Andrew Childs
f2b81a021e darwin/print-reexports: add an overview comment 2020-11-12 16:57:19 +09:00
Andrew Childs
7e49fb6592 darwin/apple-sdk: explain why Kernel.framework has no .tbd file 2020-11-12 16:57:19 +09:00
Andrew Childs
3456ef6f30 darwin/apple-sdk: use darwin stubs 2020-11-12 00:23:09 +09:00
Andrew Childs
fd33052999 darwin/print-reexports: nixpkgs-specific utility to inspect .tbd files
Used during bootstrap to check that re-exported libraries are not
dangling.
2020-11-12 00:23:09 +09:00
Daiderd Jordan
3987ea9a9d
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; };
    }
2020-02-06 14:15:35 +01:00
Daiderd Jordan
6567823996
stdenv: introduce appleSdkVersion and macosVersionMin 2020-01-31 21:52:11 +01:00
hlolli
78b34b5e5b
graalvm8: 19.1.1 -> 19.2.1
- - nixpkgs now with full darwin support
2020-01-18 16:43:03 +01:00
Frederik Rietdijk
bc18cc72dd
Merge pull request #77610 from LnL7/darwin-stdenv-python3
darwin-stdenv: bootstrap with python3
2020-01-15 09:24:57 +01:00
Daiderd Jordan
73db5d8c38
darwin.apple_sdk: python2 -> python3 2020-01-13 11:13:57 +01:00
squalus
9314327dee keepassxc: fix darwin build
- Removed the unnecessary libmicrohttpd dependency, which doesn't
  build on macOS. KeepassXC removed this dependency in 2.1.2
- Fixed a compiler error related to the Touch ID feature by adding a
  dependency on the LocalAuthentication framework
2020-01-08 16:44:14 +01:00
Robin Gloster
edfdd0f3e4
darwin: use dontUnpack instead of phases 2019-12-31 01:24:10 +01:00
Denis Redozubov
7233afc886 apple_sdk: broken link update (#73984) 2019-11-27 14:17:43 -05:00
John Ericson
f1481f2c90 apple-sdk setup hooks: NIX_CFLAGS_COMPILE may be undefined 2019-11-08 13:28:59 -05:00
John Ericson
beda0365a6 darwin private frameworks setup hook: NIX_CFLAGS_COMPILE may be undefined 2019-11-08 13:24:20 -05:00
volth
46420bbaa3 treewide: name -> pname (easy cases) (#66585)
treewide replacement of

stdenv.mkDerivation rec {
  name = "*-${version}";
  version = "*";

to pname
2019-08-15 13:41:18 +01:00
Daiderd Jordan
8ea702a484
darwin-frameworks: add import CoreFoundation to CoreServices 2019-07-03 22:20:09 +02:00
Daiderd Jordan
73d9cac377
darwin-frameworks: replace cf-private and move it's setup-hook
The only remaining use-case for cf-private are symbols that are not
available in the opensource build.  This generally solved the problem
because of it's setup-hook.
2019-07-03 22:20:09 +02:00
Daiderd Jordan
c2b76fa13c
darwin-frameworks: remove CF
CoreFoundation is included by the stdenv, moving the decision of what
version should be used there makes it possible to override it entirely
rather then prepending flags like cf-private does which can be
unreliable.
2019-07-03 22:20:04 +02:00
Matthew Bauer
4e22fe4f63 apple-sdk: add MetalKit 2019-06-23 18:28:36 -04:00
Matthew Bauer
d1f988ca3c darwin: correct framework dependency
AudioUnit depends on AudioToolbox now, so use that to keep
compatibility.
2019-04-26 21:55:03 -04:00
Matthew Bauer
43cda1b854 apple-sdk: add Metal framework for QuartzCore 2019-04-26 21:54:56 -04:00
Matthew Bauer
e3a9b1ea23 apple-sdk: Foundation needs cf-private 2019-04-26 21:54:54 -04:00
Matthew Bauer
4903e825fa apple-sdk: update frameworks location
Some have been removed like:

- DrawSprocket
- DVComponentGlue
2019-04-26 21:54:53 -04:00
Matthew Bauer
d69cc779b5 Revert "Revert "darwin 10.12 commits""
This reverts commit 8505e710e7.
2019-04-20 23:17:04 -04:00
Daiderd Jordan
b4ea47749a
darwin: remove references to Ubiquity.framework
It was removed on recent versions of macOS and these entries break
sandboxing if they don't exist.

	Aborted: while setting up the build environment: getting attributes of path '/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity': No such file or directory
2019-02-17 15:30:30 +01:00
Daiderd Jordan
f2fadc0e91
darwin: don't include cf-private in framework dependencies
Using cf-private can cause problems, it's better to include it
explicitly in places where it's actually required.
2018-11-05 00:24:04 +01:00
Matthew Bauer
c7ab795274 darwin.security_tool: disallow requiring sdk
As requested by @domenkozar
2018-07-04 15:08:35 -04:00
Matthew Bauer
d7591c44f0 apple_sdk.frameworks.Ruby: remove
This was broken & apparently unused.
2018-07-04 15:01:00 -04:00
Matthew Bauer
db414a2f5e xpc: copy instead of linking to sdk
This prevents the apple sdk from coming into security tool

Fixes #42836
2018-07-02 17:51:38 -04:00
Matthew Bauer
06fa867498 apple_sdk: use multiple outputs 2018-06-09 00:05:38 -04:00
Frederik Rietdijk
23741692fa Merge master into staging 2018-04-04 19:36:39 +02:00
Daiderd Jordan
adf11dcc01
darwin-frameworks: add hook for private frameworks to CoreMIDI
Some parts of CoreMIDI depend on private frameworks, this enables eg.
adding -framework MultitouchSupport to a build.
2018-03-17 14:02:51 +01:00
Daiderd Jordan
9f516c23c5
darwin-frameworks: cleanup 2018-03-07 20:03:07 +01:00
John Ericson
046f091e0d treewide: Don't use envHook anymore
This commits needs a MAJOR audit as I oftentimes just guessed which of
`$hostOffset`, `$targetOffset`, or a fixed offset should be used.
2017-12-30 22:04:22 -05:00
Daiderd Jordan
dadcca3f40 frameworks-coremedia: add impure dependnecy on CoreImage
Fixes ffmpeg sandbox build on darwin
2017-11-14 21:51:40 -05:00
Dan Peebles
48a34be41c Support frameworks properly in sandbox 2017-11-08 22:06:52 -05:00
Daiderd Jordan
bb02b800a2
darwin-frameworks: add impure version of CoreFoundation 2017-09-23 22:29:43 +02:00
Jörg Thalheim
419869269d Merge pull request #28635 from ThomasMader/ldc
Init ldc at 1.3.0, fix bootstrap dmd build, fix dtools test, run dmd-testsuite in checkPhase and fix Foundation framework
2017-09-15 10:32:10 +01:00
Thomas Mader
2a0f1ecdc8 apple-sdk: Move cf-private first in list, otherwise the build fails because CoreFoundation/CFAttributedString.h could not be found.
The problem appeared when building ldc on Mac OSX. See also 13778.
2017-09-02 08:35:07 +02:00