Commit graph

411 commits

Author SHA1 Message Date
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