Commit graph

54 commits

Author SHA1 Message Date
John Ericson
0c73297c07 compiler-rt-{7,8,9}: Fix cmakeFlags in a few ways
- Cross to bare metal with GCC works

 - Flags are deduplicated

 - Darwin bootstrapping for 8 and 0 closer.

 - Flags are same across versions.
2020-03-18 12:10:09 -04:00
John Ericson
bc054004ac cc-wrapper, clang: libstdcxxHook should a propagated build input
Lumping it in with the target platform libraries was incorrect, and
caused eval failures when gcc couldn't be built for the target platform.
2020-03-18 11:28:52 -04:00
Matthew Bauer
db29857eb3 Re-Revert "clang_7,clang_8,clang_9: fix compilation of HIP-code"
This reverts commit f14a4d60b7, and thus
applying 558af6fbc7.
2020-01-28 11:35:19 -05:00
Anders Kaseorg
3cd8ce3bce treewide: Fix unsafe concatenation of $LD_LIBRARY_PATH
Naive concatenation of $LD_LIBRARY_PATH can result in an empty
colon-delimited segment; this tells glibc to load libraries from the
current directory, which is definitely wrong, and may be a security
vulnerability if the current directory is untrusted.  (See #67234, for
example.)  Fix this throughout the tree.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2020-01-15 09:47:03 +01:00
Frederik Rietdijk
bc18cc72dd
Merge pull request #77610 from LnL7/darwin-stdenv-python3
darwin-stdenv: bootstrap with python3
2020-01-15 09:24:57 +01:00
Daiderd Jordan
d0a90de910
llvmPackages: python2 -> python3 2020-01-13 11:13:56 +01:00
David McFarland
6c86a2b5bb llvm: use correct version of tablegen when cross compiling _8 and _9 2020-01-03 10:38:43 -04:00
Joachim F
90f08689c3
Merge pull request #73766 from kmcopper/staging-compiler-rt
staging: compiler-rt scudo compatibility
2019-11-26 15:54:12 +00:00
John Ericson
6d3b7458cc
Merge pull request #74065 from Ericson2314/cc-versions
compilers, binutils: Add version and pname
2019-11-24 18:35:13 -05:00
Craig Hall
c40bf6ea3f llvm-manpages: Use pname 2019-11-24 18:32:26 +00:00
Craig Hall
4bcae6f8a7 llvm: Use pname 2019-11-24 18:32:26 +00:00
Craig Hall
a33dbd38cb clang-manpages: Use pname 2019-11-24 18:32:26 +00:00
Craig Hall
f1255e45db clang: Use pname 2019-11-24 18:32:26 +00:00
Craig Hall
2c59c1deb5 llvm: Add version attribute 2019-11-24 18:32:26 +00:00
Craig Hall
5a9c95d4d2 clang: Add version attribute 2019-11-24 18:32:26 +00:00
Kyle Copperfield
19adae30c1 llvm/compiler-rt: default to compatible scudo options 2019-11-19 16:10:39 +00:00
Matthew Bauer
d303a2f431 llvm/compiler-rt: fix on i686
Only turn on cross related flags when useLLVM = true.

Fixes #66693
2019-09-30 21:24:27 -04:00
Joachim Fasting
bad07dfac5
tree-wide: replace uses of splitString "." with lib.versions
Quoting from the splitString docstring:

   NOTE: this function is not performant and should never be used.

This replaces trivial uses of splitString for splitting version
strings with the (potentially builtin) splitVersion.
2019-09-26 17:42:49 +02:00
volth
08f68313a4 treewide: remove redundant rec 2019-08-28 11:07:32 +00:00
volth
c814d72b51 treewide: name -> pname 2019-08-17 10:54:38 +00:00
Frederik Rietdijk
fe9a3e3e63 Merge staging-next into staging 2019-08-17 09:39:23 +02:00
volth
46420bbaa3 treewide: name -> pname (easy cases) (#66585)
treewide replacement of

stdenv.mkDerivation rec {
  name = "*-${version}";
  version = "*";

to pname
2019-08-15 13:41:18 +01:00
Matthew Bauer
579168b537
Merge pull request #65483 from arcnmx/pr-llvm-baremetal
llvm8 bare metal fixes
2019-08-14 10:16:57 -04:00
Matthew Bauer
554a789403
Merge pull request #65537 from Holo-Host/201907/extend-static
pkgsStatic: override libunwind
2019-08-13 12:47:03 -04:00
Orivej Desh
c9091c1d9d llvmPackages_8: 8.0.0 -> 8.0.1
Starting with 8.0.1 and 7.1.0 LLVM has moved release hosting to GitHub.
2019-08-05 23:32:16 +00:00
Yegor Timoshenko
cdee3b7966
llvmPackages_8.libraries.libunwind: add enableShared option 2019-07-29 03:08:02 +03:00
arcnmx
24070da9c4 llvmPackages_8.compiler-rt: bare-metal support
Bare-metal targets require a few additional options to be set.
2019-07-27 15:11:31 -07:00
arcnmx
a5e2b76e51 llvmPackages_8.clang: bare-metal driver linker fix
Clang passes an incorrect -l linker flag for compiler-rt.

See https://reviews.llvm.org/D51899
2019-07-27 15:04:02 -07:00
Dmitry Kalinkin
325f37f935 llvm_*,clang_*: allow src overrides 2019-07-17 10:30:05 +02:00
Daiderd Jordan
42705e70a7
lldb: fix darwin sandboxed build 2019-07-03 22:20:25 +02:00
Graham Christensen
7d62e4b024
llvm_7,8: disable libpfm on aarch64
See https://github.com/nixos/nixpkgs/issues/56245

Testing: 0 ..
FAIL: LLVM-Unit :: tools/llvm-exegesis/./LLVMExegesisTests/PerfHelperTest.FunctionalTest (2933 of 27000)
******************** TEST 'LLVM-Unit :: tools/llvm-exegesis/./LLVMExegesisTests/PerfHelperTest.FunctionalTest' FAILED ********************
Note: Google Test filter = PerfHelperTest.FunctionalTest
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from PerfHelperTest
[ RUN      ] PerfHelperTest.FunctionalTest
/build/llvm/unittests/tools/llvm-exegesis/PerfHelperTest.cpp:37: Failure
      Expected: CallbackEventName
            Which is: ""
            To be equal to: "CYCLES:u"
            /build/llvm/unittests/tools/llvm-exegesis/PerfHelperTest.cpp:38: Failure
            Value of: CallbackEventNameFullyQualifed
            Expected: isn't empty
              Actual: ""
              [  FAILED  ] PerfHelperTest.FunctionalTest (3 ms)
              [----------] 1 test from PerfHelperTest (3 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (3 ms total)
[  PASSED  ] 0 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] PerfHelperTest.FunctionalTest

 1 FAILED TEST
 invalid event attribute - cannot create event CYCLES:u

********************
Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..

1 warning(s) in tests.
Testing Time: 108.19s
********************
Failing Tests (1):
    LLVM-Unit :: tools/llvm-exegesis/./LLVMExegesisTests/PerfHelperTest.FunctionalTest

  Expected Passes    : 25609
    Expected Failures  : 141
      Unsupported Tests  : 1249
        Unexpected Failures: 1
        make[3]: *** [CMakeFiles/check-all.dir/build.make:58: CMakeFiles/check-all] Error 1
        make[3]: Leaving directory '/build/llvm/build'
        make[2]: *** [CMakeFiles/Makefile2:365: CMakeFiles/check-all.dir/all] Error 2
        make[2]: Leaving directory '/build/llvm/build'
        make[1]: *** [CMakeFiles/Makefile2:372: CMakeFiles/check-all.dir/rule] Error 2
        make[1]: Leaving directory '/build/llvm/build'
        make: *** [Makefile:251: check-all] Error 2
        builder for '/nix/store/4kq72x6ahrigryr6yjjj7c7ayqy8z2sl-llvm-7.0.1.drv' failed with exit code 2Testing: 0 ..
        FAIL: LLVM-Unit :: tools/llvm-exegesis/./LLVMExegesisTests/PerfHelperTest.FunctionalTest (2933 of 27000)
        ******************** TEST 'LLVM-Unit :: tools/llvm-exegesis/./LLVMExegesisTests/PerfHelperTest.FunctionalTest' FAILED ********************
        Note: Google Test filter = PerfHelperTest.FunctionalTest
        [==========] Running 1 test from 1 test case.
        [----------] Global test environment set-up.
        [----------] 1 test from PerfHelperTest
        [ RUN      ] PerfHelperTest.FunctionalTest
        /build/llvm/unittests/tools/llvm-exegesis/PerfHelperTest.cpp:37: Failure
              Expected: CallbackEventName
                    Which is: ""
                    To be equal to: "CYCLES:u"
                    /build/llvm/unittests/tools/llvm-exegesis/PerfHelperTest.cpp:38: Failure
                    Value of: CallbackEventNameFullyQualifed
                    Expected: isn't empty
                      Actual: ""
                      [  FAILED  ] PerfHelperTest.FunctionalTest (3 ms)
                      [----------] 1 test from PerfHelperTest (3 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (3 ms total)
[  PASSED  ] 0 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] PerfHelperTest.FunctionalTest

 1 FAILED TEST
 invalid event attribute - cannot create event CYCLES:u

********************
Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..

1 warning(s) in tests.
Testing Time: 108.19s
********************
Failing Tests (1):
    LLVM-Unit :: tools/llvm-exegesis/./LLVMExegesisTests/PerfHelperTest.FunctionalTest

  Expected Passes    : 25609
    Expected Failures  : 141
      Unsupported Tests  : 1249
        Unexpected Failures: 1
        make[3]: *** [CMakeFiles/check-all.dir/build.make:58: CMakeFiles/check-all] Error 1
        make[3]: Leaving directory '/build/llvm/build'
        make[2]: *** [CMakeFiles/Makefile2:365: CMakeFiles/check-all.dir/all] Error 2
        make[2]: Leaving directory '/build/llvm/build'
        make[1]: *** [CMakeFiles/Makefile2:372: CMakeFiles/check-all.dir/rule] Error 2
        make[1]: Leaving directory '/build/llvm/build'
        make: *** [Makefile:251: check-all] Error 2
        builder for '/nix/store/4kq72x6ahrigryr6yjjj7c7ayqy8z2sl-llvm-7.0.1.drv' failed with exit code 2
2019-06-29 14:54:52 -04:00
volth
f3282c8d1e treewide: remove unused variables (#63177)
* treewide: remove unused variables

* making ofborg happy
2019-06-16 19:59:05 +00:00
Gabor Greif
bd8da4e0ed
clang: typo in comment 2019-05-10 11:29:09 +02:00
Matthew Bauer
87944c3125
Merge pull request #56744 from matthewbauer/macos-10-12
Update macOS to 10.12
2019-04-26 22:20:03 -04:00
Matthew Bauer
c08fe0f8b1 llvm8: remove compiler-rt gettime patch
This was removed in llvm 7 but not for llvm 8.
2019-04-26 21:54:58 -04: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
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
097122d2fd clang8: apply patch to disable xpc 2019-04-10 22:42:01 -04:00
Tadeo Kondrak
341f65a1e4
lldb: install vscode plugin; vscode-extensions: add it 2019-04-04 02:30:26 -06: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