Commit graph

518 commits

Author SHA1 Message Date
Frederik Rietdijk
7257dedd7c Merge master into staging-next 2019-02-13 12:33:29 +01:00
Vladimír Čunát
c40f211499
Merge branch 'staging-next'
It's not completely without regressions, but ATM it seems to bring more
upsides than downsides and the iteration is too long already.
2019-02-10 14:20:49 +01:00
Matthew Bauer
b60b8226d6 llvm7: don’t link to libatomic on darwin 2019-02-09 13:40:28 -05:00
Luka Blaskovic
0ae0273803
llvm7: backport patches, fix building rust crates with lto
See: https://github.com/rust-lang/rust/issues/57762
(cherry picked from commit c340704bd3)
2019-02-01 18:24:54 +01:00
Will Dietz
75df522844
Merge #54998: llvm7: replace patch with official upstream commit
(cherry picked from commit 442a74bdf8)
2019-02-01 18:18:05 +01:00
Will Dietz
636ae80940 llvm7: replace patch with official upstream commit
Hopefully this also addresses any problems enountered
with the patch used previously.
2019-01-31 10:24:37 -06:00
Jörg Thalheim
6f6900495d
Merge pull request #54323 from lblasc/rust132
rust: 1.31.0 -> 1.32.0
2019-01-28 16:14:57 +00:00
Matthew Bauer
bb3683d778
Merge pull request #54624 from matthewbauer/libcxx
cc-wrapper: add libcxx for libcxxClang
2019-01-27 13:55:18 -05:00
Matthew Bauer
77550df8e6 cc-wrapper: add libcxx for libcxxClang
clang needs to find headers + libraries for compiling with libc++. We
need to add a libcxx argument to cc-wrapper. This means you do not
have to pass in c++ headers directly.

This resolves the last case remaining of #30670. Darwin clang++ now
works properly.

Fixes #30670
2019-01-26 22:45:15 -05:00
Luka Blaskovic
c340704bd3 llvm7: backport patches, fix building rust crates with lto
See: https://github.com/rust-lang/rust/issues/57762
2019-01-22 08:09:37 +00:00
Viktor Kleen
469ecc7098
llvm: support PowerPC 2019-01-19 18:04:05 -08:00
Will Dietz
946be0ed99 llvm7: patch to fix PR39427
See linked issue for discussion,
but key bits:

* rustc breaks without this
* fix changes ABI, may become 7.1.0
2019-01-16 16:54:59 -06:00
Orivej Desh
d6f401e132 llvm_6, llvm_7: build all default targets (#53941)
This makes LLVM tools (including dependent tools such as LLD) readily useful in
more situations, foresees such needed additions as BPF and NVPTX, and brings
llvm_6 and newer on par with the current default llvm_5.
2019-01-15 04:59:49 +00:00
Will Dietz
5e2ac7e5fd llvm6: enable BPF target here as well 2019-01-13 21:30:24 -06:00
Will Dietz
3054cbd3f2 llvm: include BPF target too, otherwise can't build bcc 2019-01-13 20:59:09 -06:00
Franz Pletz
237deba4e7
Merge remote-tracking branch 'origin/master' into staging 2019-01-10 16:00:34 +01:00
Vladimír Čunát
287144e342
Merge branch 'master' into staging-next 2019-01-10 13:07:21 +01: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
Daniel Goertzen
1c10efc912 add generic x86_32 support (#52634)
* add generic x86_32 support

- Add support for i386-i586.
- Add `isx86_32` predicate that can replace most uses of `isi686`.
- `isi686` is reinterpreted to mean "exactly i686 arch, and not say i585 or i386".
- This branch was used to build working i586 kernel running on i586 hardware.

* revert `isi[345]86`, remove dead code

- Remove changes to dead code in `doubles.nix` and `for-meta.nix`.
- Remove `isi[345]86` predicates since other cpu families don't have specific model predicates.

* remove i386-linux since linux not supported on that cpu
2019-01-06 12:57:36 -06:00
Will Dietz
cc97d49404 llvm7: 7.0.0 -> 7.0.1 2018-12-29 12:54:57 -06:00
Jan Tojnar
ff22d90308
mesa_noglu: fix build
LLVM’s `LLVM_TARGETS_TO_BUILD` build flag defauls to `all`, which contains
`AMDGPU` among others. [1] Changes in llvm [2] switched to explicitly listing
host and target platforms, excluding the AMDGPU target, which is required
for Mesa to build.

[1]: db50b6fe39/CMakeLists.txt (L286-L302)
[2]: https://github.com/NixOS/nixpkgs/pull/52031
2018-12-24 23:41:36 +01:00
Jan Tojnar
192f4171d8
llvm: allow passing arbitrary targets
Mesa requires AMDGPU target but previously, we only allowed a pre-defined set
of targets.
2018-12-24 15:38:55 +01:00
Jan Tojnar
ef935fa101
Merge branch 'master' into staging 2018-12-24 15:02:29 +01: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
James Kay
72e1764199
libcxx: add linker scripts for libc++.a to ensure libc++abi.a is properly linked 2018-12-17 18:59:19 +00:00
James Kay
d8699a9a5b
libcxxabi: also install libc++abi.a 2018-12-17 12:22:29 +00: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
Matthew Bauer
1d6b0eb7dd lldb: add cf-private on darwin
This is necessary to avoid objc errors like:

    "_OBJC_CLASS_$_NSDictionary", referenced from:
        objc-class-ref in liblldbHost.a(HostInfoMacOSX.mm.o)
        objc-class-ref in liblldbPluginPlatformMacOSX.a(PlatformiOSSimulatorCoreSimulatorSupport.mm.o)
  ld: symbol(s) not found for architecture x86_64
2018-12-15 13:27:01 -06:00
Jörg Thalheim
e84bd8db9f llvm_7: fix cross-compilation 2018-12-14 09:40:52 +00:00
Jörg Thalheim
fd463810ae llvm_6: fix cross-compilation 2018-12-14 09:40:48 +00:00
John Ericson
4b7a615899 llvm 7: Allow for specifying an arbitrary list of backends to build 2018-12-13 01:14:24 -05:00
Jörg Thalheim
2ca39fe86b llvm_7: fix cross-compiling 2018-12-08 19:25:43 +00:00
Michael Raskin
4a854344b7
Merge pull request #48721 from oxij/tree/mass-rebuild-complicated-cleanups
treewide: mass rebuild complicated cleanups
2018-10-29 19:17:28 +00:00
Jan Malakhovski
110f16e43e llvm_5: cleanup with a mass rebuild, but no idea why, and can not test 2018-10-21 18:26:37 +00:00
John Ericson
c701d6cb21 Merge remote-tracking branch 'upstream/master' into staging 2018-09-25 14:20:27 -04:00
John Ericson
2b4b7d4ef3
Merge pull request #47233 from oxij/tree/mass-rebuild-noop-cleanups
treewide: mass rebuild noop cleanups
2018-09-25 00:04:52 -04:00
Vladimír Čunát
3a09a4b579
Merge branch 'master' into staging
Hydra: ?compare=1480463
2018-09-24 21:18:23 +02:00
Will Dietz
5b2de5126d llvm7: update musl patch for sanitizers 2018-09-24 11:19:05 -05:00
Will Dietz
9fe245d7e0 llvm7: optionally use libpfm (exegesis), default off w/darwin 2018-09-23 13:30:18 -05:00
Will Dietz
b3645d74d1 llvm7: only use 1 number in version suffix, upstream changed
See llvm 2a6cf85828509e89e18739e5f4b9a958820d66d4
2018-09-23 13:30:18 -05:00
Will Dietz
e3030a2908 libc++7: prefer 'optional' as suggested by comment 2018-09-23 13:30:18 -05:00
Will Dietz
167e799d81 llvm*: http -> https, prefer releases.llvm.org 2018-09-23 13:30:18 -05:00
Will Dietz
0920652c5c llvm7: update hashes, they did change after all.
Pretty sure they did last time too :).
2018-09-23 13:30:17 -05:00
Will Dietz
fca31e1a68 llvm7: use final release tarballs now that they're available 2018-09-23 13:30:17 -05:00
Will Dietz
621fd23cb5 compiler-rt: quickfix codesign patch by dropping hunks 'already applied'
Quite possibly this is not right.
2018-09-23 13:30:17 -05:00
Will Dietz
ba701ef329 comment 2018-09-23 13:30:17 -05:00
Will Dietz
38699890d6 llvm-manpages: fix build by removing references to $lib output 2018-09-23 13:30:17 -05:00
Will Dietz
b7692f5be5 llvm7: patch test shebang (otherwise test fails) 2018-09-23 13:30:16 -05:00
Will Dietz
bb110d80fc llvm7: init at 7.0.0rc3
Copy of 6 + updated hashes
2018-09-23 13:30:16 -05:00
Jan Malakhovski
ed10043f75 llvmPackages_6.libcxx: cleanup with a mass rebuild 2018-09-23 17:30:32 +00:00
Jan Malakhovski
d2674c5e15 llvm_5: cleanup with a mass rebuild 2018-09-23 17:30:32 +00:00
Dan Peebles
110c252870 cctools: support LTO on Darwin
LTO is disabled during bootstrap to keep the bootstrap tools small and
avoid unnecessary LLVM rebuilds, but is enabled in the final stdenv
stage and should be usable by normal packages.
2018-09-16 02:12:11 -04: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
Frederik Rietdijk
944586699e llvmPackages_34: remove unused 2018-08-04 13:45:59 +02:00
Matthew Bauer
b32d0a41d0 llvm: fix triple setting
llvm is a library so it should just need to know about build & host.
GCC will already have a cross compiler built.

/cc @Ericson2314 @dtzWill
2018-08-02 17:04:47 -04:00
Matthew Bauer
f3fc04bfd2
llvm6: disable tests on cross compiler
This seems to be broken currently.

https://hydra.nixos.org/build/77597880/nixlog/1

/cc @ericson2314 @dtzWill
2018-07-31 21:46:07 -04:00
Matthew Bauer
c7d77c90c6
llvm5: disable tests on cross compilers
This appears to be broken currently.

https://hydra.nixos.org/build/77597880

/cc @Ericson2314
2018-07-31 21:44:58 -04:00
Lluís Batlle i Rossell
f54b387b63 Merge remote-tracking branch 'central/master' into viric_clean 2018-07-28 19:25:14 +02:00
Daiderd Jordan
2e09219564
llvm-manpages: fix build 2018-07-28 00:08:31 +02:00
Daiderd Jordan
3ec81ae27e
llvm-packages: fix manpages with python-boot and cleanup
On darwin llvmPackages is built using python-boot to avoid dependencies
in the stdenv, but we can't and shouldn't use that when building the
manpages since it depends on python packages.
2018-07-28 00:08:26 +02: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
bf3a588f64 llvm_6: enable "dump()" methods even w/assertions off 2018-07-05 07:22:53 -05:00
Vladimír Čunát
f7781f5293
Merge branch 'master' into staging 2018-06-30 01:41:59 +02:00
Will Dietz
8cd268adf0 llvm_6: refresh sanitizers-non-gnu patch 2018-06-29 11:54:21 -05:00
Will Dietz
4a8104af49 llvm6: 6.0.0 -> 6.0.1 2018-06-29 11:54:21 -05:00
Will Dietz
27351f8b4b
Merge pull request #42454 from dtzWill/fix/llvm-triples-unconditional
llvm-{5,6}: unconditionally set triples
2018-06-27 10:04:40 -05:00
Will Dietz
8575fd554c
Merge pull request #42456 from dtzWill/fix/llvm4-triples-unconditional
llvm4: unconditionally set triples, not just on musl.
2018-06-27 10:02:58 -05:00
Will Dietz
632624691d llvm-3.8: don't set triples a second time on musl
I should have "moved" the flags instead of "copying" them earlier :).
2018-06-25 09:55:36 -05: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
db7041a047 libc++{,abi}_38: musl fixes, cmake is nativeBuildInput 2018-06-23 15:53:45 -05:00
Will Dietz
0b7cc25d19 clang_38: musl fixup, cmake should be nativeBuildInput 2018-06-23 15:53:45 -05:00
Will Dietz
ae78847b50 clang_39: fix w/musl (same as clang_4) 2018-06-23 15:53:44 -05:00
Will Dietz
e4fffae0cf llvmPackages_39.libcxx: minor cleanup 2018-06-23 15:53:44 -05:00
Will Dietz
dd4299a27c llvm_39: musl patches, same as llvm_4 2018-06-23 15:53:44 -05:00
Will Dietz
ebcdd8b9b0 llvm_4: refactor patch location, will be sharing shortly 2018-06-23 15:53:44 -05:00
Will Dietz
68351290ad llvm_38: musl patches + options
Same as those added to llvm_39 a few commits ago.
2018-06-23 15:53:44 -05:00
Will Dietz
4ef4e0f44b llvm_38: always apply sigaltstack patch 2018-06-23 15:53:44 -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
Will Dietz
0ac09be295 llvm4: unconditionally set triples, not just on musl.
Split off from #42454 as requested.
2018-06-23 14:07:49 -05:00
Will Dietz
7088489223 llvm-{5,6}: unconditionally set triples
Previously we only set these when using musl.

See https://github.com/NixOS/nixpkgs/pull/42452#discussion_r197618464

Same should be done for changes in #42452,
I'll add a follow-up commit doing so in the PR containing this
or wherever makes sense-- depending on how review/merging of that goes.

Sending similar changes for LLVM 4 to master, as suggested.
2018-06-23 14:06:55 -05:00
John Ericson
92cef7ad42 compiler-rt 5: Fix double space 2018-06-14 20:25:38 -04:00
John Ericson
6e7e22da70 llvm 5: split out compiler-rt and remove libcxxabi dep
We already did them on non-mass-rebuild llvm 6. Also, this allows
simplifying the stdenv booting.

We were missing the libcxxabi dep in compile-rt in llvm 6, so fixed that
too.
2018-06-14 19:22:15 -04:00
John Ericson
fc9644d4c9 llvm 6: Fix libcxxabi impurity and darwin sanitizers 2018-06-14 19:19:54 -04:00
John Ericson
1eacf21bd4 darwin bootstrapping: Avoid overriding aliases for LLVM
Respect the fix points and aliases by overriding originals.
2018-06-14 15:05:18 -04: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
e358fff0d6 llvm: use native cmake for libc++abi
Finish what 1cb1b9193b started.
2018-06-13 21:02:04 -04:00
Matthew Bauer
1cb1b9193b llvm: use native cmake for libc++abi 2018-06-12 20:36:16 -04:00
Benjamin Saunders
b0d0b1adfe clang_6: fix sanitizers under libstdc++ 2018-05-24 15:04:30 -07:00
John Ericson
205fc55ea2 Merge remote-tracking branch 'upstream/staging' into compiler-rt 2018-05-24 02:58:00 -04:00
Benjamin Saunders
46eeef1898 tests.cc-wrapper: verify building with sanitizers 2018-05-24 02:57:44 -04:00
Benjamin Saunders
16da44b5c1 llvm and clang 6: factor out compiler-rt, fix libstdcxxStdenv sanitizer headers
Build compiler-rt separate from llvm and clang, and just add as an extra
library in the wrapper.
2018-05-24 02:57:43 -04:00
John Ericson
e5175fbf20 Merge remote-tracking branch 'upstream/master' into ios-mini-staging 2018-05-23 16:01:05 -04:00
John Ericson
d7144e708b Merge remote-tracking branch 'upstream/master' into staging 2018-05-23 16:00:04 -04:00
John Ericson
58fd684c76 llvm: Separate tools and libraries for clarity
Especially provides clarity with respect to cross.
2018-05-23 14:42:06 -04:00