* gnu/packages/llvm.scm (llvm-12)[arguments]: Add a phase to update
config.guess when config is one of the native-inputs.
(llvm-10)[native-inputs]: Add config when building for riscv64-linux and
the llvm version is less than 11.
* gnu/packages/llvm.scm (llvm-for-rocm): Update to 5.1.3, now based on llvm-14.
[source]{patches}: Remove unneeded patches (add_Object and add_libraries) and add new one (linkdl).
* gnu/packages/patches/llvm-roc-3.0.0-add_libraries.patch,
gnu/packages/patches/llvm-roc-4.2.0-add_Object.patch: Delete files.
* gnu/packages/patches/llvm-roc-5.0.0-linkdl.patch: New file.
* gnu/local.mk (dist_patch_DATA): Update to match current patches.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/llvm.scm (clang-from-llvm)[arguments]: When building for
riscv64-linux add configure-flags and make-flags to ensure linking with
'-latomic'.
Clang is also a compiler for Objective-C.
* gnu/packages/llvm.scm (clang-for-llvm): Add OBJC_INCLUDE_PATH to native-search-paths.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/llvm.scm (%llvm-monorepo-hashes, %llvm-patches, llvm-monorepo):
New variables.
(clang-runtime-from-llvm): Make HASH optional; use monorepo when not present.
(clang-from-llvm): Likewise.
(llvm-14, clang-runtime-14, clang-14, clang-toolchain-14, lld-14): New variables.
(llvm-13): Inherit from LLVM-14.
(lld-13): Inherit from LLD-14.
(lld): Turn into alias for LLD-14.
* gnu/packages/patches/clang-14.0-libc-search-path.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/zig.scm (zig): Change from LLD to LLD-13.
Fixes <https://issues.guix.gnu.org/52054>.
* gnu/packages/llvm.scm (clang)[arguments]<#:phases>:
Remove the separate "extra" output and build the main package and
clang-tools-extras with shared library linkage.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/llvm.scm (lldb): Update to 13.0.1.
[inputs]: Change from LLVM-12 and CLANG-12 to LLVM-13 and CLANG-13.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/llvm.scm (libomp): Update to 13.0.0.
[arguments]: Add workaround to #:configure-flags.
[native-inputs]: Change from CLANG-9 and LLVM-9 to CLANG and LLVM.
This fixes a regression introduced in a05e573d60
as the LLD version must match the LLVM version.
* gnu/packages/llvm.scm (lld-12): New variable.
* gnu/packages/zig.scm (zig)[inputs]: Change from LLD to LLD-12.
* gnu/packages/llvm.scm (clang-from-llvm)[arguments]: Adjust
symlink-cfi_blacklist phase to work with the renamed "ignorelist" in
clang-runtime@13. Rename phase to match.
* gnu/packages/llvm.scm (clang-13)[arguments]: Remove.
* gnu/packages/llvm.scm (python-llvmlite)[inputs]: Remove patch from the
custom LLVM variant, because the custom patch phase was defunct and the patch
no longer applies.
* gnu/packages/llvm.scm (clang-from-llvm): Add #:properties and honor it.
(clang-properties): New procedures.
(make-clang-toolchain): Set 'properties' field.
Inheritance should happen within the same module.
* gnu/packages/cpp.scm (%cling, llvm-cling, clang-cling-runtime)
(clang-cling, cling): Move to...
* gnu/packages/llvm.scm: ... here. Use 'modify-inputs' instead of
'alist-replace'.
Inheritance should happen within the same module.
* gnu/packages/julia.scm (julia-patch): Make public.
(llvm-julia): Move to...
* gnu/packages/llvm.scm (llvm-julia): ... here.
Partly fixes <https://issues.guix.gnu.org/51088>.
* gnu/packages/patches/clang-11.0-libc-search-path.patch: Update.
* gnu/packages/patches/clang-12.0-libc-search-path.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/llvm.scm (clang-12): Use it.
Partly fixes <https://issues.guix.gnu.org/51088>.
* gnu/packages/patches/clang-7.0-libc-search-path.patch: Update.
* gnu/packages/patches/clang-8.0-libc-search-path.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/llvm.scm (clang-8): Use it.
* gnu/packages/patches/llvm-3.6-fix-build-with-gcc-10.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/llvm.scm (llvm-3.6)[source]: Use it.
The derivation when compiling natively remains the same,
so this doesn't cause any rebuilds.
* gnu/packages/llvm.scm (llvm-12)[arguments]<#:configure-flags>: Set
LLVM_TABLEGEN, LLVM_DEFAULT_TARGET_TRIPLE, LLVM_TARGET_ARCH and
LLVM_TARGETS_TO_BUILD when cross-compiling.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>