Package Base Details: llvm-git

Git Clone URL: https://aur.archlinux.org/llvm-git.git (read-only, click to copy)
Keywords: clang git lld lldb llvm polly
Submitter: yurikoles
Maintainer: Lone_Wolf
Last Packager: Lone_Wolf
Votes: 110
Popularity: 0.022922
First Submitted: 2018-12-05 13:56
Last Updated: 2020-01-26 13:32

Pinned Comments

Lone_Wolf commented on 2019-04-12 20:41

I've looked good at clang-trunk , llvm-svn, repo llvm/clang packages and think this package is now on route to become a worthy successor to llvm-svn .

  • llvm-libs-git holds the runtime libraries.

    It conflicts with the repo llvm-libs package. This is the only way to make sure the llvm linker from git is used, and that's needed for a full dev environment.

  • llvm-git

    has llvm , clang, compiler-rt, ocaml & python bindings, polly , lld , lldb .


The Package now uses a new environment variable to make ninja behave, NINJAFLAGS. If you want to use it adjust the snippet below to your desired values and add it to makepkg.conf.

Incase you are satisfied with ninja defaults you don't need to do anything.

# Add to makepkg.conf
# limit ninja to 20 jobs
# requires special code in PKGBUILD
# see ninja --help for additonal options
NINJAFLAGS="-j20"

The check() function fails rather often, but I do suggest to build with them. If build fails due to test failure you can add --nocheck to skip the tests.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 ... Next › Last »

Lone_Wolf commented on 2019-10-30 21:26

  • ConfuZzled

I never tested it, but doubt it is a good idea. building mesa-git is fast (typically 1-5 minutes on my system).

  • Cebtenzzre

/usr/lib/clang/10.0.0/lib/linux/ folder from llvm-git package holds compiler-rt runtime files. Could you provide a testcase to show what you're missing ?

Cebtenzzre commented on 2019-10-29 22:51

I needed to add options=('staticlibs') to the PKGBUILD to get the static libraries that are part of compiler-rt. The Arch repo package for compiler-rt sets this option.

ConfuZzled commented on 2019-10-11 11:55

Does this package contain everything that llvm-libs-minimal-git does? While the AUR package for mesa-git I can obviously configure to use llvm-libs-git, the package in PedroHLC's still depends on it, which causes a file conflict. Would there be any issues in making this also provide llvm-libs-minimal-git?

Sinistar commented on 2019-09-25 21:44

Yes I add the version to the dependency. I also split out the packages as they are in the extra repo, but do not build lld or lldb.

Lone_Wolf commented on 2019-09-25 08:03

Sinistar, did you also add a hard dependency on that version as a runtime dependency for llvm-git ?

If not, then you have no guarantee the ocaml version at runtime will be the same as the one the package is build against.

I guess the clean way to do this would be to go back to the method used in llvm-svn (and extra/llvm ) and split off the ocaml support into a package_llvm-ocaml-git() function that gets a hard dependency on the specific ocaml version it's build against.

Sinistar commented on 2019-09-24 23:48

I use this in my PKGBUILD for ocaml version.

 _ocaml_ver() {
 { pacman -Q ocaml 2>/dev/null || pacman -Sp --print-format '%n %v' ocaml ;} \
     | awk '{ print $2 }' | cut -d - -f 1 | cut -d . -f 1,2,3}

Lone_Wolf commented on 2019-08-22 21:31

The hardcoded ocaml version was a remnant from llvm-svn and intended to ensure installed ocaml was the same as where llvm-ocaml-svn was build against.

This worked because ocaml was a dependency for llvm-ocaml-svn, but ocaml is an optdepend for llvm-git and optdepends can't have version requirements.

I've removed the hardcocded version requirement.

Lone_Wolf commented on 2019-08-22 13:08

Yup, ocaml was upgraded in repos and you're the first to notice that breaks building .

I'll update it and/or look into methods to automate getting that version.

PedroHLC commented on 2019-08-22 11:36

error: target not found: ocaml=4.07.1

Is that right? ocaml in extra is on 4.08.0

gally commented on 2019-07-11 20:54

Hi, thanks alot for the suggestions. I figured out what was wrong on my part. Turns out my buildfolder ran out of space, even though no error pointed to this at first. I moved it around and now it build fine. Sorry :)