Commit graph

670 commits

Author SHA1 Message Date
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
Matthew Justin Bauer 895fef2b19 clang3.4: still needs libedit
https://hydra.nixos.org/build/72965931/nixlog/1
(cherry picked from commit 2d90138b3b)
2018-05-23 11:46:40 -04:00
Matthew Bauer 9416f29800 llvm: remove libedit from clang
clang should never need libedit. From what I understand this is only
needed by LLDB.

https://github.com/llvm-mirror/clang/search?q=libedit
(cherry picked from commit 9ee69c27c9)
2018-05-23 11:09:12 -04:00
Matthew Bauer d417ada9a6 clang: only link if LLVMgold exists
buildEnv now errors with broken symlinks. Lots of things like this
still exist.

Discussion in #39038.

(cherry picked from commit 7b73c7f49a)
2018-05-23 11:09:05 -04:00
John Ericson c641a74bd6 Merge remote-tracking branch 'upstream/master' into ios-mini-staging 2018-05-23 09:45:25 -04:00
John Ericson 18742471af Merge remote-tracking branch 'upstream/master' into staging
Use newer vagrant from master
2018-05-23 09:40:37 -04:00
John Ericson acc9843691 llvm: Starting to fix Clang wrapping and stdenv building for cross 2018-05-23 00:42:47 -04:00
John Ericson 25e866a7fe treewide: Less {cc,bintools}-wrapper eta expansion
Also makes the LLVM ones more correct
2018-05-23 00:27:30 -04:00
John Ericson 4f7cdd35d5
Merge pull request #40139 from obsidiansystems/modular-setup-hooks
treewide: Modular setup hooks
2018-05-07 15:32:10 -04:00
John Ericson 2110c0bd30 treewide: Use pkgs/build-support/roles.bash to remove copy pasta
Also fix some setup hooks that unnecessarily used environment hooks,
which revolted in the same variable being modified too many times.
2018-05-07 15:10:37 -04:00
Will Dietz 27d716f4b5 llvm5: 5.0.1 -> 5.0.2 2018-05-04 11:03:21 -05:00
John Ericson 88d18d2e04
Merge pull request #39947 from obsidiansystems/libcxx-cross
lib{std,}c++: Fix setup hooks for cross
2018-05-03 18:20:13 -04:00
John Ericson 39df5831ca lib{std,}c++: Fix setup hooks for cross 2018-05-03 17:55:03 -04:00
Matthew Justin Bauer 2d90138b3b
clang3.4: still needs libedit
https://hydra.nixos.org/build/72965931/nixlog/1
2018-04-18 13:13:03 -05:00
Matthew Bauer 9ee69c27c9 llvm: remove libedit from clang
clang should never need libedit. From what I understand this is only
needed by LLDB.

https://github.com/llvm-mirror/clang/search?q=libedit
2018-04-17 09:52:08 -05:00
Matthew Bauer 7b73c7f49a clang: only link if LLVMgold exists
buildEnv now errors with broken symlinks. Lots of things like this
still exist.

Discussion in #39038.
2018-04-17 09:50:21 -05:00
Matthew Glazar 2505aa51a4 clang: fix install on Darwin
As of Nix 2.0, building the `user-environment` package on macOS (Darwin)
fails because LLVMgold.so is a broken symlink. Fix the issue by not
creating the symlink in the first place, since it wouldn't be used on
Darwin anyway.
2018-04-15 21:12:03 -07:00
Matthew Glazar d3d0c0196e clang: refactor post-install comments
Throughout the evolution of the Clang packages, some comments have
become misplaced. Put some of Clang's postInstall comments next to the
lines they refer to.
2018-04-15 21:10:22 -07:00
Tuomas Tynkkynen 9c292a0568 llvm_34, llvm_35: Bring ARMv7 back to platforms
This is required for GHC.
2018-04-04 21:57:57 +03:00
Tuomas Tynkkynen bec461a35a llvm_34, llvm_35: Disable on aarch64
https://hydra.nixos.org/build/71176565
https://hydra.nixos.org/build/71167754
2018-03-25 16:39:10 +03:00
Tuomas Tynkkynen ef64208eba Merge commit '3ab2949' from staging into master
Conflicts:
	pkgs/development/compilers/llvm/6/llvm.nix
	pkgs/servers/home-assistant/component-packages.nix
2018-03-15 22:30:56 +02:00
Will Dietz b2e6952f37 llvm4: same treatment 2018-03-14 20:04:38 -05:00
Will Dietz 60bf299e6a llvm6: patch to enable sanitizers w/musl 2018-03-14 20:04:21 -05:00
Will Dietz a8824ab4fb llvm_5: patch sanitizers to enable w/musl
https://gitweb.gentoo.org/proj/musl.git/plain/sys-libs/compiler-rt-sanitizers/files/compiler-rt-sanitizers-5.0.0-musl-patches.patch
2018-03-14 20:04:20 -05:00
Will Dietz f911edaf43 llvm6: Build with support for the experimental WASM backend 2018-03-14 15:35:24 -05:00
Jan Malakhovski 7079e744d4 Merge branch 'master' into staging
Resolved the following conflicts (by carefully applying patches from the both
branches since the fork point):

   pkgs/development/libraries/epoxy/default.nix
   pkgs/development/libraries/gtk+/3.x.nix
   pkgs/development/python-modules/asgiref/default.nix
   pkgs/development/python-modules/daphne/default.nix
   pkgs/os-specific/linux/systemd/default.nix
2018-03-10 20:38:13 +00:00
Will Dietz b09b557fb7
Merge pull request #34457 from dtzWill/feature/llvm-6
llvm 6: init
2018-03-08 12:38:31 -06:00
Will Dietz b36ea92f88 llvm6: rc3 -> final 2018-03-08 10:01:35 -06:00
Will Dietz 08db02e37a llvm6: rc2 -> rc3 2018-03-07 19:03:10 -06:00
Will Dietz 9306e2fb6f llvm6: remove copied "remove this on next rebuild" value :) 2018-03-07 19:03:09 -06:00
Will Dietz c3e16a42ee llvm6: drop perl and groff, as in llvm4/5 2018-03-07 19:03:09 -06:00
Will Dietz e876e97ef0 llvm6: musl compat 2018-03-07 19:03:08 -06:00
Will Dietz 62011cfaea llvm6: rc1 -> rc2 2018-03-07 19:03:07 -06:00
Will Dietz 11cb7d00ca llvm6: same python output fix from #33871
Unlike that PR, however, this doesn't need to go to staging
since no one depends on a package that doesn't exist yet :).
2018-03-07 19:03:07 -06:00
Will Dietz 0d90539cda llvm6: no need to patch on aarch64, already applied 2018-03-07 19:03:06 -06:00
Will Dietz a192c9d67a lld: Add dep on libxml2 2018-03-07 19:03:06 -06:00
Will Dietz 42c3a74a2a llvm6: rc1, hashes, top-level 2018-03-07 19:03:05 -06:00
Will Dietz 4463de6ec7 llvm6: copy llvm5 2018-03-07 19:03:05 -06:00
Will Dietz 535ba5f7f7 lldb_4: fix w/gcc7
Same fix used in swift4, FWIW.
2018-03-07 17:38:15 -06:00
Will Dietz 435288caca llvm_4: fix cosmetic issue in help output
Can be observed in programs like "llvm-link".
2018-02-26 08:30:20 -06:00
Will Dietz e5e69a7aed libc++5: tweak expression so as to avoid rebuild on non-musl for now 2018-02-19 12:43:42 -06:00
Will Dietz fa8a511260 llvmPackages_{4,5}: musl compat 2018-02-19 11:19:32 -06:00
Will Dietz 5bf5e6eebf llvm4: always apply fix, improve compat, fix w/musl 2018-02-13 09:45:01 -06:00
Will Dietz 64e4c98a7f llvm-5: add extra 'python' output for opt-viewer tool 2018-02-02 06:30:09 -06:00
Daniel Peebles d18af2680d
Revert "clang-{4,5}: prefer python3, much friendlier for cross" 2018-01-23 10:13:07 -05:00
John Ericson 796e2e8c75
Merge pull request #34177 from dtzWill/fix/llvm-remove-unneeded-deps
llvm-{4,5}: remove perl, groff -- not needed
2018-01-22 19:26:29 -05:00
Will Dietz 973d4f5354 clang-{4,5}: prefer python3, much friendlier for cross 2018-01-22 17:31:37 -06:00
Will Dietz 7e52676240 llvm-{4,5}: remove perl, groff -- not needed 2018-01-22 17:29:14 -06:00
Vladimír Čunát 82c78b86c7
clang: mass-rebuild code cleanup 2018-01-21 15:48:35 +01:00
Vladimír Čunát a94c7ba096
Merge branch 'master' into staging
Hydra: ?compare=1428079
2018-01-21 15:47:08 +01:00
Vladimír Čunát 5fb5beb929
Merge #33948: {llvm,clang}-{4,5}: better man-pages
Don't rebuild entire projects just to get manpages.
2018-01-21 11:35:10 +01:00
Vladimír Čunát 5fafb7ef73
clang-3.8: fixup build after #33953 917429233b 2018-01-20 09:48:35 +01:00
Tuomas Tynkkynen 884a167f87 Merge remote-tracking branch 'upstream/master' into staging 2018-01-17 12:52:47 +02:00
Tuomas Tynkkynen 67c73b4e64 Merge commit '2e56ba' from staging into master 2018-01-17 12:50:46 +02:00
Will Dietz 74bcd87ed9 lldb-{4,5}: install manpage 2018-01-16 15:15:41 -06:00
Daiderd Jordan 917429233b
clang: patch cmake files for lib output
Fixes cmake build issues introduced in #33342.
2018-01-16 21:46:43 +01:00
Will Dietz 514f67e3a8 clang-{4,5}: set postBuild to empty string to avoid rebuild for now 2018-01-16 14:08:59 -06:00
Will Dietz 33c132e9b3 llvm-{4,5}: don't build entire project to get the manpages
Much cheaper to build this way.

Also this gives them a different name to avoid confusion
and clutter when using `nix-env -qaP` or similar.
2018-01-16 14:08:58 -06:00
Daiderd Jordan e66a5f8862
Merge pull request #33342 from LnL7/clang-outputs
clang: add lib output
2018-01-07 09:43:38 +01:00
Daiderd Jordan 812f7714e2
clang: move libclang to separate lib output
Currently clang-unwrapped can't be used as a buildInput without also
shadowing clang/clang++ of a clang based stdenv.
2018-01-02 00:50:01 +01:00
Vladimír Čunát 1fcd92ce92
Merge branch 'master' into staging
A few thousand rebuilds from master, again.
Hydra: ?compare=1422362
2017-12-31 09:53:49 +01:00
Dmitry Kalinkin 6d9769663d
cc-wrapper: allow compilers to specify unsupported hardening modes
Fixes: 0fd7ef61b2 ('clang_34: Disable hardening bits (#28543)')
2017-12-30 12:23:25 -05:00
Orivej Desh e63b2fbfb3
Merge pull request #32870 from dtzWill/update/llvm-5.0.1
llvm 5: 5.0.0 -> 5.0.1
2017-12-29 07:59:15 +00:00
John Ericson 4651407654 darwin stdenv: Make stdenv.cc, not stdenv, bring in libcxx
stdenvNoCC should not inject any C++ standard library, just as it
doesn't inject any C standard library. stdenv still does, but only
indirectly through stdenv.cc. Wrapped clangs can be simplified now that
they don't need to worry about clobbering CoreFoundation when replacing
the C++ standard library implementation.

This generally-good cleanup should assist with debugging some C++
failures in #26805.
2017-12-25 19:32:07 -05:00
Will Dietz e9aa0d3f0f llvm 5: 5.0.0 -> 5.0.1 2017-12-21 15:54:08 -06:00
John Ericson 84fb59e0be clang multi: Fix post bintools wrapper 2017-12-13 16:08:46 -05:00
John Ericson 7ef4448c97 Merge commit '9d8f9b2e531bf95a700a949d879927fb6996ffc9' into binutils-wrapper 2017-12-13 16:08:36 -05:00
John Ericson 2bba929062 bintools-wrapper: Import separately from cc-wrapper 2017-12-13 16:08:18 -05:00
Will Dietz 9d8f9b2e53 Add clang multilib variants (x64_64-only, 64/32bit), basic multilib tests 2017-12-05 07:17:14 -06:00
Tuomas Tynkkynen fc26ff04b2 llvm: Include aarch64 patch in repo
The URL is already a dead link.
2017-11-29 17:01:17 +02:00
Tuomas Tynkkynen 0ea6ab8097 llvm_{4,5}: Add Aarch64 patch
https://reviews.llvm.org/D40423
2017-11-28 14:51:40 +02:00
John Ericson e65259f00c LLVM: Get binutils plugin header from libbfd 2017-11-13 08:46:13 -05:00
Piotr Bogdan b261c73dce llvm_35: fix build with glibc 2.26 2017-11-10 19:16:26 +00:00
Piotr Bogdan 38ac67fc9a llvm_34: fix build with glibc 2.26 2017-11-10 19:16:11 +00:00
aszlig 44cb95a234
llvmPackages/libc++: Fix build against glibc 2.26
This is very similar to what we had in bb0b0822ef.

The xlocale.h header is no longer existing in glibc version 2.26, so we
need to avoid including it.

I've tested building against all of the libcxx attributes of LLVM 3.5,
3.7, 3.8, 3.9, 4 and 5.

All of them succeeded except version 3.5, which failed because of an
unrelated issue (build of libc++abi has failed, one of its
dependencies), so I only verified whether the patch applies cleanly.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @vcunat
2017-11-08 22:08:11 +01:00
Vladimír Čunát e0a36522a7
llvm 3.7--4: fixup build with glibc-2.26 2017-11-07 09:17:00 +01:00
Daniel Peebles 416979f3f7 Merge pull request #30150 from copumpkin/no-rpath-nonsense
Get rid of most @rpath nonsense on Darwin
2017-10-08 16:21:27 -04: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
Orivej Desh 109acb11c3 Merge pull request #30122 from phi-gamma/llvm-https
llvm: download source over https
2017-10-05 20:34:48 +00:00
Philipp Gesang 0e2e3afd65
llvm: download source over https
The source distribution contains binaries (probably for testing) that
make the Avira virus scanner treat it as malware on account of a “bad
ELF header”. Apart from being preferable in general, the HTTPS download
makes the file opaque to the overeager AV scanner in transparent
proxying setups.

Also adapt to the fact that the canonical downloads now point to a URL
like this:

    https://releases.llvm.org/4.0.1/llvm-4.0.1.src.tar.xz
2017-10-05 12:17:29 +02:00
Will Dietz fb7ebf3c93 llvm: init 5.0 2017-09-26 16:51:17 -05:00
John Ericson 0d12d040e7 Merge pull request #29402 from obsidiansystems/binutils-output-ref
treewide: Fix some references to binutils
2017-09-14 18:51:12 -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 349a09228e Merge pull request #29246 from LnL7/clang-stdenv
clang-stdenv: move libstdcxxHook to cc-wrapper
2017-09-13 16:21:41 -04:00
Daiderd Jordan ad486c48a6
llvm-packages: apply cc-wrapper/stdenv changes to older versions 2017-09-13 20:51:52 +02:00
Daiderd Jordan ac88515052
clang-stdenv: move libstdcxxHook to cc-wrapper 2017-09-13 20:51:41 +02:00
John Ericson 5aec3f96a2 treewide: Use *Platform.extensions 2017-09-13 11:16:10 -04:00
Daiderd Jordan 907222098a
clang-stdenv: use libstdcxxHook when targeting linux 2017-09-05 21:37:06 +02:00
Franz Pletz 637e33e616
llvm: disable failing tests on i686 2017-08-22 01:40:54 +02:00
davidak 3270aa896b replace "Mac OS X" and "OS X" with "macOS"
as it is the official name since 2016

https://en.wikipedia.org/wiki/Macintosh_operating_systems#Desktop

exception are parts refering to older versions of macOS like

"GUI support for Mac OS X 10.6 - 10.12. Note that Emacs 23 and later [...]"
2017-08-07 21:41:30 +02:00
Daiderd Jordan 37c599fe8c Merge pull request #26429 from aherrmann/pr_llvm_4_fix_debug
llvm_4: Fix debugVersion
2017-07-17 21:27:52 +02:00
Vladimír Čunát 1e1472ed93
llvmPackages_4: don't change *.outputs
It was blocking channel(s).  See:
https://github.com/NixOS/nixpkgs/pull/26818#issuecomment-315020922
2017-07-13 13:07:42 +02:00
Vladimír Čunát f171b95e44
Merge #26905: llvmPackages_4: 4.0.0 -> 4.0.1 2017-07-05 09:01:26 +02:00
Will Dietz 495a022e44 llvmPackages_4: 4.0.0 -> 4.0.1 2017-06-27 09:05:37 -05:00
Daiderd Jordan 071803955e
llvm-packages: mark manpages as lowPrio 2017-06-26 20:25:14 +02:00
Daiderd Jordan f60a36a910
llvm-packages: get rid of extra build depedencies for manpages
Fixes #26756
2017-06-26 20:24:16 +02: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
Jörg Thalheim 7d12608069 llvmPackages_3.7: fix libnames output of llvm-config
see also 4c4f50ce76
2017-06-16 16:23:42 +01:00
Andreas Herrmann 1cfed62073 llvm_4: Fix debugVersion
Previously failed on installation phase
when `substituteInPlace` could not find the cmake exports file.
2017-06-06 21:39:18 +02:00
Frederik Rietdijk 7578940392 Merge remote-tracking branch 'upstream/master' into HEAD 2017-06-05 12:46:08 +02:00
Daiderd Jordan 9e2aba3572
darwin-stdenv: remove python-sphinx and a bunch of other dependencies from the stdenv 2017-06-01 23:23:56 +02:00
Matthew Bauer 29acc510c0
lldb: fix on Darwin
This gives a few fixes for LLDB on Darwin. Note: you will have to do code
signing for it to work outside of root!
2017-05-31 19:59:36 -07:00
Daiderd Jordan b3fb9178e8
llvm-packages: add option to enable manpages 2017-05-31 20:16:13 +02:00
Vladimír Čunát 538aa0f808
Merge branch 'staging' (early part)
The comparison looks nice on Hydra.
2017-05-30 16:08:21 +02:00
Daiderd Jordan 4e88e82e06 Merge pull request #26099 from dtzWill/fix/lldb-libedit
lldb-4: Patch to fix libedit usage on Linux
2017-05-29 23:36:00 +02:00
Daiderd Jordan 82b0b57580
clang: fix libclang library id on darwin 2017-05-28 20:34:35 +02:00
Daiderd Jordan 779ec14402 Merge pull request #25921 from dtzWill/feature/llvm-manpages
llvm-4/clang-4: Build and install man pages
2017-05-28 20:29:21 +02:00
Will Dietz 5e659e94a6 lldb-4: Patch to fix libedit usage on Linux
Idea from:
https://bugs.llvm.org//show_bug.cgi?id=28898#c7

Fixes ability to use arrow keys.
2017-05-27 14:10:01 -05:00
Vladimír Čunát 8004e79415
Merge branch 'master' into staging 2017-05-24 03:24:06 +02:00
Jörg Thalheim 4c4f50ce76
llvmPackages_34.llvm: fix output of llvm-config
now llvm-config --libnames and llvm-config --libfiles output the proper
files.
2017-05-23 18:38:44 +01:00
Will Dietz 3d1c1c5af3 llvm-4/*: indicate which build inputs are nativeBuildInputs. 2017-05-19 15:38:00 -05:00
Will Dietz 9aa3548931 llvm-4/clang-4: Build and install man pages 2017-05-19 15:37:59 -05:00
Vladimír Čunát 51e0f8f759
Merge branch 'master' into staging
Some more larger rebuilds from master.
2017-05-12 12:03:37 +02: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
Anthony Cowley 0059131f54 llvm: Add the LLVM OpenMP components
Needed to build an executable that uses OpenMP with clang. This
includes a header file and a library that clang will link into an
executable whose source makes use of ‘omp‘ pragmas.
2017-04-28 21:30:55 -04: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
Dan Peebles b9e558597d stdenv-darwin: bump to use LLVM 4.0 & new bootstrap tools 2017-04-07 14:36:21 -04:00
Daiderd Jordan 7ddd5012a1
libcxx-4: add pthread_mach_thread_np patch 2017-03-26 17:30:23 +02: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
Daniel Peebles 5148be4866 Merge pull request #24018 from copumpkin/llvm-39-improvements
LLVM 3.9 improvements
2017-03-19 20:53:46 -04:00
Dan Peebles 972f51a2da llvmPackages_37.libcxxabi: fix with more recent versions of libc++
The build breaks on libc++ 3.8 and above, which hinders our upgrade to
LLVM 4 for the Darwin stdenv.
2017-03-19 20:51:58 -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
Dan Peebles 2cb440df72 llvm-4: small improvements on Darwin and elsewhere
Split outputs because there's no point in keeping a reference to Python
and it causes trouble during the Darwin stdenv bootstrap. There's also
an unnecessary dependency on LLVM in libc++ which causes us to rebuild
LLVM several more times than necessary during bootstrap, and an awkward
dependency on XPC in the TSAN that we turn off. This is in preparation
for using LLVM 4 in the Darwin stdenv and by default across nixpkgs.
2017-03-18 13:07:52 -04:00
Will Dietz f54813d767 llvm4: rc4 -> release! 2017-03-13 14:54:39 -05:00
Will Dietz 8d10f1dc5b llvm4: rc3 -> rc4 2017-03-08 09:57:41 -06:00
Will Dietz 3bc5a68a63 llvm4: enable tests 2017-03-08 09:50:04 -06:00
Will Dietz 6f6c06adc1 llvm4.0: Rename "4.0" (and _40) to "4" (and _4).
This reflects upstream versioning change, and allows
us to replace 4.0 with 4.1 (which is now a minor revision)
without changing the attribute name.

Thanks to @vcunat for the idea.
2017-03-02 17:19:44 -06:00
Will Dietz 5e267f657d llvm4.0: rc2 -> rc3
Also add myself to maintainers for LLVM.
2017-03-02 17:19:44 -06:00
Will Dietz 7ea342708a lldb-4.0rc2: Try to fix but ultimately disable on Darwin.
Currently it's failing due to needing Foundation.h,
but LLDB on Nix-Darwin is a bit sketchy anyway
due to code-signing requirements.
2017-02-20 09:26:09 -06:00
Will Dietz a5aedafbd9 llvm-4.0: Distinguish release version, fix naming to clarify rc2. 2017-02-20 09:26:07 -06:00
Will Dietz 753058baef libc++-4.0rc2: Use substituteInPlace instead of the Darwin patch.
On 3.9 the substituteInPlace is equivalent to the patch,
hopefully this is a slightly more robust way to make
the same substitution for the 4.0 version.

Apply this change unconditionally for consistency across versions,
even if the changed strings are unused on other platforms.

Discussion:
https://github.com/NixOS/nixpkgs/pull/22970#discussion_r101926144
2017-02-20 09:26:06 -06:00
Will Dietz 2ebb086df1 llvm-4.0/libc++abi: Remove LLVM build dep to unbreak Darwin evaluation. 2017-02-20 09:26:06 -06:00
Will Dietz 9d8ad57abc llvm-4.0: init at rc2 in preparation for release.
Also adds 'lld'.
2017-02-20 09:26:06 -06: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
Robin Gloster c67805ff17
llvmPackages_36: remove 2017-01-27 20:12:54 +01:00
Daiderd Jordan 27660cfdc0
Merge branch 'master' into staging 2017-01-04 01:42:26 +01:00
Daiderd Jordan 538d1b688a stdenv: bootstrap cmake and python on darwin 2017-01-03 18:01:47 +01:00
Daiderd Jordan 2bb33130cc Merge pull request #21541 from veprbl/libcpp37
libc++3.7: fix to use with clang 3.9
2017-01-02 00:39:30 +01:00
Dmitry Kalinkin e9d60c5636
libc++3.7: fix to use with modern compilers
Modern compiler will issue a following error whenever '#include <string>'
is done:

/nix/store/yxpwamjdapjcp53mmsdh1j2c9bc26h4k-libc++-3.7.1/include/c++/v1/string:1938:44:
error: 'basic_string<_CharT, _Traits, _Allocator>' is missing exception specification 'noexcept(is_nothrow_copy_constructible<allocator_type>::value)'
basic_string<_CharT, _Traits, _Allocator>::basic_string(const allocator_type& __a)
                                           ^
/nix/store/yxpwamjdapjcp53mmsdh1j2c9bc26h4k-libc++-3.7.1/include/c++/v1/string:1326:40:
note: previous declaration is here
    _LIBCPP_INLINE_VISIBILITY explicit basic_string(const allocator_type& __a)
                                       ^
1 error generated.

This happens because modern clang is more strict about checking
exception specification for forward declaration and definition.

http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/string?r1=242056&r2=242623&diff_format=h
2016-12-30 16:16:14 -05:00
Will Dietz 10b8cfbdbd llvm: 3.9.0 -> 3.9.1 2016-12-28 12:56:55 -06:00
Tuomas Tynkkynen 8a4d6516ee Merge remote-tracking branch 'upstream/staging' into master 2016-11-30 00:34:23 +02: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
Frederik Rietdijk 7ab6edd171 llvm_34: use python2 2016-11-24 22:28:03 +01:00
Shea Levy 459ab0e0fd Whoops, actually add patch for llvm 2016-11-15 16:41:24 -05:00
Shea Levy f615df9599 llvm-3.8: Fix segfault in llc 2016-11-15 16:39:08 -05:00
Frederik Rietdijk 7077a270bf Merge remote-tracking branch 'upstream/master' into HEAD 2016-10-26 13:06:43 +02:00
Shea Levy be02229f06 Add libcxxStdenv attribute to recent llvm package sets 2016-10-25 10:29:40 -04:00
Frederik Rietdijk e56832d730 Merge remote-tracking branch 'upstream/master' into HEAD 2016-10-22 17:23:24 +02:00
Anthony Cowley 0f6ef7c41c llvm_39: fix on darwin 2016-10-19 01:53:13 -04:00
Frederik Rietdijk 284f22d19e lldb 3.7: use python2
just like llvm 3.7
2016-10-18 23:16:10 +02:00
Frederik Rietdijk adbaed0815 llvm 3.7: use python2 2016-10-18 23:16:03 +02:00
Daniel Peebles 77d1fb94f1 Merge pull request #19470 from copumpkin/fix-sierra
Fix Darwin stdenv to work on Sierra
2016-10-12 19:04:03 -04:00
Dan Peebles d8a0307a5d [darwin.stdenv] Fix to work on Sierra
This reinstates the libSystem selective symbol export machinery we used
to have, but locks it to the symbols that were present in 10.11 and skips
the actual compiled code we put into that library in favor of the system
initialization code. That should make it more stable and less likely to
do weird stuff than the last time we did this.
2016-10-12 00:08:13 -04:00
Vladimír Čunát 56e9bbfe65 Merge #18130: llvmPackages_38: 3.8.0 -> 3.8.1 2016-10-11 22:29:59 +02:00
Will Dietz 5b3bf1fffa llvm-3.8: Fix clang build on non-darwin.
'set-xcode-analyzer' is only installed on APPLE.
2016-10-09 16:57:40 +02:00
Jörg Thalheim 54867a0400 Merge pull request #19131 from aneeshusa/remove-redundant-cmake-build-type-release-args-part2
llvm3.9: Remove -DCMAKE_BUILD_TYPE=Release flags
2016-10-03 14:43:40 +02:00
Tuomas Tynkkynen 19225bf5cc Merge remote-tracking branch 'upstream/master' into staging 2016-10-02 10:36:47 +03: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
Aneesh Agrawal fcee1d0b28
Remove redundant -DCMAKE_BUILD_TYPE=Release flags
Since commit 183d05a0 in 2012, this is the default.

fixes #18000
2016-10-01 16:13:41 +02: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
Dan Peebles 7b9d3f8605 stdenv-darwin: upgrade a few more things
It's a long build and generally painful to split into smaller commits,
so I apologize for lumping many changes into one commit but this is far
easier.

There are still several outdated parts of the darwin stdenv but these
changes should bring us closer to the goal.

Fixes #18461
2016-09-12 01:46:44 -04: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
Will Dietz bffa7de808 llvm: 3.8 -> 3.8.1 2016-08-30 14:34:23 -05:00
Will Dietz 464888c28c llvm-3.8: Fix lldb build failure due to insecure format use. 2016-08-30 14:32:58 -05:00
Anthony Cowley 29572c28a3 llvm-3.8: build shared library on darwin (#17671)
- Enable the shared library build on darwin by default to match other
  platforms.

- Fix the dylib file's name in the store

- Symlink a versioned name as some tooling expects this.
2016-08-17 13:43:57 +02:00
Joe Hermaszewski c7281d14f7 clang-3.5: fix build
Make Obj public in llvm's IntrusiveRefCntPtr

This fixes NixOs/nixpkgs#15974

It's not a nice fix, as it's really clang's problem. The proper fix
should modify clang's usage of IntrusiveRefCntPtr.
2016-08-03 19:00:39 +01:00
Vladimír Čunát 8bf002daac libcxx-3.8: apply Darwin-specific patch only on Darwin
... to better decouple different platforms (in future).
2016-06-20 15:17:41 +02:00
Vladimír Čunát c67e08e1af Merge #16323: llvmPackages_38 fixes 2016-06-20 15:17:40 +02:00
Benjamin Saunders 46ae67d776 libc++, libc++abi, lldb: fix 3.8 2016-06-18 18:18:22 -07:00
Joachim Fasting 2fe8a98244
llvm: remove bogus paxmarks
Refers to non-existent files; see e.g.,
https://hydra.nixos.org/build/36359717/nixlog/1/raw

Likely a copy-paste error that has gone unnoticed because paxmark didn't
do anything, but breaks after 6648b04381
2016-05-28 19:44:03 +02:00
Vladimír Čunát 0b192a0976 Merge branch 'master' into staging
That's to get mesa rebuild from master, as it's nontrivial.
2016-05-23 09:02:10 +02:00
Vladimír Čunát c02f0ade90 fix evaluation on darwin, fixing tarball job fully 2016-05-19 10:04:43 +02:00
Tuomas Tynkkynen 9f8a22fae5 treewide: Make explicit that 'dev' output of binutils is used 2016-05-19 10:00:26 +02:00
Anthony Cowley 43427da31e llvm_38: update hashes and fix on darwin
The hashes for libc++ and libc++abi were wrong.

There was also an incompatibility with nixpkgs on darwin which is now
weakly worked around: the "os_trace" macro changed definition in the OS
X development SDK since version 10.9 as used by nixpkgs. LLVM 3.8 uses
the new version, which I am temporarily replacing with a printf on
darwin as it is only used in one minor location.
2016-05-10 17:09:25 -04:00
Tuomas Tynkkynen 36c4c73575 clang: Add compat lib attribute to have stdenv.cc.cc.lib always work
Fixes tarball evaluation:

http://hydra.nixos.org/build/35042997/nixlog/1/raw
2016-05-02 00:57:28 +03:00
Vladimír Čunát ab15a62c68 Merge branch 'master' into closure-size
Beware that stdenv doesn't build. It seems something more will be needed
than just resolution of merge conflicts.
2016-04-01 10:06:01 +02:00
Vladimír Čunát be447475d3 clang-3.5: mark as broken
It seems unlikely someone will want to fix it anymore.
2016-03-28 14:42:50 +02:00
Andrew Kelley f5fe051c71 llvm: 3.7.1 -> 3.8.0 (close #13801)
vcunat's review:
 - let's not switch the default versions of llvm* for now
 - the only changes I see is adding python to clang's buildInputs
   and using the big so-file as discussed in #12759
   (BUILD_SHARED_LIBS -> LLVM_LINK_LLVM_DYLIB)
 - in future it will be nice to split libLLVM into a separate output
2016-03-28 13:37:31 +02:00
Vladimír Čunát 09af15654f Merge master into closure-size
The kde-5 stuff still didn't merge well.
I hand-fixed what I saw, but there may be more problems.
2016-03-08 09:58:19 +01:00
Domen Kožar d72e93f59d remove lvm_33, fixes #12310 2016-03-02 16:54:30 +00:00
Vladimír Čunát 716aac2519 Merge branch 'staging' into closure-size 2016-01-19 09:55:31 +01:00
Vladimír Čunát 620c147cce Merge branch 'master' into staging 2016-01-18 09:48:49 +01:00
Joe Hermaszewski 9238521b1c llvm: Add enableSharedLibraries option to 3.5 and 3.6 2016-01-13 15:21:23 +00:00
Robin Gloster 897fb98a96 llvm: 3.7.0 -> 3.7.1 (close #12200)
This obsoletes a backport for rust.
2016-01-07 11:12:54 +01:00
janus f351aaaf85 FreeBSD: use own stdenv, do not run libtiff tests, use PIC for zlib 2016-01-01 17:01:13 +00:00
Vladimír Čunát f9f6f41bff Merge branch 'master' into closure-size
TODO: there was more significant refactoring of qtbase and plasma 5.5
on master, and I'm deferring pointing to correct outputs to later.
2015-12-31 09:53:02 +01:00
Moritz Ulrich b45161fbbe llvm: Add backported patch for Rust.
Rust runs into a bug with LLVM 3.7.0 that's fixed in the upcoming
release 3.7.1. This commit backports this fix.
2015-12-24 21:14:06 +01:00
Luca Bruno 5b0352a6a4 Merge branch 'master' into closure-size 2015-12-11 18:31:00 +01:00
Jude Taylor c20b6846f2 rustc: build on darwin 2015-11-30 12:54:04 -08:00
Vladimír Čunát 333d69a5f0 Merge staging into closure-size
The most complex problems were from dealing with switches reverted in
the meantime (gcc5, gmp6, ncurses6).
It's likely that darwin is (still) broken nontrivially.
2015-11-20 14:32:58 +01:00
William A. Kennington III 4251612faa Merge branch 'master.upstream' into staging.upstream 2015-11-04 01:00:48 -08:00
Jude Taylor f4f3df5f5d llvm-3.7: add libcxxabi as a buildInput on darwin 2015-11-02 14:33:51 -08:00
Vladimír Čunát 4917a4f8b3 Merge master into staging 2015-10-23 01:57:14 +02:00
Nikolay Amiantov d5a532ea8d Merge pull request #10202 from abbradar/llvm-debug
llvm: add debug builds support
2015-10-19 11:15:56 +03:00
William A. Kennington III 8a44a36ca4 Merge branch 'master.upstream' into staging.upstream 2015-10-15 10:22:28 -07:00
Thomas Tuegel 708c8ff240 llvm33: patches from julia-0.4.0 2015-10-11 09:16:06 -05:00
Jude Taylor 0a32eab91e fix LLVM packages to work in darwin stdenv 2015-10-05 08:46:56 -07:00
Vladimír Čunát 1004d44d80 llvm-3.7: fix build by -lpthread
This is strange. Morover, 3.6 builds fine without modifications.
2015-10-04 10:16:34 +02:00
Nikolay Amiantov e2e4e59975 llvm: add debug builds support 2015-10-03 14:18:57 +03:00
William A. Kennington III 2a0c18835a llvm: Install utilities for use with rustc 2015-09-21 14:38:49 -07:00
Thomas Tuegel 4a8fbb789a llvm_33: backport patch from LLVM 3.5
This patch was backported from LLVM 3.5 by the Julia project.
2015-09-19 08:14:46 -05:00
Benjamin Saunders 8613179f78 llvm: 3.6 -> 3.7 (close #9815)
Package changes from 3.6:
- CMake exports patch no longer necessary
- Cosmetic purity patch fix
- Build libc++ with private libc++abi headers visible from sources
- Work around bugs in lldb's configure scripts
2015-09-14 23:47:20 +02:00
William A. Kennington III 2ac70270e8 Merge branch 'master.upstream' into staging.upstream 2015-08-18 11:36:32 -07:00
Sophie Taylor 2e41646441 nixpkgs: llvm v3.5.0 -> v3.5.2 2015-08-18 02:18:04 -07:00
Jude Taylor fa6c8445c7 make libcxxStdenv work on both darwin and linux 2015-07-27 14:25:40 -07:00
Benjamin Saunders 19f371d8d9 Fix libcxxStdenv on Linux
This corrects linkage failures arising from missing -lc++abi and
resolves "unused argument" warnings arising due to -stdlib=libc++
serving no purpose when search paths are being supplied explicitly.
2015-07-26 12:56:49 -07:00
Vladimír Čunát 389c90aa86 llvmPackages*: refactor to use callPackage, etc.
Also use recurseIntoAttrs only on the default version (instead of only on 3.4).

The "self" variants (stil) don't build and they're inconsistent
versions. /cc @shlevy (fea2266290).
2015-07-25 09:13:52 +02:00
William A. Kennington III 711692f18e llvm: 3.6.1 -> 3.6.2 2015-07-17 14:12:49 -07:00
William A. Kennington III 7eae48871f Merge branch 'master.upstream' into staging.upstream 2015-07-01 13:38:17 -07:00
Shea Levy 145768bf9b Unmaintain a bunch of packages 2015-07-01 08:11:05 -04:00
Jude Taylor b62baacbc1 Revert "Fix libcxxStdenv on Linux"
This reverts commit 172ed10426.
2015-06-29 13:55:12 -07:00
Shea Levy 291d203f80 Merge branch 'clang-stdenv' of https://github.com/Ralith/nixpkgs into staging 2015-06-28 15:54:06 -04:00
Benjamin Saunders 172ed10426 Fix libcxxStdenv on Linux
This corrects linkage failures arising from missing -lc++abi and
resolves "unused argument" warnings arising due to -stdlib=libc++
serving no purpose when search paths are being supplied explicitly.
2015-06-28 21:33:12 +02:00
Vladimír Čunát 61596bf405 Merge #8363: pure-darwin stdenv 2015-06-18 22:38:08 +02:00
Jude Taylor fa9c81f694 pure darwin stdenv 2015-06-18 12:37:41 -07:00
William A. Kennington III 954801a9a8 Merge branch 'master.upstream' into staging.upstream 2015-06-12 13:47:46 -07:00
Matthew Maurer 6a76633bb6 llvm-3.4: enable RTTI (close #8289) 2015-06-11 22:09:46 +02:00
Eelco Dolstra 553abf71ba Merge remote-tracking branch 'origin/staging' into gcc-4.9
Conflicts:
	pkgs/build-support/cc-wrapper/default.nix
	pkgs/development/libraries/wayland/default.nix
	pkgs/development/tools/build-managers/cmake/default.nix
	pkgs/top-level/all-packages.nix
2015-06-01 20:08:43 +02:00
Vladimír Čunát 6732b3b8ad clang-3.4: fix build by adding zlib
I didn't care enough to search for cause of the regression.
2015-05-30 15:42:15 +02:00
William A. Kennington III 386575c0c2 llvm: 3.6.0 -> 3.6.1 2015-05-26 01:36:35 -07:00
Eelco Dolstra 279aca0f4b llvm: Don't depend on valgrind/gdb
See a4619673b5.
2015-05-13 18:17:26 +02:00
Eric Seidel 662a6b1ca6 remove all references to stdenv.cc.cc.is{GNU,Clang}
use the new `stdenv.cc.is{GNU,Clang}` instead, which will always be
defined.
2015-05-11 14:44:50 -07:00
Eric Seidel 6ec373d776 Merge branch master into staging 2015-04-06 18:58:08 -07:00
Peter Simons fbfec3fc35 llvmPackages_34.dragonegg is broken because the required "ABIHack.inc" patch has disappeared upstream 2015-04-01 14:31:48 +02:00
William A. Kennington III 5cc82f8175 llvm: Enable RTTI for mesa 2015-03-28 13:50:22 -07:00
Eric Seidel 69d02b71a0 clang: add isClang passthru attribute to mirror isGNU 2015-03-24 20:37:01 -07:00
Shea Levy 6e3c9d5ce4 Fix fallout of recent cc-wrapper changes
Fixes tarball except for 56e21d05e8
2015-03-24 22:13:43 -04:00
Peter Simons 6694ef42a9 Merge branch 'master' into staging.
Conflicts:
      pkgs/development/libraries/gtk+/2.x.nix
      pkgs/tools/security/gnupg/21.nix
      pkgs/top-level/all-packages.nix
2015-03-10 12:09:43 +01:00
Eduard Bachmakov 4731485ca2 llvm-3.5: enable RTTI to support mesa
Extracted from #6367.
2015-03-09 15:55:23 +01:00
Shea Levy e57e44f867 llvm-3.6 packages: Build everything (except clang and llvm) with clang 2015-03-07 13:08:34 +00:00
Shea Levy b37fd11351 llvm-3.6 packages: Rearrange directory structure 2015-03-07 12:51:06 +00:00
Shea Levy 3ed077a69b lldb-3.5 is broken, bug in the cmake
lldb-3.6 is working (just waiting on a staging fix to merge), so let's just
mark this broken until we decide to nuke 3.5 all together.

Fixes #6636 refs #6668
2015-03-06 16:16:20 -05:00
Shea Levy c62b5456f5 Merge branch 'llvm-3.6' of git://github.com/Ralith/nixpkgs into llvm-3.6-merge
LLVM, clang, and lldb 3.6iLLVM, clang, and lldb 3.6

Conflicts:
	pkgs/top-level/all-packages.nix
2015-03-06 19:10:10 +00:00
Shea Levy 6b53021205 Merge branch 'master' into staging 2015-03-06 19:02:36 +00:00
Shea Levy 55cf015142 clang-3.6: provide path to gcc on Linux
gcc contains core runtime bits that aren't available elsewhere for Linux.

Refs #6449
2015-03-06 13:49:49 +00:00
Shea Levy 494ae5fbeb clang: provide path to gcc on Linux
gcc contains core runtime bits that aren't available elsewhere for Linux.

Fixes #6449 refs #6668
2015-03-06 08:36:42 -05:00
Benjamin Saunders f1b7e4d127 LLVM, clang, and lldb 3.6 2015-03-05 06:44:09 +01:00
Peter Simons d6c295e469 Merge remote-tracking branch 'origin/master' into staging. 2015-02-25 20:18:28 +01:00
Vladimír Čunát bc51573f8a dragonegg-3.5: fix by dropping included patch
It seems to compile a hello-world fine.
2015-02-23 09:37:07 +01:00
Eduard Bachmakov c0def4a169 llvm-3.5: enable RTTI to support mesa
Extracted from #6367.
2015-02-22 20:03:14 +01:00
Luca Bruno 3391728c63 dragonegg: fix sha256 2015-02-20 14:51:24 +01:00
Dan Peebles c6ce6460c4 Rearrange llvm dependencies slightly to avoid unnecessary dependencies on darwin (binutils is only used for gold integration, which doesn't apply on darwin) 2015-02-18 02:05:56 -05:00
Dan Peebles 3a423e4405 It doesn't appear to be necessary to force the libc++abi rpath in libc++, and removing it helps disentangle the upcoming darwin stdenv from its bootstrap tools 2015-02-17 22:39:31 -05:00
Dan Peebles a29cc5a911 A build of libc++abi that doesn't rely on a full llvm build (more lightweight boostrap upcoming) 2015-02-08 13:38:29 -05:00
Dan Peebles 19c359ce2a substituteInPlace doesn't seem to work properly on this bash, so use sed instead 2015-02-08 03:04:41 -05:00
Dan Peebles 507d65d7d4 Get rid of default search paths in clang 3.5 2015-02-08 02:12:51 -05:00
Dan Peebles c4253520fe These two are unused 2015-02-08 00:34:02 -05:00
Shea Levy 0e225c0e37 llvm-3.5: Don't try to use libc++ on linux 2015-02-04 11:30:25 -05:00
Eric Seidel 4a467ec02b move libcxx[abi] into llvm tree 2015-02-03 14:58:10 -08:00
Eric Seidel fe49487a05 fix evaluation 2015-02-03 14:31:07 -08:00
Eric Seidel 2ca30151c2 add llvm-3.5 2015-02-03 13:58:32 -08:00
Vladimír Čunát a0bf07827b mpc: also rename the attribute to libmpc
Attrnames and package names should be as close as possible to avoid confusion.
I took care not to confuse the two mpc things during the mass-replace,
so hopefully I suceeded (tarball still builds).
2015-01-17 09:55:32 +01:00
Eric Seidel f3c6827373 rename all occurrences of stdenv.cc.gcc to stdenv.cc.cc 2015-01-14 20:27:55 -08:00
John Wiegley 28b6fb61e6 Change occurrences of gcc to the more general cc
This is done for the sake of Yosemite, which does not have gcc, and yet
this change is also compatible with Linux.
2014-12-26 11:06:21 -06:00
Eelco Dolstra a4619673b5 clang/llvm: Fewer build-time dependencies
Such as valgrind, dejagnu, tcl/tk, ...
2014-10-11 22:26:39 +02:00
Eelco Dolstra cb9f69c052 llvm: Don't depend on Python on Darwin
There already is a Python in /usr/bin, so we don't need to build
another one.
2014-09-23 13:13:53 +02:00
Joel Taylor fa9b1f9cda build nix head successfully 2014-09-09 13:54:57 -07:00
Eric Seidel 0577499d74 fix some packages on darwin 2014-09-09 13:54:26 -07:00
Joel Taylor 7da056233f wip libc++ 2014-09-09 13:54:25 -07:00
Joel Taylor 3e8344d334 suitable clang stdenv 2014-09-09 13:54:24 -07:00
Vladimír Čunát 6295a3ca36 Merge recent master into x-updates
Hydra: ?compare=1142825

Conflicts (easy):
	pkgs/applications/audio/lmms/default.nix
	pkgs/desktops/e18/enlightenment.nix
	pkgs/games/exult/default.nix
	pkgs/os-specific/linux/alsa-plugins/default.nix
2014-08-02 05:08:07 +02:00
Mateusz Kowalczyk 7a45996233 Turn some license strings into lib.licenses values 2014-07-28 11:31:14 +02:00
Eelco Dolstra e0c43e8d04 llvm: Removed unused versions 3.1 and 3.2 2014-07-22 13:56:26 +02:00
Vladimír Čunát 219cae447d llvmPackages: maintenance update to 3.4.2
Updated all that was released: llvm, clang, and libc++.
2014-06-20 00:23:52 +02:00
Vladimír Čunát 4d269593d2 dragonegg: fix build, probably after gcc minor update 2014-05-30 11:03:54 +02:00
Vladimír Čunát 872860e6de Merge #1187 into p/stdenv
Tested building firefox, kdelibs, evince on x86_64-linux.
2014-05-29 22:16:07 +02:00
Vladimír Čunát 0430f59d64 llvmPackages.lld: fix build after 3.4.1 update
Somehow I forgot this package.
2014-05-16 18:29:12 +02:00
Vladimír Čunát cf1dbbbf72 llvm+clang: maintenance update 3.4 -> 3.4.1
Slightly hacky for clang at some points, as directory names change strangely.
2014-05-15 21:02:28 +02:00
Ricardo M. Correia f9cd53ba18 llvm: Add support for grsecurity 2014-05-15 13:25:47 +02:00
Vladimír Čunát 07dc578572 llvm(Packages) on darwin: attempts to fix
- mark llvm34 as broken on darwin (so it doesn't install by default with nix-env)
- don't use our gcc for llvm_34 (might fix the build)
- switch also clang default to 3.3 on darwin (llvm was before)
2014-04-10 21:19:40 +02:00
Maxim Ivanov 2780cf2838 Fix -fsanitize=... options for clang
When using -fsanitize=... options clang implicitly
links binary to static libraries which are part of
llvm, but expects them to be found under clang prefix
2014-03-26 13:06:22 +00:00
Mathijs Kwik fc30e8e9b5 llvm: remove duplicate ncurses buildInput 2014-02-06 10:01:13 +01:00
Shea Levy 9cf29b7039 llvm: Propagate ncurses and zlib
Really shouldn't be needed with shared libs, should patch llvm-config

Fixes #1601

Signed-off-by: Shea Levy <shea@shealevy.com>
2014-02-03 18:11:00 -05:00
Shea Levy 134546bca2 clang: Fix linking with -flto
Signed-off-by: Shea Levy <shea@shealevy.com>
2014-02-02 20:39:16 -05:00
Shea Levy 86c587134b llvm-3.4: Try to fix build on darwin
Signed-off-by: Shea Levy <shea@shealevy.com>
2014-02-02 19:47:59 -05:00
Eelco Dolstra e8a401a0c9 llvm-3.4: Only build on Linux
It doesn't build on Darwin because it depends on Valgrind:
http://hydra.nixos.org/build/8616143/nixlog/1/raw
2014-01-30 13:49:17 +01:00
Shea Levy 1cb628c2e7 clang: the --sysroot purity trick doesn't take care of the -dynamic-linker setting
Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-27 12:50:21 -05:00
Shea Levy c0e93ca39d Unmaintain old llvm versions
Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-26 21:01:13 -05:00
Vladimir Still 3209170626 LLVM: Allow building gold plugins together with llvm 3.{1,2}. 2014-01-26 22:53:27 +01:00
Vladimir Still 69af3f4a78 clang_31: Allow clang to find system includes in gcc dirs.
Backported fix.
2014-01-26 22:51:58 +01:00
Vladimir Still 11a7520928 llvm: Bring back old expressions for llvm & clang 3.[123]. 2014-01-26 19:16:50 +01:00
Shea Levy 407c60fdf9 Fix tarball
Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-20 20:33:06 -05:00
Shea Levy fea2266290 llvm: Split llvmFull into separate derivations
Now most packages in the llvm suite are built as separate derivations.
The exceptions are:

* compiler-rt must currently be built with llvm. This increases llvm's
  size by 6 MB
* clang-tools-extra must be built with clang

In addition, the top-level llvm attribute is defaulted to llvm 3.4, and
llvm 3.3 must be accessed by the llvm_33 attribute. This is to make the
out-of-date packages obvious in the hope that eventually all will be
updated to work with 3.4 and 3.3 can be removed. I think we should keep
this policy in the future (latest llvm gets top-level name, the rest are
versioned until they can be removed).

The llvm packages (except libc++, which exception I will try to remove
on the next update) can all be accessed via the llvmPackages attribute,
and there are also aliases for the packages that already existed (llvm,
clang, and dragonegg).

Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-20 20:33:06 -05:00
Vladimír Čunát ac6761c908 Merge master into stdenv-updates
Conflicts:
	pkgs/applications/version-management/gource/default.nix
	pkgs/top-level/all-packages.nix
2014-01-20 19:39:28 +01:00
Shea Levy 55e6303d6a Add full llvm build, update libc++ and dragonegg
Some packages in the llvm suite (e.g. compiler-rt) cannot be built
separate from the build of llvm, and while some others (e.g. clang) can
the combined build is much better tested (we've had to work around
annoying issues before). So this puts llvm, clang, clang-tools-extra,
compiler-rt, lld, lldb, and polly all into one big build (llvmFull).
This build includes a static llvm, as dynamic is similarly less tested
and has known failures.

This also updates libc++ and dragonegg. libc++ now builds against
libc++abi as a separate package rather than building it during the
libc++ build.

The clang purity patch is gone. Instead, we simply set --sysroot to
/var/empty for pure builds, as all impure paths are either looked up in
the gcc prefix (which we hard-code at compile time) or in the sysroot.
This also means that if NIX_ENFORCE_PURITY is 0 then clang will look in
the normal Linux paths by default, which is the proper behavior IMO.

polly required an updated isl. When stdenv-updates is merged, perhaps we
can update the isl used by gcc and avoid having two versions.

Since llvm on its own is now separate from the llvm used by clang, I've
removed myself as maintainer from llvm and will leave maintenance of
that to those who are interested in llvm separate from clang.

Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-20 05:42:38 -05:00
Mathijs Kwik 6072a289fc llvm: no-rule-aarch64.patch is only needed on 3.3
the fix just missed 3.3 but it's in 3.4
see bottom of: http://llvm.org/bugs/show_bug.cgi?id=16625
2014-01-18 19:13:29 +01:00
Vladimír Čunát 0a58b512cb Merge master into stdenv-updates
Conflicts (simple):
	pkgs/development/compilers/gcc/4.8/default.nix
	pkgs/development/compilers/llvm/default.nix
	pkgs/development/libraries/gmp/5.1.1.nix
	pkgs/development/libraries/gmp/5.1.3.nix
	pkgs/development/libraries/gmp/5.1.x.nix
	pkgs/top-level/all-packages.nix
2014-01-18 14:46:20 +01:00
Vladimír Čunát ae0c9b626f llvm: add 3.4, urge for versioned usage
The 3.4 code was tested preliminary in x-updates,
described by 2e4eab1228.

Updates to llvm break builds of dependent packages (in all cases I've seen),
and often upstream isn't too fast in porting to the newest version.
Consequently, it seems better to keep more versions (two ATM),
both in one file to share eventual changes.
Also, using versioned llvm_* attributes is proposed because of this.
2014-01-13 21:53:50 +01:00
Vladimír Čunát 2265bab69d llvm: fix heavily parallel builds 2013-12-28 17:32:01 +01:00
Vladimír Čunát 4c5a71f777 Merge master into x-updates
Conflicts:
	pkgs/desktops/gnome-2/desktop/gvfs/default.nix
	pkgs/development/libraries/cogl/default.nix
	pkgs/development/libraries/libsoup/2.44.nix
2013-12-18 23:21:29 +01:00
Peter Simons 45e8de9a7d Merge branch 'origin/master' into stdenv-updates.
Conflicts:
	pkgs/tools/misc/less/default.nix
2013-12-16 21:13:24 +01:00
Vladimír Čunát 4855b0a22e dragonegg: fix build via update to 3.3 2013-12-11 12:14:01 +01:00
Peter Simons c32bf83301 Merge remote-tracking branch 'origin/master' into stdenv-updates.
Conflicts:
	pkgs/development/interpreters/perl/5.16/default.nix
	pkgs/tools/networking/curl/default.nix
	pkgs/top-level/all-packages.nix
	pkgs/top-level/release-python.nix
	pkgs/top-level/release-small.nix
	pkgs/top-level/release.nix
2013-12-04 18:33:52 +01:00
Vladimír Čunát 68430cf3d7 Merge branch master into x-updates
Conflicts (trivial, minor update on master, major here):
	pkgs/development/libraries/mesa/default.nix
2013-11-16 20:32:44 +01:00
Petr Rockai 2c9f0e059a clang: Do not try to build clang-tblgen in LLVM's build path. 2013-11-16 13:53:48 +01:00
Vladimír Čunát 4bcdeb49a1 mesa: update 9.1.6 -> 9.2.1, enable R600 LLVM stuff 2013-10-05 21:18:35 +02:00
Vladimír Čunát 0adae9f822 llvm: add support for R600
It will be useful for mesa >= 9.2.*
Also, I want to restart the build on Hydra, as it succeeds for me.
2013-09-24 23:10:48 +02:00
Vladimír Čunát 9475e4d50a llvm (merge amend): fix evaluation
Regular binutils now include gold.
2013-09-02 15:45:29 +02:00
Petr Rockai 8bc805a211 llvm: Build the LLVMgold.so plugin for ld.gold &c.
Conflicts (simple):
	pkgs/development/compilers/llvm/default.nix
2013-08-18 21:35:17 +02:00
Vladimír Čunát 625f40151b Merge branch 'master' into x-updates
Conflicts (a little tricky, I did some cleanup of interacting changes):
	pkgs/development/compilers/llvm/default.nix
	pkgs/development/libraries/libpng/default.nix
	pkgs/tools/package-management/nixops/default.nix
	pkgs/top-level/all-packages.nix
2013-08-02 18:30:53 +02:00
Peter Simons e2874236d3 llvm: fix meta.license attribute 2013-07-04 17:53:57 +02:00
Jason "Don" O'Conal 3b490b7ccb llvm: re-disabling tests
accidentally re-enabled doCheck, which isn't working yet
2013-07-04 19:02:40 +10:00
Jason "Don" O'Conal 67e5eb909b llvm: fix build on darwin
* add DYLD_LIBRARY_PATH
* don't build with shared libs
2013-07-04 08:48:55 +10:00
Shea Levy 6425ad2847 clang: Update to 3.3
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-06-21 19:50:56 -04:00
Shea Levy 9b502a9ae1 llvm: Update to 3.3
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-06-21 19:18:52 -04:00
Vladimír Čunát 14f36162d2 llvm: switch back to cmake build, so now clang builds 2013-06-01 23:36:38 +02:00
Vladimír Čunát d45b50ce6f llvm: add forgotten patch, WIP 2013-05-16 18:49:47 +02:00
Vladimír Čunát 70882b980c WARNING: history from now is going to change (mesa+llvm)
Current WIP, only tested nouveau (3D works very well).
2013-05-16 17:16:02 +02:00
Shea Levy 88864e331a Try to fix the tarball.
stdenv.gcc.gcc might be null, e.g. on ppc-linux

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-05-04 17:30:04 -04:00
Shea Levy c4edee4d39 clang: Pass the real gcc install prefix
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-05-04 15:18:37 -04:00
Vladimír Čunát 5f758e6ea3 dragonegg: fix via update 2013-02-23 14:57:31 +01:00
Shea Levy 296cd66009 clang requires libxlm2, on darwin at least 2013-01-22 16:29:28 -05:00
Shea Levy 857742ea22 clang/llvm: 3.2 2013-01-22 14:33:55 -05:00
Shea Levy 4f178d1698 clang: Bump to 3.1 2012-10-08 01:57:39 -04:00
Shea Levy 5a6fd3d510 llvm: Bump to 3.1 2012-10-07 23:25:11 -04:00
Michael Raskin f6b2f17bc3 Given that I have a vested interest in working LLVM now - add myself as maintainer
svn path=/nixpkgs/trunk/; revision=34302
2012-05-31 11:26:16 +00:00
Michael Raskin 2de23edd59 Adding LLVM 3.1. (as a separate attribute, because it seems to be API-incompatible)
svn path=/nixpkgs/trunk/; revision=34300
2012-05-31 11:04:28 +00:00
Ludovic Courtès 04600bbec1 Darwin: Add mig', lipo', etc. to `stdenvNative'.
Consequently, remove `darwinLipoUtility', `darwinArchUtility', etc.

svn path=/nixpkgs/trunk/; revision=33893
2012-04-23 15:47:31 +00:00
Shea Levy cd83eb3173 Build clang to support all of llvm's targets
svn path=/nixpkgs/trunk/; revision=33518
2012-04-01 14:33:23 +00:00
Yury G. Kudryashov 0e397758ee dragonegg-3.0
The old version fails to build, thus I commit it instead of review request.

svn path=/nixpkgs/trunk/; revision=33193
2012-03-17 15:25:00 +00:00
Eelco Dolstra c556a6ea46 * "ensureDir" -> "mkdir -p". "ensureDir" is a rather pointless
function, so obsolete it.

svn path=/nixpkgs/branches/stdenv-updates/; revision=31644
2012-01-18 20:16:00 +00:00
Shea Levy ec305ac161 clang builds on darwin now
Also, get rid of the clang bootstrap, there's no need for it

svn path=/nixpkgs/trunk/; revision=30973
2011-12-19 23:58:57 +00:00
Shea Levy cf247dcce0 Try to fix tarball
svn path=/nixpkgs/trunk/; revision=30968
2011-12-19 13:40:33 +00:00
Shea Levy dfb27bd181 llvm should build on darwin now
svn path=/nixpkgs/trunk/; revision=30958
2011-12-19 13:00:03 +00:00
Shea Levy 2a033caa1d llvm+clang don't yet build on non-Linux platforms
svn path=/nixpkgs/trunk/; revision=30957
2011-12-19 12:53:07 +00:00
Shea Levy 006d8dcdc1 clang-3.0
This required moving to the cmake build for llvm in order to build clang
separately from llvm.

svn path=/nixpkgs/trunk/; revision=30956
2011-12-19 12:48:09 +00:00
Shea Levy 99dede273d Remove unused patch
svn path=/nixpkgs/trunk/; revision=30735
2011-12-05 05:03:18 +00:00
Shea Levy 9943b8da03 Remove llvmSVN, it's outdated and doesn't work
svn path=/nixpkgs/trunk/; revision=30732
2011-12-05 02:53:26 +00:00
Shea Levy 332afc59aa llvm 3.0
This probably breaks clang. I will be updating clang to 3.0 when I can

svn path=/nixpkgs/trunk/; revision=30722
2011-12-03 23:47:59 +00:00
Shea Levy 51eab4deaa Only build clang on Linux until the wrapper is set up for non-Linux stdenvs
svn path=/nixpkgs/trunk/; revision=30302
2011-11-07 19:24:01 +00:00
Shea Levy 0892d42613 The clang static analyzer can be accessed through clang --analyze, no need for scan-build and view
svn path=/nixpkgs/trunk/; revision=30051
2011-10-27 06:04:00 +00:00
Eelco Dolstra 75c3c1418d * Fix powerpc-linux evaluation (does anybody care?).
svn path=/nixpkgs/trunk/; revision=29958
2011-10-21 16:10:07 +00:00
Eelco Dolstra 5e51aadc10 * Fix evaluation errors.
svn path=/nixpkgs/trunk/; revision=29955
2011-10-21 14:43:18 +00:00
Shea Levy 7c32c9c426 llvm: Use the sw_vers program on darwin
svn path=/nixpkgs/trunk/; revision=29925
2011-10-20 10:15:54 +00:00
Shea Levy 252286194e clang: have gcc tell us its target triplet, no need to limit to x86 linuces
svn path=/nixpkgs/trunk/; revision=29924
2011-10-20 02:07:00 +00:00
Shea Levy 1214310f5d Use the right triplet for 1686
Not sure why we're inconsistent between arches there...

svn path=/nixpkgs/trunk/; revision=29923
2011-10-20 00:15:49 +00:00
Shea Levy 188df14951 clang: Use configureFlags instead of env vars to tell which compiler to use
svn path=/nixpkgs/trunk/; revision=29922
2011-10-19 23:49:22 +00:00
Shea Levy 1d7f2e1e90 clang: Install static analysis tools
svn path=/nixpkgs/trunk/; revision=29921
2011-10-19 21:47:28 +00:00
Shea Levy 6e3cde6383 Enable building clang separately from llvm
Note that there is some duplication when building clang now. The llvm source
is unpacked twice, ./configure is run twice, and two small unit test
libraries are compiled twice. IMO this is a fair tradeoff for having
llvm be a separate build unaffected by changes to clang

svn path=/nixpkgs/trunk/; revision=29919
2011-10-19 20:57:18 +00:00
Shea Levy 94dbab27a3 Bootstrap clang with itself
svn path=/nixpkgs/trunk/; revision=29901
2011-10-19 17:11:26 +00:00