Commit 8f710cc598 introduced a circular
dependency between ocaml.scm and llvm.scm by referring to 'llvm' from
the top level of ocaml.scm. This fixes it.
* gnu/packages/ocaml.scm (make-ocaml-llvm, ocaml-llvm)
(ocaml-llvm-9, ocaml-llvm-10, ocaml-llvm-11): Move to...
* gnu/packages/llvm.scm: ... here.
This is in preparation of updating the broken python-numba package.
* gnu/packages/llvm.scm (python-llvmlite): Update to 0.34.0.
[arguments]: Enable tests.
[phases]{patch-reference-to-llvmlite, skip-failing-tests}
{set-compiler/linker-flags}: New phases.
[inputs]: Update custom LLVM input and associated patches.
[home-page]: Use HTTPS.
Having a non-standard (different than 1) patch level requirement means the
patches cannot be composed easily from different origins. The following
command was used to remove one level from the llvm-9 patches:
sed -e 's|^--- a/|--- |' -e 's|^+++ b/|+++ |' \
gnu/packages/patches/llvm-9* -i
* gnu/packages/llvm.scm (llvm-9)[source]: Drop the patch-flags field.
Re-indent list of patches.
* gnu/packages/patches/llvm-9-fix-bitcast-miscompilation.patch: Strip one level.
* gnu/packages/patches/llvm-9-fix-lpad-miscompilation.patch: Likewise.
* gnu/packages/patches/llvm-9-fix-scev-miscompilation.patch: Likewise.
Fixes <https://bugs.gnu.org/42599>.
Reported by Malte Frank Gerdes <malte.f.gerdes@gmail.com>.
This is a follow-up to commit 300b795520.
* gnu/packages/llvm.scm (clang-from-llvm): Guard the 'symlink-cfi_blacklist'
phase with a version check, as it first appears in Clang 3.8.
As this commit [1] appears to affect the patches, including the v0.30.0
tag (so the tag must have been changed).
1: cdd99deb32
* gnu/packages/llvm.scm (python-llvmlite)[inputs]: Use a specific commit for
the patches.
* gnu/packages/llvm.scm (clang-from-llvm): Add #:tools-extra.
Add 'output' field. In 'inputs', add TOOLS-EXTRA when it's given.
In 'arguments', add 'add-tools-extra' and 'move-extra-tools' phases when
TOOLS-EXTRA is given.
* gnu/packages/llvm.scm (llvm-for-extempore): Update to 3.8.
[source]: Use upstream patched source.
* gnu/packages/patches/llvm-for-extempore.patch: Delete due to source being
already patched.
* gnu/local.mk (dist_patch_DATA): Remove it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/llvm.scm (clang-from-llvm)[arguments]: Rewrite phase
'set-glibc-file-names' to use VERSION>=? from (guix utils) and splice in the
relevant build code, instead of doing the comparison at build time.
* gnu/packages/llvm.scm (llvm-8): Rename to ...
(llvm): ... this. Update to 9.0.1.
[license]: Change to ASL2.0.
(clang-runtime-from-llvm)[license]: Inherit from LLVM.
(clang-from-llvm)[license]: Conditionally choose license based on version.
(llvm-9, clang-runtime-8, clang-8, clang-toolchain-8): New public variables.
(llvm-7): Inherit from LLVM-8 (for the license change).
(llvm-6): Inherit from LLVM-7.
(llvm-3.9.1): Inherit from LLVM-6.
(llvm-3.8): Inherit from LLVM-3.9.1.
(llvm-3.7): Inherit from LLVM-3.8.
(llvm-3.6): Inherit from LLVM-3.7.
(llvm-3.5): Inherit from LLVM-3.6.
(libcxx, libclc, libomp): Update to 9.0.1.