Commit Graph

1399 Commits

Author SHA1 Message Date
Sylvestre Ledru
b5ad0e4b01 also ignore tblgen-lsp-server in cmake 2022-10-17 14:30:33 +02:00
Sylvestre Ledru
d916c393ae also remove llvm-bat-dump 2022-10-17 13:31:10 +02:00
Sylvestre Ledru
9663568a1b Revert " remove openmp workaround"
This reverts commit 9f3e727187.
2022-10-14 19:39:59 +02:00
Sylvestre Ledru
bfd97d1fe2 Merge remote-tracking branch 'origin/15' into snapshot 2022-10-14 19:36:10 +02:00
Sylvestre Ledru
992e52c0b1 don't search for llvm-bolt & merge-fdata in cmake 2022-10-14 19:35:00 +02:00
Sylvestre Ledru
0269083a45 Merge remote-tracking branch 'origin/15' into snapshot 2022-10-14 14:44:18 +02:00
Sylvestre Ledru
93ca5f6ee9 improve the cmake sed rules for older cmake 2022-10-14 14:42:33 +02:00
Sylvestre Ledru
9f3e727187 remove openmp workaround 2022-10-14 09:02:38 +02:00
Sylvestre Ledru
17ec1fb485 fix the sed 2022-10-12 23:25:44 +02:00
Sylvestre Ledru
2b27bb7f49 fix the sed 2022-10-12 23:24:21 +02:00
Sylvestre Ledru
96d9131b60 * Disable LTO for now
* don't search for llvm-bolt in cmake
  https://github.com/llvm/llvm-project/issues/58317
2022-10-12 16:21:50 +02:00
Sylvestre Ledru
b1e491b58b don't search for llvm-bolt in cmake https://github.com/llvm/llvm-project/issues/58317 2022-10-12 16:19:16 +02:00
Sylvestre Ledru
a5b9f33284 Disable LTO for now 2022-10-12 16:16:36 +02:00
Sylvestre Ledru
2ae2826f53 Merge remote-tracking branch 'origin/15' into snapshot 2022-10-11 15:56:45 +02:00
Sylvestre Ledru
6823fe7138 Merge remote-tracking branch 'origin/15' into snapshot 2022-10-11 15:19:16 +02:00
Sylvestre Ledru
3fc7e4da95 workaround https://github.com/llvm/llvm-project/issues/58219 by building llvm-extract first 2022-10-11 13:50:58 +02:00
Sylvestre Ledru
71e2f5a23e add more checks in the script 2022-10-11 11:22:31 +02:00
Sylvestre Ledru
a235abc1ef Only enable LTO for some archs 2022-10-11 09:16:43 +02:00
Sylvestre Ledru
160c9b82ca Merge remote-tracking branch 'origin/15' into snapshot 2022-10-10 20:09:54 +02:00
Sylvestre Ledru
0b5d5a54a5 add libbolt to the list 2022-10-10 20:08:28 +02:00
Sylvestre Ledru
66d973fe30 add some debug messages 2022-10-10 19:59:19 +02:00
Sylvestre Ledru
bce4eded80 wasm: fail early 2022-10-10 18:54:50 +02:00
Sylvestre Ledru
c8e6138a33 Don't build wasm target on arm64 armel mips64el mipsel ppc64el armhf for now 2022-10-10 15:22:41 +02:00
Sylvestre Ledru
b241afb285 Merge remote-tracking branch 'origin/14' into 15 2022-10-10 14:58:08 +02:00
Sylvestre Ledru
ca9dbba24d Don't build wasm target on arm64 armel mips64el mipsel ppc64el armhf for now 2022-10-10 13:47:36 +02:00
Sylvestre Ledru
b8759c7cd9 fix the mlir sed 2022-10-10 08:17:49 +02:00
Sylvestre Ledru
2c777189ef Only ship libbolt_rt_hugify.a & libbolt_rt_instr.a on amd64
* Only ship libbolt_rt_hugify.a & libbolt_rt_instr.a on amd64
* fix the cmake detection with libmlir
* Build using LTO - better performances of the llvm-toolchain
  binaires
* Build libfuzzer with C++ 17 ot unbreak it
* Fix a typo to silent lintian (Closes: #1018770)
* Fix some hardcoded paths (Closes: #1020847)
* Suggest wasi-libc for clang
* Allow libunwind-dev to be coinstallable (Closes: #1004112)
* Add better support for the WebAssembly (wasm32/wasm64) targets:
  - Ship compiler-rt for the wasm32 and wasm64 targets. (Closes: #1010932)
  - Add patch wasm-compiler-rt-default.diff to default to compiler-rt for
    these targets. libgcc does not currently exist for WebAssembly in neither
    Debian nor upstream, and therefore compiler-rt is the only option.
  - Add patch wasm-sysroot-usr.diff to support a system-installed (i.e. shipped
    in /usr) wasi-libc. (Closes: #1020746)
* Ship bolt
* New upstream release
* Upload to unstable now that we have removed 12 from the archive
* Unbreak the clang symlink. See
  https://github.com/llvm/llvm-project/issues/57857
* New upstream release
* Fix build on ppc64 and riscv64 (Closes: #1019582)
* New stable release
* syscall-mips64el-def.diff: fix the call to undeclared function 'syscall';
  on mips
* Update of the build dep from llvm-spirv => llvm-spirv-14
  as it is now versioned. It should build libclc
* Fix some hardcoded paths (Closes: #1020847)
* Suggest wasi-libc for clang
* Allow libunwind-dev to be coinstallable (Closes: #1004112)
* Add better support for the WebAssembly (wasm32/wasm64) targets:
  - Ship compiler-rt for the wasm32 and wasm64 targets. (Closes: #1010932)
  - Add patch wasm-compiler-rt-default.diff to default to compiler-rt for
    these targets. libgcc does not currently exist for WebAssembly in neither
    Debian nor upstream, and therefore compiler-rt is the only option.
  - Add patch wasm-sysroot-usr.diff to support a system-installed (i.e. shipped
    in /usr) wasi-libc. (Closes: #1020746)
* Add '-DCMAKE_FIND_DEBUG_MODE=true' to help with debugging
* Add '-DCMAKE_FIND_DEBUG_MODE=true' to help with debugging
* Fifth RC release
* Switch to 3.9 (remove lldb-3.9-dev as it was a transitional pkg)
2022-10-09 20:41:14 +02:00
Sylvestre Ledru
18f70bf18e fix the cmake detection with libmlir 2022-10-09 20:34:54 +02:00
Sylvestre Ledru
4dbb897faa fix the cmake detection with libmlir 2022-10-09 20:34:40 +02:00
Sylvestre Ledru
f9a9e959de fix some parallel executions 2022-10-09 15:26:55 +02:00
Sylvestre Ledru
12a4fecdca fail the build if libfuzzer doesn't build 2022-10-09 13:47:44 +02:00
Sylvestre Ledru
0ee9d69daa Build libfuzzer with C++ 17 2022-10-09 13:47:24 +02:00
Sylvestre Ledru
6239dccef0 transform the error in a warning 2022-10-08 15:25:15 +02:00
Sylvestre Ledru
187d089749 LTO improvements 2022-10-08 15:25:15 +02:00
Sylvestre Ledru
047a9ffd66 Build using LTO 2022-10-08 15:25:15 +02:00
Sylvestre Ledru
34e77c5f0a fix declaration 2022-10-08 10:59:42 +02:00
Sylvestre Ledru
ff4d2206cf Merge remote-tracking branch 'origin/14' into 15 2022-10-08 09:57:30 +02:00
Sylvestre Ledru
6c7377e299 remove unused stuff for mlir/cmake 2022-10-07 20:20:12 +02:00
Faidon Liambotis
50a54f4edc Build compiler-rt for wasm32 and wasm64
Current shortcomings/future work:

 * Unfortunately this currently takes the form of a separate, standalone
   build (with the just-built stage2 toolchain), which makes this a
   little more convoluted. The upstream compiler-rt build system does
   not have a way (that I could find) to manually add additional targets
   to the build.

 * GNU strip (binutils) does not understand the WebAssembly binary, so
   dh_strip fails. llvm-strip does, but a) does not understand all the
   arguments that dh_strip passes (e.g. -N), b) fails with "invalid
   relocation offset" on --strip-debug (but works with --strip-all).

   This currently passes -X to dh_strip to exclude them from being
   stripped entirely. Invoking llvm-strip manually with --strip-all can
   be considered in the future.

* The wasm32/wasm64 binaries are, by design, architecture-independent.
  With this commit, they are being built in every architecture, and
  shipped in the libclang-common-X.Y-dev package, which is arch: any,
  but ships both architecture-dependent (native/host compiler-rt) and
  architecture-independent files (include headers etc.).

  In a future iteration, the wasm32/wasm64 compiler-rt library could be
  factored out to a separate (arch: all) package. This is left
  outstanding because it should probably happen alongside a different
  split for libclang-common-X.Y-dev that will include splitting the
  native libclang-rt as well.

Closes: #1010932
2022-10-07 15:51:42 +02:00
Faidon Liambotis
6ba6091ca0 Fix NJOBS when DEB_BUILD_OPTIONS is not present
NJOBS is supposed to have the -j argument (as in the DEB_BUILD_OPTIONS
case)
2022-10-07 15:51:33 +02:00
Faidon Liambotis
bcf5c6f89b Build compiler-rt for wasm32 and wasm64
Current shortcomings/future work:

 * Unfortunately this currently takes the form of a separate, standalone
   build (with the just-built stage2 toolchain), which makes this a
   little more convoluted. The upstream compiler-rt build system does
   not have a way (that I could find) to manually add additional targets
   to the build.

 * GNU strip (binutils) does not understand the WebAssembly binary, so
   dh_strip fails. llvm-strip does, but a) does not understand all the
   arguments that dh_strip passes (e.g. -N), b) fails with "invalid
   relocation offset" on --strip-debug (but works with --strip-all).

   This currently passes -X to dh_strip to exclude them from being
   stripped entirely. Invoking llvm-strip manually with --strip-all can
   be considered in the future.

* The wasm32/wasm64 binaries are, by design, architecture-independent.
  With this commit, they are being built in every architecture, and
  shipped in the libclang-common-X.Y-dev package, which is arch: any,
  but ships both architecture-dependent (native/host compiler-rt) and
  architecture-independent files (include headers etc.).

  In a future iteration, the wasm32/wasm64 compiler-rt library could be
  factored out to a separate (arch: all) package. This is left
  outstanding because it should probably happen alongside a different
  split for libclang-common-X.Y-dev that will include splitting the
  native libclang-rt as well.

Closes: #1010932
2022-10-07 15:42:47 +03:00
Faidon Liambotis
6d85b82fd9 Fix NJOBS when DEB_BUILD_OPTIONS is not present
NJOBS is supposed to have the -j argument (as in the DEB_BUILD_OPTIONS
case)
2022-10-07 15:30:35 +03:00
Sylvestre Ledru
46d44aa1c8 disable bolt on arm64 2022-10-07 11:35:32 +02:00
Sylvestre Ledru
5ccf04cb42 remove the llvm spir check 2022-10-07 09:22:52 +02:00
Sylvestre Ledru
5bfe8cc3c2 fix bolt 2022-10-05 22:52:56 +02:00
Sylvestre Ledru
83fab60250 hardcode ninja as we support only one 2022-10-05 22:52:55 +02:00
Sylvestre Ledru
6e2ba0bc7d respect nocheck for real 2022-10-05 22:52:55 +02:00
Sylvestre Ledru
2c13bd0050 disable bolt (to avoid new) for now 2022-10-05 22:52:55 +02:00
Sylvestre Ledru
16e0582032 fix typo 2022-10-05 15:48:57 +02:00
Sylvestre Ledru
40422bb78e add bolt support 2022-10-04 09:24:13 +02:00