Commit Graph

35 Commits

Author SHA1 Message Date
Matthew Bauer
ead13a3aca llvm: don’t use targetPlatform
LLVM should be target independent because it will work with all
machine types. This is different from GCC where it needs to know what
target to build ahead of time.
2019-02-26 19:45:35 -05:00
Matthew Bauer
09ff7707ae llvm3.{8,9}: use old CMAKE_INSTALL_NAME_DIR value
adcf4aa524 broke these two. The old way
seems to work and might still avoid the original lldb issues.
2019-01-06 22:11:38 -06:00
Jörg Thalheim
1b146a8c6f
treewide: remove paxutils from stdenv
More then one year ago we removed grsecurity kernels from nixpkgs:
https://github.com/NixOS/nixpkgs/pull/25277

This removes now also paxutils from stdenv.
2018-12-22 12:55:05 +01:00
Matthew Bauer
adcf4aa524 lldb: use provided INSTALL_NAME_DIR
Fixes #47886

We don’t want llvm to set the install name for us. It should be the
one given to us.
2018-12-15 13:27:02 -06: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
Lluís Batlle i Rossell
66d7126255 Take me (viric) out of most maintenance
Since years I'm not maintaining anything of the list below other
than some updates when I needed them for some reason. Other people
is doing that maintenance on my behalf so I better take me out but
for very few packages. Finally!
2018-07-22 21:50:19 +02:00
volth
52f53c69ce pkgs/*: remove unreferenced function arguments 2018-07-21 02:48:04 +00:00
Will Dietz
c5e90a9292 llvm_{38,39}: unconditionally set triples, not just w/musl
Follow-on to same changes made to other versions:
See #42454, #42456.
2018-06-23 16:53:38 -05:00
Will Dietz
182de524a1 llvm_{39,4}: refactor to use same patch file 2018-06-23 15:53:44 -05:00
Will Dietz
a1bf9b6094 llvm_39: disable sanitizers/xray bits when using musl
Don't have a fix for this handy and don't need it yet
so for now just disable.
2018-06-23 15:53:44 -05:00
Will Dietz
b39fb5525b llvm_39: set triples as well 2018-06-23 15:53:43 -05:00
Will Dietz
f0c154a109 llvm_39: apply llvm_4 compiler-rt patch for musl as well 2018-06-23 15:53:43 -05:00
Will Dietz
04fb628780 llvm_39: unconditionally apply sigaltstack fix
(as we do on other LLVM builds)
2018-06-23 15:53:43 -05:00
Will Dietz
96cfd14fd2 llvm-3.9: patches to fix w/musl
Mostly same as used with LLVM 4.0
2018-06-23 15:53:43 -05:00
John Ericson
7156f46949 llvm 3.8+: Remove unneeded libcxxabi dependency
Evidentally this hasn't been needed for a while
2018-06-13 21:06:00 -04:00
John Ericson
e65259f00c LLVM: Get binutils plugin header from libbfd 2017-11-13 08:46:13 -05:00
Vladimír Čunát
e0a36522a7
llvm 3.7--4: fixup build with glibc-2.26 2017-11-07 09:17:00 +01:00
Dan Peebles
b426c85ce2 Get rid of most @rpath nonsense on Darwin
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.
2017-10-08 16:13:46 -04:00
John Ericson
bf7b521500 treewide: Fix some references to binutils
- Compiler's shouldn't use `binutils.dev` as that doesn't yet exist
   with a cross binutils.

 - Last two `binutils.binutils` which weren't reverted
2017-09-14 18:12:54 -04: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
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
Anthony Cowley
0f6ef7c41c llvm_39: fix on darwin 2016-10-19 01:53:13 -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
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