summary refs log tree commit diff
path: root/pkgs/build-support/cc-wrapper
Commit message (Collapse)AuthorAge
* Merge branch 'master' into stagingVladimír Čunát2017-12-31
|\ | | | | | | | | A few thousand rebuilds from master, again. Hydra: ?compare=1422362
| * cc-wrapper: allow compilers to specify unsupported hardening modesDmitry Kalinkin2017-12-30
| | | | | | | | Fixes: 0fd7ef61b2 ('clang_34: Disable hardening bits (#28543)')
* | stdenv-setup: Ease the transition with native buildsJohn Ericson2017-12-30
| | | | | | | | | | | | | | | | | | | | | | | | - All deps go on the PATH - CC and Bintools wrappers with their host != depender's host still get their setup hooks run. - Environment hooks get applied to all packages This isn't so elegent, but eases the transition on a very significant PR.
* | {bintools,cc}-wrapper: extraPackages should be `depsTargetTargetPropagated`John Ericson2017-12-30
| | | | | | | | | | They are libraries used by programs built with these tools, not used by the tools themselves.
* | {bintools,cc}-wrapper: Fix setup hook to respect the role of the cc-compilerJohn Ericson2017-12-30
|/ | | | | | | We now have the information to properly determine the role the cc-wrapper dependency has, by taking advantage of `offset`. No longer use the soon-to-be-deprecated crossConfig environment variable, the temp hack used before this change.
* Merge branch 'master' into stagingOrivej Desh2017-12-18
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master: (125 commits) scummvm: fix eval tinycc: 0.9.27pre-20171016 -> 0.9.27 Update terraform provider versions vscode: 1.18.1 -> 1.19.0 linux: 4.14.6 -> 4.14.7 scummvm: 1.9.0 -> 2.0.0 cmst: 2017.03.18 -> 2017.09.19 albert: 0.14.7 -> 0.14.14 obs-studio: fix vlc plugin ffmpeg, ffmpeg-full: 3.4 -> 3.4.1 uchiwa: 0.26.3 -> 1.1.0 linux-testing: 4.15-rc3 -> 4.15-rc4 steam: override nss, nspr, fixes #32781 ponyc: 0.20.0 -> 0.21.0 pythonPackages.pwntools: disable tests gnome3.gnome-tweak-tool: 3.26.3 → 3.26.4 vim-rhubarb: init at 2017-06-28 atom: depend on libsecret nvidia-settings: Make sure binary can find libXv.so backblaze-b2: 0.6.2 -> 1.1.0 ...
| * cc-wrapper: don't set cxx_stdlib when nativeTools is trueDylan Simon2017-12-17
| | | | | | | | There are no gcc paths on nativeTools, and cc isn't set.
* | Merge commit '9d8f9b2e531bf95a700a949d879927fb6996ffc9' into binutils-wrapperJohn Ericson2017-12-13
|\ \
| * | cc-wrapper: don't add broken cflags to clangWill Dietz2017-11-30
| |/ | | | | | | | | | | | | | | | | On non-GNU (gcc) compilers, there is no "/lib/gcc/..." so when this is eventually expanded this is empty resulting in an incomplete "-idirafter " that eats the next argument: -idirafter -B/nix/store/wamjwwdvkmhbf4f2902nhw8jxxzv0hy3-clang-wrapper-4.0.1/bin/
* | bintools-wrapper: Import separately from cc-wrapperJohn Ericson2017-12-13
| |
* | bintools-wrapper: InitJohn Ericson2017-12-13
| | | | | | | | | | | | Factor a bintools (i.e. binutils / cctools) wrapper out of cc-wrapper. While only LD is wrapped, the setup hook defines environment variables on behalf of other utilites.
* | cc-wrapper: Don't treat "-" alone as a flagJohn Ericson2017-12-13
| | | | | | | | | | | | | | | | It means stdin, and is morally equivalent to passing a file. e.g. $ echo 'int main(void) { return 0; }' | gcc -x c - will compile and link a binary.
* | cc-wrapper: Use separate mangler for "bool" variablesJohn Ericson2017-12-13
| | | | | | | | This avoids any `NIX_FOOBAR=1 1` not triggering conditions.
* | cc-wrapper: Pull variable mangler into utils.shJohn Ericson2017-12-13
| | | | | | | | In preparation for splitting out bintools-wrapper
* | cc-wrapper: GNAT wrapper stop caring about `-m32`John Ericson2017-12-11
|/ | | | It need not concern itself with 32-bit dynamic linking; ld-wrapper handles that now.
* cc-wrapper: Define new- and old-style cross env varsJohn Ericson2017-11-28
| | | | For example, `BUILD_CC` and `CC_FOR_BUILD`
* cc-wrapper: Export env vars for objdump and readelf in setup-hookJohn Ericson2017-11-28
| | | | Also fix alphabetical order
* cc-wrapper: Don't leave CMD defined after setup hookJohn Ericson2017-11-28
| | | | | Rename to `cmd` too, as uppercase typically means the variable is exported.
* cc-wrapper: Fix stray binPrefix -> targetPrefixJohn Ericson2017-11-27
| | | | | I thought my sed in e755a8a27d5c33d87a5742817c373028d35443e9 was exhaustive, but it was not.
* treewide: Use `targetPrefix` instead of `prefix` for platform name prefixesJohn Ericson2017-11-27
| | | | | | | | | Certain tools, e.g. compilers, are customarily prefixed with the name of their target platform so that multiple builds can be used at once without clobbering each other on the PATH. I was using identifiers named `prefix` for this purpose, but that conflicts with the standard use of `prefix` to mean the directory where something is installed. To avoid conflict and confusion, I renamed those to `targetPrefix`.
* Merge pull request #30549 from obsidiansystems/bintoolsJohn Ericson2017-11-08
|\ | | | | treewide: Introduce stdenv.cc.bintools
| * treewide: Depend on stdenv.cc.bintools instead of binutils directlyJohn Ericson2017-11-05
| | | | | | | | | | One should do this when needed executables at build time. It is more honest and cross-friendly than refering to binutils directly.
* | Merge #31209: cc-wrapper: Fix if dynamicLinker not foundVladimír Čunát2017-11-06
|\ \
| * | Remove trailing lineBojan Nikolic2017-11-05
| | |
| * | Remove the unnecessary second conditionalBojan Nikolic2017-11-05
| | |
| * | nixos/cc-wrapper: Fix bug if dynamicLinker not foundBojan Nikolic2017-11-03
| |/ | | | | | | | | | | | | | | | | If a dynamic linker for target is not found the generated script fails due to unbound variable error (due to "set -u"). Correct by specifying default value with dynamicLinker:- and not generating ldflagsBefore if no linker is found. This problem was found when cross compiling to mingw32 targets
* / cc-wrapper: disable POSIX compatibilityNikolay Amiantov2017-11-05
|/
* Get rid of most @rpath nonsense on DarwinDan Peebles2017-10-08
| | | | | | This requires some small changes in the stdenv, then working around the weird choice LLVM made to hardcode @rpath in its install name, and then lets us remove a ton of annoying workaround hacks in many of our Go packages. With any luck this will mean less hackery going forward.
* cc-wrapper: Clean up dynamic linking with x86 multilibJohn Ericson2017-09-28
| | | | | It's better layering to do everything in ld-wrapper. Also, use numeric comparisons for `relocatable`.
* cc-wrapper: Use stdenvNoCC to buildJohn Ericson2017-09-26
| | | | | | | | | | 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.
* cc-wrapper: Add `set -x` tracing for NIX_DEBUG >= 7John Ericson2017-09-26
|
* treewide: Use `(( "${NIX_DEBUG:-0}" >= 1) ))` consistentlyJohn Ericson2017-09-26
|
* cc-wrapper, cc-wrapper-old: Simplify shell logicJohn Ericson2017-09-19
| | | | | | | | | | | | 1. `crossDrv` is now the default so we don't need to worry about that in build != host builds. 2. shell is the build time shell, so `wrapCCCross` doesn't need to worry, as build == host. 3. `shell.shellPath` will always be appended where useful. 4. Complicated `shell == ""` logic served no purpose.
* cc-wrapper: Use same dynamic loader on all Darwin, not just x86_64John Ericson2017-09-18
| | | | | In practice, this is correct because iOS is on ARM and puts the loader there.
* cc-wrapper: Remove obsolete assertionJohn Ericson2017-09-18
| | | | This was just causing evaluation problems on cross.
* Revert "Merge pull request #28557 from obsidiansystems/binutils-wrapper"Eelco Dolstra2017-09-07
| | | | | | | | | | This reverts commit 0a944b345e89ca0096974d168f49e1c6830c3fc2, reversing changes made to 61733ed6ccde3427016720f2e0cd191d3d95152c. I dislike these massive stdenv changes with unclear motivation, especially when they involve gratuitous mass renames like NIX_CC -> NIX_BINUTILS. The previous such rename (NIX_GCC -> NIX_CC) caused months of pain, so let's not do that again.
* binutils-wrapper: Import separately from cc-wrapperJohn Ericson2017-09-01
|
* binutils-wrapper: InitJohn Ericson2017-09-01
| | | | | | Factor a binutils wrapper out of cc-wrapper. While only LD is wrapped, the setup hook defines environment variables on behalf of other utilites.
* cc-wrapper: Use separate mangler for "bool" variablesJohn Ericson2017-09-01
| | | | This avoids any `NIX_FOOBAR=1 1` not triggering conditions.
* cc-wrapper: Pull variable mangler into utils.shJohn Ericson2017-09-01
| | | | In preparation for splitting out binutils-wrapper
* cc-wrapper: Clean up dynamic linking with x86 multilibJohn Ericson2017-09-01
| | | | It's better layering to do everything in ld-wrapper.
* cc-wrapper: Remove support for NIX_LDFLAGS_HARDENJohn Ericson2017-08-31
| | | | It has long been deprecated
* cc-wrapper: Remove {START,EXEC}_HOOKJohn Ericson2017-08-31
| | | | These are no longer used by anything
* mkDerivation, cc-wrapper: Check hardening flag validity in NixJohn Ericson2017-08-30
| | | | | | | | | This becomes necessary if more wrappers besides cc-wrapper start supporting hardening flags. Also good to make the warning into an error. Also ensure interface is being used right: Not as a string, not just in bash.
* cc-wrapper: Remove redundant hardeningJohn Ericson2017-08-30
| | | | | | GCC just passes `-z ...` flags to ld unaltered, and they are already passed to LD anyways. On the other hand, `-pie` affects gcc behavior too.
* darwin-CF: use @rpath for library id and add an rpath entry for CF based on ↵Daiderd Jordan2017-08-28
| | | | NIX_COREFOUNDATION_RPATH
* cc-wrapper: Leverage the setup script instead of `buildCommand`John Ericson2017-08-25
|
* cc-wrapper: Use `set -u` for better maintainabilityJohn Ericson2017-08-25
|
* expand-response-params: Build more normallyJohn Ericson2017-08-25
|
* expand-response-params: Pull out of cc-wrapperJohn Ericson2017-08-25
| | | | No hashes were changed