Commit Graph

448 Commits

Author SHA1 Message Date
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
907d7518d8 darwin.libsecurity: switch to multiple outputs 2018-07-02 17:51:38 -04:00
Matthew Bauer
526103a82d darwin: fix syntax in makeFlagsArray
the double ’ should only be needed when using the braces. Otherwise
this will mess up some syntax highlighting, unfortunately, including nix-mode.
2018-07-02 17:51:38 -04:00
Matthew Bauer
e686bd2771 xcode: default to 8.2
There is some weird issue with 9.4 that needs to be resolved. 8.2 is
used by iOS anyway so that makes it easier.
2018-06-28 10:24:09 -04:00
Matthew Justin Bauer
fe9f4abec2
libsecurity_generic: fix apple_sdk lookup
apple_sdk is now multiple output.
2018-06-26 13:25:06 -04:00
Matthew Justin Bauer
e4d9ce9061
Merge pull request #42599 from obsidiansystems/xcodever-in-system
xcode: add xcodePlatform to system
2018-06-26 10:56:57 -04:00
Matthew Bauer
0bfffbc5e1 xcode: add xcodePlatform to system
This give us a little bit more control over what target we are using.
Eventually we can target other things like WatchOS or MacOS.
2018-06-25 22:18:23 -04:00
Matthew Justin Bauer
c16eb04425
Merge pull request #42399 from obsidiansystems/xcodever-in-system
xcode: add xcodeVer to system
2018-06-25 21:59:01 -04:00
Matthew Bauer
9b0b31d981 xcode: add xcodeVer to system
This version number controls which xcode version to use when building
cross to iOS.
2018-06-25 21:57:24 -04:00
Matthew Bauer
73e2f60837 libiconv: add "enableShared" option
When false, shared libraries will be disabled.

also adds patch to *really* disable shared libiconv.
2018-06-25 17:10:11 -04:00
Frederik Rietdijk
48110c1295 Merge staging into master 2018-06-22 13:20:37 +02:00
Matthew Bauer
3da395fd96 xcode: add 9.4 sdk
This is the newest sdk. I have skipped 9.3 for now but someone can
certainly add it if they need it for some reason.

Also I added a generic "xcode" that will always point to the newest
xcode that is available in Nixpkgs.
2018-06-21 13:24:52 -04:00
Frederik Rietdijk
ae215d1ba8 Merge master into staging 2018-06-10 10:10:42 +02:00
Florian Klink
dcdeaa1a24 darwin.iproute2mac: wrap network_cmds 2018-06-09 23:12:16 +02:00
Florian Klink
857ab32cca darwin.iproute2mac: init at 1.2.1 2018-06-09 22:47:21 +02:00
Matthew Bauer
06fa867498 apple_sdk: use multiple outputs 2018-06-09 00:05:38 -04:00
Matthew Justin Bauer
a1b5b1a660
xcode: update Xcode URL
Apple has changed this location. Now the url should look like:

https://developer.apple.com/services-account/download?path=/Developer_Tools/Xcode_8.2/Xcode_8.2.xip
2018-06-08 10:27:40 -04:00
Matthew Justin Bauer
3ebcac8d85
darwin.libiconv: use static library
This is necessary to get stuff into the Apple App Store for iOS. Apple does not really like using dynamic libraries in iOS. Also the libcharset thing is apparently a "private" symbol.

See https://github.com/reflex-frp/reflex-platform/pull/307 for more details.

See 3dee596ed1 (diff-261d74054a31954b7c6175e2e7e28356) for discussion
2018-06-07 10:53:02 -04:00
Matthew Bauer
050557ef8a PowerManagement: init at 572.50.1 2018-05-31 12:36:23 -04:00
Matthew Bauer
279fd72b33 darwin.ICU: fix cctools 2018-05-31 12:34:15 -04:00
Alexandre Esteves
129dfedaa9 xcode: remove extra quote from message (#41286) 2018-05-30 23:10:48 +02:00
Jan Malakhovski
ad35019501 Merge branch 'master' into staging
Fixed conflicts:
- lib/systems/for-meta.nix: in favor of staging
- pkgs/os-specific/darwin/xcode/default.nix: in favor of master
2018-05-26 00:20:17 +00:00
Alexandre Esteves
3ab9caa3fa
Use requireFile for impure Xcode dependency 2018-05-23 20:32:15 +01:00
Matthew Justin Bauer
89e196d971
libiconv: fix setup hook
Fixes issue from PR #40139.
2018-05-23 13:09:45 -05:00
John Ericson
18742471af Merge remote-tracking branch 'upstream/master' into staging
Use newer vagrant from master
2018-05-23 09:40:37 -04:00
John Ericson
266adab32d cctools: Remove a bunch of stuff no longer needed for Linux 2018-05-23 09:22:19 -04:00
Shea Levy
6da6accd30
treewide: Remove uses of builtins.toPath.
toPath has confusing semantics and is never necessary; it can always
either just be omitted or replaced by pre-concatenating `/.`. It has
been marked as "!!! obsolete?" for more than 10 years in a C++
comment, hopefully removing it will let us properly deprecate and,
eventually, remove it.
2018-05-22 16:42:02 -04:00
Vladimír Čunát
392e6de7d0
Merge branch 'master' into staging 2018-05-20 13:20:53 +02:00
Eric Bailey
84919cd3ef
m-cli: init at 0.2.5 2018-05-19 13:52:42 -05:00
John Ericson
ddbe9191ef Merge remote-tracking branch 'upstream/master' into staging
Keep the dontCheck because the test suite fails, get rid of the LDFLAGS
hack because we don't need it!
2018-05-16 15:16:08 -04:00
John Ericson
4956767f53 Make libiconv build for iOS with prefixed tools 2018-05-16 14:25:54 -04:00
Daiderd Jordan
f14841f3ce
Revert "darwin.libSystem: multiple outputs"
Broke the stdenv.

This reverts commit 69d1b7ab79.
2018-05-13 10:01:52 +02:00
Matthew Bauer
326d0bf2aa darwin.libSystem: cleanup
We don’t want to rely on a certain output so just use ‘getDev’ so Nix
will choose the right output for us.
2018-05-12 10:03:48 -05:00
Matthew Bauer
d000198ab7 darwin.architecture: correctly install headers
I’m not going to fix all of them but this is the best way to do this
in Apple things. Just add ‘EXPORT_DSTDIR’ to the installFlags & set
‘DSTDIR’ to $(out). Please do this instead of the patching!
2018-05-12 10:02:30 -05:00
John Ericson
ee4b56edd3 Merge remote-tracking branch 'upstream/master' into staging 2018-05-11 14:36:08 -04:00
Alexandre Esteves
cb44120b81 Fix typo 2018-05-11 14:41:24 +01:00
Matthew Justin Bauer
73833ee446
darwin.architecture: add postPatch back in
I didn't think it was even being called before, but now getting this error:

https://hydra.nixos.org/build/73955984/nixlog/1
2018-05-11 08:14:21 -05:00
Periklis Tsirakidis
b12850d421 skhd: Bump 0.0.14 to 0.1.1 2018-05-10 20:57:45 +02:00
Matthew Bauer
6748534d83 Merge remote-tracking branch 'upstream/master' into staging 2018-05-08 09:36:00 -05:00
Matthew Justin Bauer
1c87d77efe
ppp: add dontBuild = true
Hopefully this is the last one.
2018-05-07 12:47:07 -05:00
Matthew Bauer
9811bf2258 treewide: cleanup phases from last commit
The last commit broken Darwin stdenv. We still need to skip some
phases when Apple provides a Makefile that shouldn’t be used.
2018-05-06 16:07:55 -05:00
Matthew Justin Bauer
295815bec7 treewide: Remove phases 2018-05-06 07:20:03 +00:00
Matthew Justin Bauer
5f65ec3f22
Merge pull request #39940 from matthewbauer/work
macOS closure-size reduction
2018-05-06 04:27:02 +00:00
Periklis Tsirakidis
bf65cf4d28 skhd: 0.0.12 -> 0.0.14 2018-05-05 22:33:34 +02:00
John Ericson
cf06e42d1c Merge remote-tracking branch 'upstream/master' into staging 2018-05-03 16:35:36 -04:00
Matthew Justin Bauer
d88a61e439
libsystem: fix phases 2018-05-03 15:11:00 -05:00
Matthew Bauer
69d1b7ab79 darwin.libSystem: multiple outputs
adds 2 outputs for libSystem:

- out
- dev

should shrink closure sizes
2018-05-03 13:38:46 -05:00
Matthew Bauer
c0ebcab789 darwin.ICU: delete old /usr files
This is a huge directory & not referenced anywhere.
2018-05-03 13:38:46 -05:00
Matthew Bauer
143978a477 treewide: remove platform assertions
linux: readd assertion
2018-05-03 13:09:20 -05:00
Matthew Justin Bauer
eeb016e8f0
Merge branch 'staging' into fix-ncurses-darwin-extensions 2018-05-02 15:40:38 -05:00
Matthew Justin Bauer
3513034208 darwin.libiconv: fix setup hook 2018-05-02 15:35:46 -05:00
Matthew Bauer
8322b43e8e Revert "darwin.libiconv: fix setup hook"
This reverts commit ee08469d6c.

This one should go in staging first.
2018-05-02 15:35:12 -05:00
Matthew Justin Bauer
ee08469d6c
darwin.libiconv: fix setup hook 2018-05-02 15:31:37 -05:00
John Ericson
c377b21f83
Merge pull request #39844 from obsidiansystems/cctools-cleanup
cctools, apple libiconv: Apple clean up for iOS cross
2018-05-02 09:36:18 -04:00
John Ericson
62fd669ab7 darwin.libiconv: Start to fix for cross
I think I need postPatch for `autoreconfHook`, it's better anyways, and
I'm pairing this with another mass-rebuild so its essentially free.
2018-05-01 22:56:49 -04:00
John Ericson
4b3cc9ed87 cctools: Cleanup useOld conditions slightly
60771af5b6 jumped through some hoops in
order to avoid a mass-rebuild.
2018-05-01 22:31:37 -04:00
John Ericson
db4f96b3cb lib/systems: Fix eval for iphone32* examples
Whoops messed up 9a845de873 slightly.
2018-05-01 13:04:57 -04:00
Matthew Bauer
47a7383395 darling: fix src
Darling has a case conflict which means that its src hash will be
different between case sensitive and case insensitive file systems.
This is not ideal and the only way around it is basically to remove
the offending files from the output. I use fetchzip here to do that
but I hope there is a better fix available eventually.
2018-04-29 19:15:45 -05:00
John Ericson
ba52ae5048 treewide: isArm -> isAarch32
Following legacy packing conventions, `isArm` was defined just for
32-bit ARM instruction set. This is confusing to non packagers though,
because Aarch64 is an ARM instruction set.

The official ARM overview for ARMv8[1] is surprisingly not confusing,
given the overall state of affairs for ARM naming conventions, and
offers us a solution. It divides the nomenclature into three levels:

```
ISA:             ARMv8   {-A, -R, -M}
                 /    \
Mode:     Aarch32     Aarch64
             |         /   \
Encoding:   A64      A32   T32
```

At the top is the overall v8 instruction set archicture. Second are the
two modes, defined by bitwidth but differing in other semantics too, and
buttom are the encodings, (hopefully?) isomorphic if they encode the
same mode.

The 32 bit encodings are mostly backwards compatible with previous
non-Thumb and Thumb encodings, and if so we can pun the mode names to
instead mean "sets of compatable or isomorphic encodings", and then
voilà we have nice names for 32-bit and 64-bit arm instruction sets
which do not use the word ARM so as to not confused either laymen or
experienced ARM packages.

[1]: https://developer.arm.com/products/architecture/a-profile
2018-04-25 15:28:55 -04:00
Ken Micklas
ef3db7d14c ios-sdk-pkgs: Init from iOS SDK from XCode 2018-04-19 16:09:30 -04:00
Ken Micklas
60771af5b6 cctools-port: Use old version for iOS to support TBD linking 2018-04-19 11:37:10 -04:00
Matthew Justin Bauer
85cadf9a9b
darling: fixup hash 2018-04-18 18:35:21 -05:00
Matthew Justin Bauer
9330ef4df8
darling: darwin only for now 2018-04-16 17:01:38 -05:00
Matthew Bauer
6bb3ec8264 darling: use correct hash 2018-04-15 23:23:17 -05:00
Matthew Bauer
2a499ab411 adv_cmds: fix xcbuild invocation
Need to set SYMROOT and OBJROOT
2018-04-15 23:23:17 -05:00
Matthew Bauer
348215569a text_cmds: init at 99 2018-04-15 22:54:19 -05:00
Matthew Justin Bauer
4a9e37b7d2
maloader: linux only 2018-04-14 21:30:16 -05:00
John Ericson
800cb8ae71
Merge pull request #38881 from obsidiansystems/sierra-hack
cc-wrapper: More intelligent sierra hack
2018-04-13 14:39:56 -04:00
Matthew Bauer
23467e207f top: add meta 2018-04-12 18:42:21 -05:00
Matthew Bauer
5211410e69 top: init at 108 2018-04-12 18:27:11 -05:00
John Ericson
1001311280 cctools: Add alternative source for sierra hack
Source master rebase of my [PR #34].

Eventually, we might consider doing something for GNU binutils too, in
order that we switch (the normal) ld-wrapper to always use this to
leverage ld to resolve libraries, rather than faking it in bash.

[PR #34]: https://github.com/tpoechtrager/cctools-port/pull/34
2018-04-12 19:16:51 -04:00
John Ericson
01e1722e8f cctools: Make assert meta.broken instead
This more politely expresses the same thing
2018-04-12 19:15:47 -04:00
Matthew Bauer
5c491ab529 diskdev_cmds: init at 593 2018-04-12 17:16:49 -05:00
Matthew Bauer
ddbaa2dd33 libutil-new: fix with newest xcbuild stuff 2018-04-12 17:09:58 -05:00
Matthew Justin Bauer
29bc523733
Merge pull request #38865 from matthewbauer/darwin-security-fixes
[darwin] Security fixes
2018-04-12 14:27:00 -05:00
Matthew Bauer
59bcd129e5 libsecurity_apple_x509: add more symbols 2018-04-12 14:12:53 -05:00
Matthew Bauer
aa21f9c578 dtrace: patch impurities 2018-04-12 14:12:43 -05:00
Matthew Bauer
d227d1edf4 SmartCardServices: init 2018-04-12 14:12:36 -05:00
Matthew Justin Bauer
19a6f0e02b
Merge pull request #38715 from matthewbauer/shell_cmds-full
Build more commands from Apple's system_cmds
2018-04-11 11:13:50 -05:00
Frederik Rietdijk
ee6894ca12 Merge staging into master 2018-04-11 14:55:52 +02:00
Matthew Justin Bauer
15c1cd242c
Merge pull request #38329 from knedlsepp/fix-darwin.opencflite
darwin.opencflite: fix build
2018-04-11 01:36:38 -05:00
Matthew Bauer
dd4fd74f91 system_cmds: build more commands
Now includes getconf
2018-04-10 21:15:28 -05:00
Matthew Bauer
77ac9c50dc security_systemkeychain: init
Fixes #37838
2018-04-09 18:35:36 -05:00
Matthew Bauer
71b53c0cfe libsecurity_codesigning: init 2018-04-09 18:35:36 -05:00
Matthew Bauer
c468b30ede libsecurity_utilities: fixup 2018-04-09 18:35:36 -05:00
Matthew Bauer
4a515ed306 dtrace: add xcode drv
darwin.dtrace-xcode contains the dtrace bin
2018-04-09 18:35:35 -05:00
Matthew Bauer
0b83326172 darling: init 2018-04-09 18:35:35 -05:00
Matthew Bauer
d625fece18 CoreSymbolication: init 2018-04-09 18:35:35 -05:00
Matthew Bauer
72f8df9465 swift-corelibs: init
moves swift-corelibs-corefoundation to own dir

also adds libdispatch
2018-04-09 18:35:35 -05:00
Matthew Bauer
65562e4cdd treewide: change install references for xcbuild
now build directory is "Products/Release/"
2018-04-09 18:35:35 -05:00
Frederik Rietdijk
23741692fa Merge master into staging 2018-04-04 19:36:39 +02:00
Daniel Peebles
fcbe4afe18
Merge pull request #36441 from LnL7/darwin-cleanup-frameworks
darwin-frameworks: cleanup
2018-04-04 09:38:27 -04:00
John Ericson
adaa110a72 binutils: No more darwin conditionals
Since at least d7bddc27b2, we've had a
situation where one should depend on:

 - `stdenv.cc.bintools`: for executables at build time
 - `libbfd` or `libiberty`: for those libraries
 - `targetPackages.cc.bintools`: for exectuables at *run* time
 - `binutils`: only for specifically GNU Binutils's executables,
   regardless of the host platform, at run time.

and that commit cleaned up this usage to reflect that. This PR flips the
switch so that:

 - `binutils` is indeed unconditionally GNU Binutils
 - `binutils-raw`, which previously served that role, is gone.

so that the correct usage will be enforced going forward and everything
is simple.

N.B. In a few cases `binutils-unwrapped` (which before and now was
unconditionally actual GNU binutils), rather than `binutils` was used to
replace old `binutils-raw` as it is friendly towards some cross
compilation usage by avoiding a reference to the next bootstrapping
change.
2018-04-03 13:34:52 -04:00
Josef Kemetmüller
d1dfe27ad9 darwin.opencflite: fix build 2018-04-02 12:00:23 +00:00
Matthew Justin Bauer
75616ceb49
Merge pull request #37840 from matthewbauer/unixtools
Cross-platform "unixtools"
2018-03-27 18:43:03 -05:00
Daiderd Jordan
261a958170
skhd: 0.0.10 -> 0.0.12 2018-03-25 00:54:11 +01:00
Matthew Bauer
9c6b76f6af darwin.libiconv: add setup hook 2018-03-22 16:50:12 -05: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
43be4ebfb1
Merge pull request #36581 from matthewbauer/darwin-fixes
darwin: fixes
2018-03-09 19:32:54 +01:00
Matthew Bauer
c7abef4c5d network_cmds: fix on darwin 2018-03-08 19:00:09 -06:00