Commit Graph

6223 Commits

Author SHA1 Message Date
Sylvestre Ledru
1e35ae451d fix merge 2024-01-24 14:01:13 +01:00
Sylvestre Ledru
f2597caf79 Merge remote-tracking branch 'origin/17' into 18 2024-01-24 14:00:36 +01:00
Sylvestre Ledru
a883ee8d45 try to enable sccache on 'my' s390x machines 2024-01-24 13:30:08 +01:00
Sylvestre Ledru
9827291d40 try to enable sccache on 'my' s390x machines 2024-01-24 11:51:17 +01:00
Sylvestre Ledru
49ab7c1cb2 Also pass -DLIBCXXABI_USE_LLVM_UNWINDER:BOOL=OFF to libcxx-wasm32-wasi builds 2024-01-19 14:58:47 +01:00
Sylvestre Ledru
de19e367c2 remove the unconditionnaly defined -DLIBUNWIND_USE_COMPILER_RT=ON 2024-01-19 09:34:37 +01:00
Sylvestre Ledru
028803b995 remove the unconditionnaly defined -DLIBUNWIND_USE_COMPILER_RT=ON 2024-01-19 09:34:07 +01:00
Sylvestre Ledru
a7fbe8483a rebase of the patch 2024-01-17 09:17:43 +01:00
Sylvestre Ledru
2a2d05e967 update of the changelog 2024-01-15 08:56:45 +01:00
Sylvestre Ledru
97c059388e uploaded 2024-01-15 08:56:07 +01:00
Sylvestre Ledru
28be2cd7e6 Merge branch '17' into '17'
Enable flang on loong64

See merge request pkg-llvm-team/llvm-toolchain!131
2024-01-15 07:52:32 +00:00
chenli
2cd430f493 Enable flang on loong64 2024-01-15 14:14:05 +08:00
Sylvestre Ledru
d5816efd66 For the usage of -DLIBCXXABI_USE_LLVM_UNWINDER=OFF when we don't build unwind https://github.com/llvm/llvm-project/issues/77846 2024-01-12 18:33:44 +01:00
Sylvestre Ledru
fcf132b2c9 disable sccache when building with coverity 2024-01-12 10:36:24 +01:00
Sylvestre Ledru
e976326360 change the order of coverity/sccache 2024-01-12 10:29:47 +01:00
Sylvestre Ledru
e058c4fea4 Merge branch '17.0.6-4-fallout' into '17'
Fix FTBFSes on i386 and armel resulting from the 1:17.0.6-3 -> 1:17.0.6-4 changes

See merge request pkg-llvm-team/llvm-toolchain!130
2024-01-10 08:20:14 +00:00
Faidon Liambotis
9a997c5589 Fix i386 FTBFS resulting from COMPILER_RT_DEFAULT_TARGET_ONLY
> dh_install: warning: Cannot find (any matches for) "usr/lib/llvm-17/lib/clang/17/bin/hwasan_symbolize" (tried in ., debian/tmp)

hwasan_symbolize is actually an 64-bit-only feature, and was
accidentally included before. Replace the arch opt-out list, with an
opt-in one and a comment pointing to HWASAN_SUPPORTED_ARCH.

> dh_install: warning: Cannot find (any matches for) "usr/lib/llvm-17/lib/clang/17*/lib/linux/liborc_rt*" (tried in ., debian/tmp)

i386 is not in the ALL_ORC_SUPPORTED_ARCH list. Previously, the package
shipped liborc_rt-x86_64.a, but since we don't ship amd64 multilib
binaries anymore, remove the reference.

Addresses regressions introduced with commit:
  400d893908
  Enable COMPILER_RT_DEFAULT_TARGET_ONLY for all archs
2024-01-10 09:47:01 +02:00
Faidon Liambotis
bdfce0866c Revert "Enable COMPILER_RT_BUILD_BUILTINS for armel"
FTBFSes with:

FAILED: CMakeFiles/clang_rt.builtins-arm.dir/arm/sync_fetch_and_add_4.S.o
/<<PKGBUILDDIR>>/build-llvm/./bin/clang -target arm-linux-gnueabi -DVISIBILITY_HIDDEN  -O3 -DNDEBUG -fno-lto -std=c11 -fPIC -fno-builtin -fvisibility=hidden -fomit-frame-pointer -DCOMPILER_RT_HAS_FLOAT16 -MD -MT CMakeFiles/clang_rt.builtins-arm.dir/arm/sync_fetch_and_add_4.S.o -MF CMakeFiles/clang_rt.builtins-arm.dir/arm/sync_fetch_and_add_4.S.o.d -o CMakeFiles/clang_rt.builtins-arm.dir/arm/sync_fetch_and_add_4.S.o -c /<<PKGBUILDDIR>>/compiler-rt/lib/builtins/arm/sync_fetch_and_add_4.S
In file included from /<<PKGBUILDDIR>>/compiler-rt/lib/builtins/arm/sync_fetch_and_add_4.S:14:
/<<PKGBUILDDIR>>/compiler-rt/lib/builtins/arm/sync-ops.h:22:2: error: DMB is only supported on ARMv6+
   22 | #error DMB is only supported on ARMv6+
      |  ^

This was despite an upstream commit labeled "[compiler-rt] support
armv4t". Perhaps something going on with the way we configure? Revert
for the time being, until (if) someone cares.

This reverts commit 1b0abffef7.
2024-01-10 09:32:21 +02:00
Sylvestre Ledru
5a693e2501 rebase of the patch 2024-01-09 23:42:35 +01:00
Sylvestre Ledru
556a6737b6 debian/qualify-clang.sh: remove the test of i386 - use libcompiler-rt:i386 instead 2024-01-09 13:04:50 +01:00
Sylvestre Ledru
70777a3fed fix package name 2024-01-09 11:54:56 +01:00
Sylvestre Ledru
ac5a7481d4 fix changelog 2024-01-09 11:53:43 +01:00
Sylvestre Ledru
0c176de6ac prepare upload 2024-01-09 09:45:59 +01:00
Sylvestre Ledru
f463aa4e23 Cherry pick the wasm fix from 16 (Closes: #1057838) 2024-01-09 09:42:47 +01:00
Sylvestre Ledru
1de36891cf Merge branch 'common-arch-all' into '17'
Convert libclang-common-*-dev to Arch: all/M-A: foreign

See merge request pkg-llvm-team/llvm-toolchain!129
2024-01-09 08:29:32 +00:00
Sylvestre Ledru
8fe0ffdaf1 Merge branch 'doc-m-a-foreign' into '17'
Mark documentation packages as Multi-Arch: foreign

See merge request pkg-llvm-team/llvm-toolchain!128
2024-01-09 08:29:23 +00:00
Sylvestre Ledru
e61452acd6 Merge branch 'clang-rt-armel' into '17'
Enable COMPILER_RT_BUILD_BUILTINS for armel

See merge request pkg-llvm-team/llvm-toolchain!126
2024-01-09 08:28:12 +00:00
Sylvestre Ledru
e9d8ac6c22 Merge branch 'clang-rt-default-only' into '17'
Enable COMPILER_RT_DEFAULT_TARGET_ONLY for all archs

See merge request pkg-llvm-team/llvm-toolchain!125
2024-01-08 14:01:59 +00:00
Sylvestre Ledru
4bad159356 Merge branch 'sparc-unreferenced' into '17'
Drop two unreferenced debian/patches

See merge request pkg-llvm-team/llvm-toolchain!127
2024-01-08 13:59:21 +00:00
Sylvestre Ledru
edf1bd3e98 Merge branch 'cxxdev-abi' into '17'
Add libc++-*-dev -> libc++abi-*-dev dependency

See merge request pkg-llvm-team/llvm-toolchain!124
2024-01-08 13:58:30 +00:00
Faidon Liambotis
c7d388292f Convert libclang-common-*-dev to Arch: all/M-A: foreign
libclang-common-*-dev is an Architecture: any package, possibly due to
the fact that it contained compiler-rt before it was split off to a
separate package. It is not marked as Multi-Arch: same, despite the
hinter suggesting to do so, presumably due to identical files.

Convert it to Architecture: all / Multi-Arch: foreign instead. This
requires the removal of the arch: any dependency libllvm17, which is
spurious anyway. However, for extra safety, add version specifiers to
other packages that do depend on (an unversioned) libllvm17, such as
clang.
2024-01-08 15:44:59 +02:00
Faidon Liambotis
84f2134e5c Mark documentation packages as Multi-Arch: foreign
..and convert clang-*-examples from Architecture: any -> all.

Identified by the multiarch hinter:
  * clang-17-examples could be converted to Architecture: all and marked Multi-Arch: foreign
  * clang-17-doc could be marked Multi-Arch: foreign
  * libomp-17-doc could be marked Multi-Arch: foreign
  * llvm-17-doc could be marked Multi-Arch: foreign
2024-01-08 15:44:06 +02:00
Faidon Liambotis
7b0348cfde Drop two unreferenced debian/patches
sparc/sparc-D98574-clang-def.patch and
sparc/sparc-D98575-compiler-rt.patch are not in debian/patches/series so
it's safe to drop them. D98574 is now merged, D98575 is abandoned, due
to it being fixed elsewhere, so there's no chance they're going to be
revived either.
2024-01-08 15:42:31 +02:00
Faidon Liambotis
1b0abffef7 Enable COMPILER_RT_BUILD_BUILTINS for armel
According to upstream commit aadec60ad9b81f00cf6fcdcbff61f1144d206769,
starting with LLVM 17, armv4t is now supported.

(untested)
2024-01-08 15:41:38 +02:00
Faidon Liambotis
400d893908 Enable COMPILER_RT_DEFAULT_TARGET_ONLY for all archs
This commit does two things in one go:
1) Enable COMPILER_RT_DEFAULT_TARGET_ONLY for i386 and amd64:

Right now i386/amd64 are building compiler-rt for each other, in
addition to themselves.:
 - libclang-rt-17-dev:amd64 is also shipping the i386 builtins, and
   Depending on libc6-i386:amd64/lib32stdc++:amd64.
 - libclang-rt-17-dev:i386 is also shipping the x86_64 built-ins, and
   Depending on libc6-amd64:i386/lib64stdc++6:i386/lib64atomic1:i386.

Beyond the extra cruft in files and dependencies, this means that the
amd64/i386 packages are shipping conflicting files, and dpkg is refusing
to unpack one in the presence of the other (an RC bug in itself). This
is also identified by the multiarch hinter with the following message:
   libclang-rt-17-dev conflicts on 78 files starting with /usr/lib/llvm-17/lib/clang/17/lib/linux/ on amd64 <-> i386

Let users who want to build e.g. 32-bit binaries in amd64 use multi-arch
for this use case, by installing libclang-rt-17-dev:i386. The
alternative would be to support multi-lib, and ship additional packages
such as libclang-rt-17-dev-i386:amd64 (and vice-versa), but this feels
like an overkill. Multi-lib remains still a possibility with (Debian's)
clang's default, libgcc (lib32gcc/lib64gcc) as well.

2) Enable COMPILER_RT_DEFAULT_TARGET_ONLY unconditionally:

This was being passed in an opt-in basis, via STAGE_ALL_CMAKE_EXTRA for
the following architectures:
  * armel
  * armhf
  * powerpc
  * sparc
  * sparc64
  * s390x
  * mips64el
  * hurd-i386

So, with i386/amd64 also opting-in, this leaves only a few remaining
Debian architectures.

Furthermore, upon inspecting compiler-rt/cmake/base-config-ix.cmake, it
looks like the only architectures that are actually building for
additional (non-default) targets are i386, amd64, powerpc (note: not
ppc64el!), mips*, and arm. Turns out we've disabled that for all of them
now.

Therefore, pass COMPILER_RT_DEFAULT_TARGET_ONLY=ON to all architectures
unconditionally, and thus reduce an additional variation factor.
2024-01-08 15:40:12 +02:00
Faidon Liambotis
4c6dc0ef68 Add libc++-*-dev -> libc++abi-*-dev dependency
libc++abi-*-dev is necessary when using libc++-*-dev:
  $ apt install clang-17 libc++-17-dev
  $ clang++-17 -stdlib=libc++ -o hello hello.cpp
  /usr/bin/ld: cannot find -lc++abi: No such file or directory
  clang++-17: error: linker command failed with exit code 1 (use -v to see invocation)

Note that the libc++1-* -> libc++abi-* dependency already exists.
2024-01-08 15:36:56 +02:00
Sylvestre Ledru
c659ae9a28 refresh libomp5 symbol list 2023-12-20 10:17:53 +01:00
Sylvestre Ledru
2adf1da1ef rebase of the patch 2023-12-18 23:23:58 +01:00
Sylvestre Ledru
35c0ede504 rebase of the patch 2023-12-13 21:56:20 +01:00
Matthias Klose
e20f4b1bba * libclang1-17: Remove the full version symlinks. 2023-12-11 22:56:07 +01:00
Sylvestre Ledru
6687fb0527 * New snapshot release
* Fix a libc++ conflicts (Closes: #1057899)
2023-12-11 10:35:09 +01:00
Sylvestre Ledru
845e43e80f Merge remote-tracking branch 'origin/17' into snapshot 2023-12-11 10:26:13 +01:00
Sylvestre Ledru
ff81119e58 rebase of the patch 2023-12-09 23:31:35 +01:00
Sylvestre Ledru
5a842ba5c2 prepare upload 2023-12-09 23:15:50 +01:00
Sylvestre Ledru
395e9a3e89 qualify-clang.sh: fix the filename 2023-12-09 22:58:13 +01:00
Sylvestre Ledru
e080ef40f3 fix https://github.com/llvm/llvm-project/issues/74766 2023-12-08 09:55:23 +01:00
Gianfranco Costamagna
142b0f07b4 Update changelog 2023-12-08 09:49:20 +01:00
Gianfranco Costamagna
92c2f79260 Drop sed command, useless now 2023-12-08 09:48:50 +01:00
Sylvestre Ledru
9622f7635a Also add back /usr/lib/llvm-17/lib/libclang-17.so.1 2023-12-06 17:56:50 +01:00
Sylvestre Ledru
295214f8d0 cherry pick the change from 17 about the cmake 2023-12-06 17:08:31 +01:00