Commit Graph

489 Commits

Author SHA1 Message Date
Matthew Bauer
d0dc91d24f darwin: bump apple_sdks to 10.12
(cherry picked from commit 0b468bf0335eaa606fccfe98d4a36c3efbe83f2a)
2018-12-29 20:17:05 -06:00
Matthew Bauer
a1d297374d darwin.hfs: put headers in hfs/ directory
This is where they are supposed to go. My mistake in the original
commit.
2018-12-27 11:18:28 -06:00
Matthew Bauer
425112151d
darwin: remove missing symbols
these symbols are not needed apparently
2018-12-19 23:46:06 -06:00
Matthew Bauer
59ec6b559d
Merge pull request #52256 from matthewbauer/52148-fix
Provide real dsymutil to darwin stdenv
2018-12-18 10:00:24 -06:00
Matthew Bauer
d1dfc92187
Merge pull request #47678 from matthewbauer/landmarks
Update macOS frameworks to 10.12
2018-12-18 09:59:44 -06:00
Matthew Bauer
e6f7f2928f darwin: 10.11 → 10.12
Lots of stuff has gotten moved around. Many security libraries have been merged
into the Security monorepo. I’ve cleared them out for now, we will
need to modify Security to build them!

This also moves some things around to more clearly separate
bootstrapping the stdenv from everything else. We want the “normal”
mode to be the non-bootstrapped version. When you ask for “Security”,
you want the actual built software, not a crippled one.

- Add TARGET_OS_OSX to darwin.libSystem. Looks like something
  introduced in 10.12. TARGET_OS_MAC is only set when building for
  desktop (iOS will have TARGET_OS_MAC set)
- Bump darwin.dtrace
- Bump darwin.libpthread
- Remove SmartCardServices, libsecurity*, etc.
- Install some more headers for darling.
2018-12-17 00:07:09 -06:00
Matthew Bauer
0a996c8ef3 darwin: use llvm’s dsymutil instead of dummy version
We were previously using a dummy wrapper for dsymutil. This meant that
debug symbols were not getting generated when dsymutil was otherwise
available. This should fix that issue & provide a real dsymutil from
llvm.

Fixes #52148.
2018-12-15 12:26:11 -06:00
Matthew Bauer
9564b8ed9e cctools: don’t depend on clang at runtime
--disable-clang-as flag disables the use of clang by cctools-port
2018-12-10 17:31:47 -06:00
Jörg Thalheim
b2c86f46d9
Merge pull request #51549 from yurrriq/update/os-specific/darwin/skhd
skhd: 0.2.2 -> 0.3.0
2018-12-05 12:02:46 +00:00
Eric Bailey
aad111f567
skhd: 0.2.2 -> 0.3.0 2018-12-04 22:15:51 -06:00
Matthew Bauer
5e06294276 darwin/libiconv: fix static/shared logic
The conditional was incorrect - postInstall script should only hsppen
when enableShared = true.
2018-12-04 21:13:24 -06:00
Frederik Rietdijk
7863aae5b2 Merge master into staging-next 2018-11-11 08:59:44 +01:00
Frederik Rietdijk
53d00c3351 Merge master into staging-next 2018-11-10 11:08:54 +01:00
Daiderd Jordan
ee1c6f62f8
darwin.trash: add cf-private
Undefined symbols for architecture x86_64:
      "_OBJC_CLASS_$_NSMutableArray", referenced from:
          objc-class-ref in trash-571f39.o
      "_OBJC_CLASS_$_NSURL", referenced from:
          objc-class-ref in trash-571f39.o
      "_OBJC_CLASS_$_NSUserDefaults", referenced from:
          objc-class-ref in trash-571f39.o
          objc-class-ref in HGCLIUtils-31f3b3.o
    ld: symbol(s) not found for architecture x86_64
2018-11-07 19:15:43 +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
bda626e3f0
Merge pull request #49371 from matthewbauer/cctools-bump
cctools: bump to latest commit
2018-10-28 21:03:34 -05:00
Matthew Bauer
ac682e362c cctools: bump to latest commit
Lots of our patches are no longer needed. This simplifies things a
bunch. In addition, it now includes man pages.
2018-10-28 16:44:05 -05:00
Nikita Voloboev
dd9e60f75e
goku: init 0.1.11 2018-10-27 16:15:36 +01:00
Daiderd Jordan
0fcd2ca7b2
darwin.cf-private: include headers from osx_private_sdk
This includes things like CFURLGetFSRef which are not part of the
swift-corelibs CoreFoundation.
2018-10-24 12:04:05 +02:00
Daiderd Jordan
d856710c1f reattach-to-user-namespace: 2.6 -> 2.7 (#48283)
Adds macOS Mojave (10.14) support.
2018-10-12 22:31:43 +02:00
John Ericson
7319013ea1 Merge remote-tracking branch 'upstream/master' into staging 2018-09-18 16:55:42 -04:00
Dan Peebles
110c252870 cctools: support LTO on Darwin
LTO is disabled during bootstrap to keep the bootstrap tools small and
avoid unnecessary LLVM rebuilds, but is enabled in the final stdenv
stage and should be usable by normal packages.
2018-09-16 02:12:11 -04:00
Dan Peebles
4efd4053ed stdenv/darwin: integrate a new CoreFoundation
This also updates the bootstrap tool builder to LLVM 5, but not the ones
we actually use for bootstrap. I'll make that change in a subsequent commit
so as to provide traceable provenance of the bootstrap tools.
2018-09-15 16:05:46 -04:00
Uli Baum
4795c2a23a darwin.maloader: mark as broken
no successfull build in Hydra history back to 2017-08-21
2018-09-08 20:08:34 +02:00
Dan Peebles
f223f417fa swift-corelibs.corefoundation: update and modernize
This actually makes it useful to the Darwin stdenv, which I'll soon be
adjusting to use this library
2018-09-08 03:08:16 -04:00
Shea Levy
18337f3ece
Merge branch 'no-toPath' 2018-09-06 08:09:53 -04:00
John Ericson
0828e2d8c3 treewide: Remove usage of remaining redundant platform compatability stuff
Want to get this out of here for 18.09, so it can be deprecated
thereafter.
2018-08-30 17:20:32 -04:00
Daiderd Jordan
ea1542e9ee
Merge pull request #43140 from LnL7/macos-10.14
darwin: fix Libsystem compatibility for macOS 10.14
2018-08-14 23:02:04 +02:00
Daiderd Jordan
54f901d346
Libsystem: remove version symbols
These no longer exist on 10.14

Fixes #42719
2018-08-12 00:32:18 +02:00
Matthew Bauer
52681db9a3 darwin.objc4: install Object.h header 2018-07-29 12:02:04 -04:00
Periklis Tsirakidis
09cfb65c99 skhd: bump 0.1.1 to 0.2.2 2018-07-25 11:19:27 +02:00
volth
52f53c69ce pkgs/*: remove unreferenced function arguments 2018-07-21 02:48:04 +00:00
Vladimír Čunát
0f01215203
Merge branch 'master' into staging-next
Hydra: ?compare=1468896
2018-07-14 18:15:30 +02:00
Jake Waksbaum
1dd67f1aef trash: f68ad25a -> 0.9.1 (#43361) 2018-07-11 21:07:22 +02:00
Matthew Bauer
0534ceac81 xcbuild: move setup hook to xcbuildHook
Not every package that needs xcbuild will want to use its build phase.
I have moved the xcbuild setup hook to the new attribute xcbuildHook.
This means that dontUseXcbuild is no longer needed. If you just need
to call xcbuild on its own you can just refer to xcbuild.
2018-07-09 17:13:58 -04:00
Daiderd Jordan
52b8b68e82
Libsystem: remove libsystem_network.dylib from reexport list
Fixes #42719
2018-07-07 11:42:50 +02:00
Matthew Bauer
f513d580b0
Merge pull request #43040 from matthewbauer/darwin-closure-reductions
Darwin stdenv tweaks
2018-07-05 14:34:54 -04: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
f7138342cb libiconv: use enableFeature for static/shared
This makes things more predictable w.r.t. what is actually being built.
2018-07-03 16:51:30 -04:00
Matthew Bauer
d568d5016a libsecurity: set NDEBUG
This prevents debugging stuff from coming into play. This avoids some
headers from accidentally winding up in the .dylib file.
2018-07-02 17:51:38 -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
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