[Nix-dev] clang-based stdenv for OSX Yosemite

Joel me at joelt.io
Tue Nov 4 03:31:44 CET 2014


Daniel Peebles, John Wiegley, Eric Seidel, and myself have been working on a clang-based stdenv for OSX for the past few weeks. It is fully functional now and you can find it at https://github.com/joelteon/nixpkgs <https://github.com/joelteon/nixpkgs>. It’s being continuously built on my Hydra instance at https://hydra.joelt.io/ <https://hydra.joelt.io/>. If you would like to use our branch you should add hydra.joelt.io to your binary caches. To my knowledge this is the only nixpkgs fork that works with Yosemite.

Daniel is also working on a 100% pure stdenv (which involves building Apple’s open source libc), but that’s still in the works.

There are a few notable changes besides the obvious change in compiler. We are willing to revert these before merging into NixOS upstream, since they’re pretty major:

* stdenv.gcc has been renamed to stdenv.cc <http://stdenv.cc/>. In the process we fixed a few bugs where packages incorrectly referred to gcc instead of the stdenv’s compiler. However, this does result in totally rebuilding the Linux stdenv as well, since the generic setup script now expects a $cc variable instead of a $gcc variable.
* Instead of using the string “gcc” or “${stdenv.gcc}/bin/gcc”, we now use `stdenv.progname` (and `stdenv.prognamexx`).

We had a few motivations for this effort. I’d been considering using clang as my stdenv’s main compiler ever since I found out that some of the packages I hold dear (such as vim and phantomjs) need to be built with Apple’s ported GCC 4.2.1. Aside from my philosophical objection to this, Yosemite’s developer previews were unable to compile GCC at all (at least for the first 3). I think it’s possible to compile GCC on Yosemite GM, but I’m no longer inclined to try as this branch now uses Apple’s officially supported compiler.

We’d welcome your input and also your help; there’s still a lot left to do.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.science.uu.nl/pipermail/nix-dev/attachments/20141103/f6c15f62/attachment.html 


More information about the nix-dev mailing list