Commit graph

74 commits

Author SHA1 Message Date
Daiderd Jordan ad486c48a6
llvm-packages: apply cc-wrapper/stdenv changes to older versions 2017-09-13 20:51:52 +02:00
John Ericson 5aec3f96a2 treewide: Use *Platform.extensions 2017-09-13 11:16:10 -04:00
Jörg Thalheim b6bacc4bb2 llvmPackage_{3.4,3.5,3.7,3.8,3.9}: fix output of llvm-config
llvm-config is a tool to output compile and linker flags, when compiling against llvm.

The tool however outputs static library names despite libllvm is build
as shared library on nixos. This was fixed for llvm 3.4, 3.5 and 3.7.

For llvm 3.8 and 3.9 it printed the library extension twice (.so.so).
This was fixed in 4.0 and the patch is backported to 3.8 and 3.9 in
this pull request.

```
$ for i in 34 35 37 38 39; do echo "\nllvm-$i"; nix-shell -p llvmPackages_$i.llvm --run 'llvm-config --libnames'; done

llvm-34
libLLVMInstrumentation.so libLLVMIRReader.so libLLVMAsmParser.so
...

llvm-35
libLLVMLTO.so libLLVMObjCARCOpts.so libLLVMLinker.so libLLVMipo.so
...

llvm-37
libLLVMLTO.so libLLVMObjCARCOpts.so libLLVMLinker.so libLLVMBitWriter.so
...

llvm-38
libLLVM-3.8.1.so

llvm-39
libLLVM-3.9.so
```

fixes #26713
2017-06-20 10:22:06 +01:00
Joe Hermaszewski ad778a64d7 LLVM-3.9: formatting 2017-04-29 11:18:25 +00:00
Joe Hermaszewski 7b7ffc4999 LLVM-3.9: disable shared libraries in cross builds
The current cc-wrapper script seems to have trouble setting the rpath
correctly. Hopefully #25047 will fix this.
2017-04-29 11:18:15 +00:00
Joe Hermaszewski bad5ca0525 LLVM-3.9: Use nativeBuildInputs instead of buildPackages 2017-04-25 22:31:31 +00:00
Joe Hermaszewski fea424fea3 LLVM-3.9: Fix RPATH in cross compile builds
This error was cause by multiple-outputs.sh not setting
NIX_CROSS_LDFLAGS
2017-04-25 22:25:17 +00:00
Joe Hermaszewski 12bbc63024 llvm-3.9: Fix cross compilation
It's now possible to cross compile llvm:

`nix-build -E '(import ./. { crossSystem = import ./platform.nix; }).pkgs.llvm'`
2017-04-25 19:59:35 +00:00
Joe Hermaszewski 34436df0d0 clang: Use cmake from buildPackages 2017-04-25 19:59:09 +00:00
Vladimír Čunát c1a9dc3d37
Merge branch 'master' into staging 2017-03-23 13:31:28 +01:00
Dan Peebles 3263d02626 xcbuild: assorted fixes and cleanups
This is in preparation for the LLVM 4 upgrade (which gets more strict
about e.g., return false in xcbuild itself) and also for using xcbuild
more extensively in the Darwin stdenv bootstrap process, which is why I
killed the unnecessary gcc dependency in the toolchain. llvm-cov pretends
to be gcov anyway, so we're fine.
2017-03-21 23:22:15 -04:00
Dan Peebles f3aeb3b0ab llvm-39: a couple of improvements
Splits outputs in clang like we do in 3.8 and 4.0 to avoid runtime
dependency on Python in the main derivation.

I also disable TSAN on Darwin to maintain consistency with 4.0, which
disables it because it forces an unfree dependency in the stdenv.
2017-03-18 15:08:58 -04:00
Vladimír Čunát 2dba30af72
Merge recent staging
It's almost finished by Hydra now.
2017-02-12 19:51:01 +01:00
Will Dietz 947c26972b LLVM: Fix licensing metadata, closes #22679. (#22681)
* All projects are available under NCSA license,
  other than dragonegg.
* "Runtime" projects are dual-licensed under
  both NCSA and MIT:
  libc++, libc++abi, compiler-rt
* I don't mention MIT for compiler-rt as
  we only build it as part of LLVM.
2017-02-11 23:13:29 +01:00
Vladimír Čunát f4d1bcb9a7
llvm: fix #22567 oversaturated red icons 2017-02-11 11:03:59 +01:00
Will Dietz 10b8cfbdbd llvm: 3.9.0 -> 3.9.1 2016-12-28 12:56:55 -06:00
Vladimír Čunát b67ae8b33c
llvmPackages*.lldb: fixup input by disabling libedit
Fixes #20773.  https://llvm.org/bugs/show_bug.cgi?id=28898
Of course, feel free to find a better solution.

I love this copy&paste :-/
2016-11-28 19:02:15 +01:00
Shea Levy be02229f06 Add libcxxStdenv attribute to recent llvm package sets 2016-10-25 10:29:40 -04:00
Anthony Cowley 0f6ef7c41c llvm_39: fix on darwin 2016-10-19 01:53:13 -04:00
Aneesh Agrawal c04e46c87d llvm3.9: Remove -DCMAKE_BUILD_TYPE=Release flags
Since commit 183d05a in 2012, this is the default.
2016-10-01 13:55:42 -04:00
Vladimír Čunát d2965a7d85 llvm-3.9: move shared libLLVM to a separate output
Fixes #18840: too large closure of mesa_drivers.

Tested atop 16.09:
 - clang compiles a hello-world app;
 - mesa seems to link OK;
 - ispc builds.

Size comparison:
 - 80 MB of full llvm-3.7 on 16.03;
 - 200 MB of full llvm-3.9 on 16.09 before this patch;
 - 50 MB of libLLVM after this commit.
2016-09-24 18:32:45 +02:00
Vladimír Čunát a49cb9dcbe llvmPackages: generalize "3.9.0" string occurrences
Discussed:
https://github.com/NixOS/nixpkgs/commit/15af9082eb#commitcomment-18903919
2016-09-11 10:13:34 +02:00
Vladimír Čunát f5c3115063 llvmPackages_39: rc -> 3.9.0 2016-09-02 20:15:11 +02:00
Gabriel Ebner 15af9082eb llvmPackages_39: init at 3.9.0rc3 2016-08-31 07:13:35 +02:00