3
0
Fork 0
forked from mirrors/nixpkgs
Commit graph

561 commits

Author SHA1 Message Date
Will Dietz ac1ffe5cfd llvmPackages_7: 7.0.1 -> 7.1.0 2019-04-25 22:50:18 -05:00
Matthew Bauer a4cfd50004 libcxxabi: apply libcxxabi-wasm patch 2019-04-23 21:48:58 -04:00
John Ericson 9044f57d18 compiler-rt: Don't try to build a test executable
Got this trick from stack overflow to avoid needing compiler-rt to link
the test exe before building compiler-rt. a static lib isn't linked at
all, and so breaks the cycle.
2019-04-23 21:48:58 -04:00
John Ericson 1a7a96a093 stdenv, compiler-rt: Compress WASI conditionals 2019-04-23 21:48:58 -04:00
Matthew Bauer 556466d52f wasm: set -fno-exceptions
We need this to support C++ code.
2019-04-23 21:48:58 -04:00
Matthew Bauer d591a109be wasm: don’t assume musl 2019-04-23 21:48:57 -04:00
Matthew Bauer 9abff4af4f wasm: init cross target
Adds pkgsCross.wasm32 and pkgsCross.wasm64. Use it to build Nixpkgs
with a WebAssembly toolchain.

stdenv/cross: use static overlay on isWasm

isWasm doesn’t make sense dynamically linked.
2019-04-23 21:48:57 -04:00
Will Dietz 640fd92709 llvmPackages_7.compiler-rt: fix typo 2019-04-23 00:35:35 -05:00
John Ericson 6794b01658 clang 8, lldClangStdenv: Get LLVM's unwind working properly
Backport the `--unwindlib` flag, so it don't try to use libgcc on Linux
for hysterical reasons. The alternative of passing `-lunwind` always
would mess up C.
2019-04-12 13:19:48 -04:00
Matthew Bauer d453273fbf llvm8: support c++ in cross case
this adds libc++ to the LLVM cross, giving us access to the full
Nixpkgs set. This requires 4 stages of wrapped compilers:

- Clang with no libraries
- Clang with just compiler-rt
- Clang with Libc, and compiler-rt
- Clang with Libc++, Libc, and compiler-rt
2019-04-11 21:28:51 -04:00
Matthew Bauer d95c4d799c
Merge pull request #59294 from matthewbauer/clang8-fix-darwin
clang8: apply patch to disable xpc
2019-04-11 13:39:59 -04:00
Matthew Bauer 097122d2fd clang8: apply patch to disable xpc 2019-04-10 22:42:01 -04:00
Vladimír Čunát 526c4292ae
Merge branch 'staging-next'
This iteration was long, about five weeks (2fcb11a2), I think.
Darwin: it's missing a few thousand binaries and there's a make-netbsd
regression, but I suppose these aren't merge blockers.
2019-04-06 13:20:53 +02:00
Jan Tojnar cb1a20499a
Merge branch 'master' into staging 2019-04-05 11:37:15 +02:00
Tadeo Kondrak 341f65a1e4
lldb: install vscode plugin; vscode-extensions: add it 2019-04-04 02:30:26 -06:00
Frederik Rietdijk b40d752872 Merge master into staging-next 2019-03-23 09:18:41 +01:00
Wael M. Nasreddine 5af0780492
Merge remote-tracking branch 'origin/master' into staging
* origin/master: (693 commits)
  buildGoModule: use go_1_12 instead of go_1_11 (#58103)
  gitAndTools.lab: 0.15.2 -> 0.15.3 (#58091)
  signal-desktop: 1.22.0 -> 1.23.0
  added missing semicolon to documentation
  terminus_font_ttf: 4.46.0 -> 4.47.0
  buildGoModule: remove SSL env vars in favor of cacert in buildInputs (#58071)
  dav1d: init at 0.2.1
  dropbox-cli: 2018.11.28 -> 2019.02.14
  atlassian-confluence: 6.14.1 -> 6.14.2
  maintainers: update email for dywedir
  python.pkgs.hglib: use patch to specify hg path (#57926)
  chkrootkit: 0.52 -> 0.53
  radare2-cutter: 1.7.2 -> 1.8.0
  autorandr: 1.7 -> 1.8
  pythonPackages.pyhepmc: fix build
  llvm-polly/clang-polly: use latest llvm
  apulse: 0.1.11.1 -> 0.1.12, cleanup
  factorio: experimental 0.17.14 → 0.17.16 (#58000)
  sequeler: 0.6.7 -> 0.6.8
  nasc: 0.5.1 -> 0.5.2
  ...
2019-03-21 21:01:25 -07:00
Will Dietz baa62d9ac6
Merge pull request #57980 from dtzWill/update/compilerrt-crtbegin-patch
llvmPackages_{7,8}.compiler-rt: update crtbegin-and-end.patch
2019-03-21 17:47:51 -05:00
Will Dietz bb7e9e46a0
Merge pull request #57970 from dtzWill/update/llvm8
llvmPackages_8: rc5 -> 8.0.0 release!
2019-03-20 23:56:46 -05:00
Will Dietz 8d378eb822 llvmPackages_8: disable sanitizers/etc w/musl
Patch needs porting and was uncertain anyway.
2019-03-20 13:28:46 -05:00
Will Dietz 8fa5d4ab1a llvm8: remove failing test to fix w/musl 2019-03-20 13:28:36 -05:00
Will Dietz 1cca46a498 llvmPackages_{7,8}.compiler-rt: update crtbegin-and-end.patch
Minor changes after review, see linked page for discussion.
2019-03-20 13:26:49 -05:00
Will Dietz 5c4aed5c8a llvmPackages_8: rc5 -> 8.0.0 release 2019-03-20 09:56:20 -05:00
Graham Christensen 49551b6feb
llvm: mark as big-parallel
Big parallel jobs get many more (45) aarch64 cores than standard builds.
2019-03-17 08:29:14 -04:00
Will Dietz 91b1806476 llvmPackages_8: rc3 -> rc5 2019-03-12 16:39:44 -05:00
Frederik Rietdijk 5d7ab31949 Merge master into staging-next 2019-03-05 08:32:52 +01:00
Will Dietz 145f213806 llvmPackages_8: rc2 -> rc3 2019-03-03 21:54:26 -06:00
Matthew Bauer 7874ca5b61
Merge pull request #56645 from matthewbauer/llvm-8
llvm8: init
2019-03-03 21:00:36 -05:00
Matthew Bauer 52cb072562 llvm8: init 2019-03-01 23:42:10 -05:00
Frederik Rietdijk 205e0fc5bd Merge staging-next into staging 2019-03-01 09:22:21 +01:00
Frederik Rietdijk 2fcb11a244 Merge staging-next into master 2019-03-01 09:06:20 +01:00
Pierre Bourdon 7541e4f8ac
llvm/7/compiler-rt: define CMAKE_*_COMPILER_TARGET unconditionally
When building with -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON the compiler-rt
CMake configuration attempts to use CMAKE_*_COMPILER_TARGET variables,
which are usually only defined in cross-compilation mode.
2019-02-28 04:29:05 +01:00
Matthew Bauer 5c46f77249
Merge pull request #56197 from matthewbauer/cross-fixes3
Android and related cross fixes
2019-02-26 20:30:53 -05:00
Matthew Bauer b86e62d30d llvm: support cross compilation with useLLVM flag
You can build (partially) with LLVM toolchain using the useLLVM flag.
This works like so:

  nix-build -A hello --arg crossSystem '{ system =
    "aarch64-unknown-linux-musl"; useLLVM = true }'

also don’t separate debug info in lldClang

It doesn’t work currently with that setup hook. Missing build-id?
2019-02-26 19:45:35 -05:00
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
Will Dietz ed60483257
llvm-polly,clang-polly: Add llvm/clang variants w/polly support (#55065)
* llvm: build w/polly in-tree, optionally

Don't enable by default yet, defer rebuilds.

* top-level: llvm-polly, clang-polly

* bit hacky re:overrides
* need to explicitly set cmake flags for clang to link in polly
2019-02-25 15:20:52 -06:00
Matthew Bauer e36cd48b6e 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-24 17:00:48 -05:00
Matthew Bauer be6d030b98 llvm6: remove enableTargets
These are no longer used. We build all targets now.
2019-02-24 17:00:48 -05:00
Matthew Bauer 5d0b0bbf30
Merge pull request #56030 from matthewbauer/revert-72e176
Revert "libcxx: add linker scripts for libc++.a to ensure libc++abi.a…
2019-02-19 11:45:37 -05:00
Matthew Bauer 8cb7ea7dae Revert "libcxx: add linker scripts for libc++.a to ensure libc++abi.a is properly linked"
This reverts commit 72e1764199.

This causes the GHC panic reported in issue #55848.
2019-02-18 20:52:08 -05:00
Frederik Rietdijk 6fe10d2779 Merge master into staging-next 2019-02-16 09:29:54 +01:00
Frederik Rietdijk a25d48cd4f Merge master into staging 2019-02-14 11:35:50 +01:00
Tobias Mayer 2da868d81e Add shim for clock_gettime until macos >= 10.12 2019-02-13 13:08:57 +01:00
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