Description:
Collection of modular and reusable compiler and toolchain technologies, trimmed down git version
Upstream URL:
https://llvm.org/
During building you may encounter lots of coredumps, slowing build down or even dramatically reducing the responsiveness of your system.
See
https://wiki.archlinux.org/title/Core_dump
for solutions/workarounds .
llvm-git
It aims to provide a full llvm/clang compiler environment for development purposes.
Supports cross-compiling , bindings for external stuff (python, ocaml etc) , and some things not in extra-llvm.
intended to be used with archlinux core,extra & community repos
CONFLICTS with extra llvm/clang packages
binary versions in
chaotic aur unofficial repository
packages created & maintained by Lordheavy, an arch developer
intended to be used with archlinux testing repos
sometimes has problems on systems where testing repos are disabled
uses same package structure as llvm/clang in official repos
source
binary versions in
LordHeavys unoffical repo
Why does this package exist ?
Llvm & aur llvm-git are intended to provide a full development environment of llvm/clang suite that can replace eachother completely (aur llvm-git adds some xtra functionality)
llvm-minimal-git is a stripped-down llvm trunk build with these goals :
llvm-libs-minimal-git must coexist with stable llvm-libs
provide what's needed for mesa trunk
(it's a hard dependency for mesa-minimal-git and a possible dependeny for mesa-git)
provide basic llvm/clang compiler functionality on x86-64 architecture
Some of the things that are stripped out :
cross-compiling support
bindings for ocaml
bindings for go
lld , lldb and polly
documentation
examples
benchmarks
Maintainers (and users) should only depend on llvm-miminal-git after verifying it satisfies what they need.
@wustdsh I'm so caught up in my things that I didn't bother to look and just reported.
Original line:
rm "$pkgdir"/usr/lib/clang/19/lib/{i386-pc-linux-gnu,x86_64-pc-linux-gnu}/*.a
Only removed
i386-pc-linux-gnu
Left:
rm "$pkgdir"/usr/lib/clang/19/lib/x86_64-pc-linux-gnu/*.a
Builds just fine. @Lone_Wolf
Failing:
warning: no files found matching 'TODO'
warning: no previously-included files matching '*pyc' found anywhere in distribution
warning: no previously-included files matching '*~' found anywhere in distribution
no previously-included directories found matching 'tests/Output'
no previously-included directories found matching 'tests/*/Output'
no previously-included directories found matching 'tests/*/*/Output'
no previously-included directories found matching 'tests/*/*/*/Output'
adding license file 'LICENSE.TXT'
writing manifest file 'lit.egg-info/SOURCES.txt'
Copying lit.egg-info to /build/llvm-minimal-git/pkg/llvm-minimal-git/usr/lib/python3.11/site-packages/lit-19.0.0.dev0-py3.11.egg-info
running install_scripts
Installing lit script to /build/llvm-minimal-git/pkg/llvm-minimal-git/usr/bin
~/llvm-minimal-git/src
rm: cannot remove '/build/llvm-minimal-git/pkg/llvm-minimal-git/usr/lib/clang/19/lib/i386-pc-linux-gnu/*.a': No such file or directory
==> ERROR: A failure occurred in package_llvm-minimal-git().
Aborting...
==> ERROR: Build failed, check /home/georgi/Documents/chroot/georgi/build
curl is currently broken (curl-8.7.1-3) and git+https will fail downloading the source. Downgrading curl (8.6.0-4) works.
Did you include base-devel when creating the chroot ?
You're not supposed to add makedepends through arch-nspawn but should let makechrootpkg determine makedepends & depends at build time. However if you do want to add makedeps that way why did you leave out libffi, ncurses, libxml2 and
libxcrypt ?
Which revision are you trying to build ?
I get a CMake error when trying to build this in a clean chroot:
CMake Error: The inter-target dependency graph contains the following strongly connected component (cycle):
[... a ton of targets ...]
At least one of these targets is not a STATIC_LIBRARY. Cyclic dependencies are allowed only among static libraries.
CMake Generate step failed. Build files cannot be regenerated correctly.
Steps to reproduce:
Set up clean chroot as described in the wiki
install dependencies: arch-nspawn $CHROOT/root pacman -S git cmake libedit python python-setuptools
git clone https://aur.archlinux.org/llvm-minimal-git.git
cd llvm-minimal-git
and then makechrootpkg -c -r $CHROOT
I have encountered problems during building that indicate options=('!lto') is ignored by makepkg but OPTIONS=('!lto') does work.
See https://bbs.archlinux.org/viewtopic.php?id=293226 for more info
The issue was not having !debug in the PKGBUILD, corrected.