summaryrefslogtreecommitdiffstats
path: root/pkgs/stdenv/nix
AgeCommit message (Collapse)Author
2018-12-04stdenv: implement crossOverlaysMatthew Bauer
crossOverlays only apply to the packages being built, not the build packages. It is useful when you don’t care what is used to build your packages, just what is being built. The idea relies heavily on the cross compiling infrastructure. Using this implies that we need to create a cross stdenv.
2017-09-26cc-wrapper: Use stdenvNoCC to buildJohn Ericson
cc-wrapper may wrap a cc-compiler, but it doesn't need one to build itself. (c.f. expand-response-params is a separate derivation.) This helps avoid cycles on the cross stuff, in addition to removing a useless dependency edge. I could have been super careful with overrides in the stdenv to avoid the mass rebuild, but I don't think it's worth it.
2017-08-21cc-wrapper: Remove unused paramsJohn Ericson
Ensured hashes unchanged and eval succeeds in tarball job
2017-07-07top-level: {build,host,target}Platform are defined in the stdenv insteadJohn Ericson
See #27069 for a discussion of this
2017-06-22cc-wrapper: Learn about target prefixesJohn Ericson
This is first step towards getting rid of gcc-wrapper-cross
2017-06-22cc-wrapper: Remove `stdenv.is*` for `targetPlatform.is*`John Ericson
Modify bootstrapping stdenvs to make sure `targetPlatform` also passed.
2017-05-22stdenv: define is* predicates with hostPlatform.is*John Ericson
This is a saner default until stdenv's are removed altogether
2017-01-24top-level: Lay the groundwork for `{build,host,target}Platform`John Ericson
The long term goal is a big replace: { inherit system platform; } => buildPlatform crossSystem => hostPlatform stdenv.cross => targetPlatform And additionally making sure each is defined even when not cross compiling. This commit refactors the bootstrapping code along that vision, but leaves the old identifiers with their null semantics in place so packages can be modernized incrementally.
2017-01-13top-level: Normalize stdenv bootingJohn Ericson
Introduce new abstraction, `stdenv/booter.nix` for composing bootstraping stages, and use it everywhere for consistency. See that file for more doc. Stdenvs besides Linux and Darwin are completely refactored to utilize this. Those two, due to their size and complexity, are minimally edited for easier reviewing. No hashes should be changed.
2017-01-13top-level: Modernize stdenv.overrides giving it self and superJohn Ericson
Document breaking change in 17.03 release notes
2016-03-24cc-wrapper: add option to skip flags for native optimizationsNikolay Amiantov
2016-03-13stdenv: don't overwrite $NIX_ENFORCE_PURITY settingTim Cuthbertson
Close #13583.
2016-02-28Fix "nix" stdenv (close #13554)Danny Wilson
Broken by changes introduced in d96893647de5c519c458c1254f043f2d67d9b29c
2015-05-11add is{GNU,Clang} attrs to cc-wrapper.Eric Seidel
These will be more pleasant to use than the existing (cc.cc.isClang or false) nonsense we currently do.
2015-01-14rename gcc-wrapper to cc-wrapper.Eric Seidel
also makes cc-wrapper compatible with clang in the darwin fork.
2014-11-04Remove dead codeEelco Dolstra
2014-08-09Prevent an unnecessary evaluation of libEelco Dolstra
2014-07-28DohEelco Dolstra
2014-07-28Export SDKROOTEelco Dolstra
2014-07-24$xcodePath -> $SDKROOTEelco Dolstra
SDKROOT is standard. In particular, this fixes the cmake build on Mac OS X 10.9.
2014-07-23stdenv-darwin: Shut up some warnings from SDK headersEelco Dolstra
The Carbon headers spew out zillions of multichar / deprecations warnings, which isn't very helpful. So turn them off.
2014-07-02Set MACOSX_DEPLOYMENT_TARGETEelco Dolstra
This variable sets the minimal Mac OS X version required for running binaries produced by the Darwin toolchain. Since it defaults to the version of the user's SDK, setting it explicitly should make our builds more deterministic. It's now set to 10.6 because that's what hydra.nixos.org runs.
2014-07-01Darwin: Search for libraries in $sdk/usr/libEelco Dolstra
This required adding a new environment variable NIX_LDFLAGS_AFTER that ensures that the -L.../usr/lib flag happens last.
2014-07-01Darwin: Use xcrun to get the path to the SDKEelco Dolstra
Recent versions of Xcode don't install headers in /usr/include but in a directory like /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include So use that instead, falling back to /usr/include in case of an older version of Xcode.
2014-05-29Change stdenv on darwin to not set NIX_ENFORCE_PURITYJohn Wiegley
2013-02-28GCC 4.7.2 + updated libraries compiles on Illumos/SmartOS!Danny Wilson
- Add solaris native ld support to GCC build wrapper - Add solaris ld wrapper that fixes -L argument order
2012-12-28Remove trailing whitespaceEelco Dolstra
2012-12-28Add an option ‘stdenv.userHook’ to set a global stdenv setup hookEelco Dolstra
This allows various applications. It allows users to set global optimisation flags, e.g. stdenv.userHook = ''NIX_CFLAGS_COMPILE+=" -funroll-loops"''; But the impetus is as an alternative to issue #229, allowing impure stdenv setup for people who want to use distcc: stdenv.userHook = "source /my/impure/setup-script.sh"; This is probably a bad idea, but at least now it's a bad idea in people's configuration and not in Nixpkgs. :-)
2012-04-23Darwin: Use GCC 4.6 in `stdenvNix'.Ludovic Courtès
svn path=/nixpkgs/trunk/; revision=33894
2012-01-20* Call all the stdenvs "stdenv" (rather than e.g. "stdenv-linux")Eelco Dolstra
so that "nix-env -i stdenv" does the expected. svn path=/nixpkgs/branches/stdenv-updates/; revision=31742
2012-01-19* Reuse packages in the Darwin stdenv to prevent unnecessary rebuilds.Eelco Dolstra
svn path=/nixpkgs/branches/stdenv-updates/; revision=31710
2012-01-19* Prepend the "prehook" rather than sourcing it.Eelco Dolstra
* Don't call xargs with the -r flag in the Darwin bootstrap. svn path=/nixpkgs/branches/stdenv-updates/; revision=31703
2011-12-12* Remove the NIX_STRIP_DEBUG flag. It was undocumented and confusingEelco Dolstra
in its interaction with the ‘dontStrip’ attribute. svn path=/nixpkgs/branches/stdenv-updates/; revision=30848
2009-12-10Updating from trunk.Lluís Batlle i Rossell
svn path=/nixpkgs/branches/stdenv-updates/; revision=18878
2009-11-27changes for x86_64-darwin supportRob Vermaas
svn path=/nixpkgs/trunk/; revision=18667
2009-11-20Trying to fix the stdenv used on i686-darwin, which stopped working after myLluís Batlle i Rossell
statement of the gcc-wrapper coreutils dependency on r17867. I don't have i686-darwin to try this. svn path=/nixpkgs/branches/stdenv-updates/; revision=18490
2009-06-10 * xargsFlag empty on darwinRob Vermaas
svn path=/nixpkgs/trunk/; revision=15919
2009-02-02* Fix stdenvNative/stdenvNix.Eelco Dolstra
svn path=/nixpkgs/branches/stdenv-updates/; revision=13957
2008-06-18* Folded the Cygwin, powerpc-darwin and FreeBSD stdenv into the "native"Eelco Dolstra
stdenv. svn path=/nixpkgs/trunk/; revision=12147
2008-05-27* curl: build with OpenSSL (https) support by default.Eelco Dolstra
* Some fetchurl-related refactoring. The `realCurl' attribute is gone, `curl' is the real thing. To prevent an infinite recursion in `fetchurl' (because it depends on curl and building curl needs fetchurl), curl and its dependencies (openssl, zlib, perl) use `fetchurlBoot', which is the fetchurl used by the previous bootstrap phase (e.g. the statically linked version of curl for stdenv-linux). So as a result you can use https:// urls almost everywhere. There's also some hackery to prevent a different curl from being built in every stdenv-linux bootstrap phase (namely the stdenv.fetchurl attribute which allows fetchurl to be overriden everywhere). svn path=/nixpkgs/trunk/; revision=11905
2008-02-21svn path=/nixpkgs/branches/stdenv-updates-merge/; revision=10814Eelco Dolstra
2006-10-24* gcc-wrapper: separately store the flags necessary to find GCC andEelco Dolstra
Glibc. This is useful when building GCC. * gcc-wrapper: the dynamic linker has a different name on x86_64 and powerpc. * gcc-wrapper: "glibc" -> "libc", because someday we might support different C libraries. * gcc: don't do a multilib build (e.g., 32-bit support on x86_64), don't need it. * gcc: merge in support for static builds. * gcc: various simplifications in the compiler/linker flags, hope they work. svn path=/nixpkgs/trunk/; revision=6823
2006-10-17* `drv + /path' is deprecated, so don't do that anymore.Eelco Dolstra
svn path=/nixpkgs/trunk/; revision=6754
2006-08-09* Don't use the subpath operator (~) anymore, it's subsumed by normalEelco Dolstra
concatenation (+). svn path=/nixpkgs/trunk/; revision=6080
2006-07-20* Pass along realCurl.Eelco Dolstra
svn path=/nixpkgs/trunk/; revision=5830
2006-07-14* On Darwin, use Apple's gcc fork.Eelco Dolstra
svn path=/nixpkgs/trunk/; revision=5715
2006-07-14* Doh!Eelco Dolstra
svn path=/nixpkgs/trunk/; revision=5708
2006-07-14* Better stdenv for Darwin: uses gcc, coreutils etc. built in Nix, butEelco Dolstra
external binutils (i.e., Apple's cctools in /usr/bin). svn path=/nixpkgs/trunk/; revision=5706
2006-07-14* Reviving stdenvNix.Eelco Dolstra
svn path=/nixpkgs/trunk/; revision=5702
2006-07-14* Remove redundant files, move path.nix around a bit.Eelco Dolstra
svn path=/nixpkgs/trunk/; revision=5701