Status of the official LLVM APT repositories

Hi,

I'd like to ask what's the status of the Debian / Ubuntu repositories linked from llvm.org, specifically http://llvm.org/apt/ ...

If the timestamps are correct, some of the repositories haven't been updated for months. I've tried browsing them directly, and e.g. for Ubuntu 14.04 (Trusty), the newly released LLVM 3.8 is nowhere to be found, even though it's advertised on this web page. I've also tried to check out http://llvm-jenkins.debian.net, but it doesn't seem to respond at all.

I poked around on the IRC, but couldn't really get an authoritative answer and was directed to the mailing list instead. Could someone please shed some light on this? I'm thoroughly confused...

Many thanks!

P.S. I'm not a subscriber of this list, so please do CC me on replies.

This is still maintained. However the cmake transition (for both 3.8 and 3.9) wasn’t simple…
While it should be fine for debian, it might need more work for old Ubuntu (back port of cmake)

Hi Sylvestre,

Thank you for the clarification! Any ETAs on when the APT repositories are going to be updated with LLVM 3.8 & 3.9 builds?

I'm not sure how clean / dirty of a solution you'd be okay with, but I'd just point out that CMake developers provide working binary tarballs for Linux with every release at Download | CMake . So, if you are not a purist and/or need the CMake backport for some other reasons anyways, it's as simple as just unpacking it on the builder and adding to the front of the PATH variable. I use this approach on my Ubuntu 12.04 (Precise) builders, as a proper backport simply isn't worth the effort for my purposes, since they are going to be decommissioned rather soon anyways and it's working very nicely.

Le 09/03/2016 à 21:44, Yury V. Zaytsev a écrit :

This is still maintained. However the cmake transition (for both 3.8
and 3.9) wasn't simple... While it should be fine for debian, it
might need more work for old Ubuntu (back port of cmake)

Hi Sylvestre,

Thank you for the clarification! Any ETAs on when the APT repositories
are going to be updated with LLVM 3.8 & 3.9 builds?

I fixed the snapshot builds today in Debian itself (
https://ftp-master.debian.org/new/llvm-toolchain-snapshot_1:3.9~svn262954-1.html
)
Hopefully, most of the builds are going to be OK.

I'm not sure how clean / dirty of a solution you'd be okay with, but
I'd just point out that CMake developers provide working binary
tarballs for Linux with every release at Download | CMake .
So, if you are not a purist and/or need the CMake backport for some
other reasons anyways, it's as simple as just unpacking it on the
builder and adding to the front of the PATH variable. I use this
approach on my Ubuntu 12.04 (Precise) builders, as a proper backport
simply isn't worth the effort for my purposes, since they are going to
be decommissioned rather soon anyways and it's working very nicely.

I will give it a try.

Thanks,

Sylvestre

Thank you very much for working on this!
The LDC team is using Travis CI to test LDC against LLVM 3.5-3.9 and we
depend on these APT repositories: Travis CI is using Ubuntu Precise.
LLVM 3.8 is available (svn 257166), but LLVM 3.9 is not [1].

Best regards,
  Johan Engelen

[1] Tested 7 days ago,
https://github.com/travis-ci/apt-package-whitelist/issues/2671

I am working on it as we speak. Hopefully, most of the 3.8 & 3.9 packages are going to be green by next week. Sylvestre

Hi Sylvestre,

I am working on it as we speak. Hopefully, most of the 3.8 & 3.9 packages are going to be green by next week.

Thank you for working on this, your efforts are very much appreciated! I'd be happy to test the new builds as they become available.

Speaking of "going green", the builder which I used to monitor still doesn't seem to respond for me:

     http://llvm-jenkins.debian.net

Is it now behind a firewall and no longer publicly accessible, or maybe it has been migrated elsewhere and the http://llvm.org/apt/ webpage needs to be updated with the new URL?

Hi Sylvestre,
  Did it work out? Could you give an update on this?
llvm.org/apt still reports the last update was on Jan 8th.

Thanks a lot,
  Johan

Hi Sylvestre,

I am working on it as we speak. Hopefully, most of the 3.8 & 3.9 packages are going to be green by next week.

Any updates on that?

It appears that Precise repositories are now in order, but all the others (and, most importantly, Trusty) are still not updated.

Also, 3.9 packages are not mentioned on the web page, although they seem to be available for Precise from the snapshots repository.

For me, the Jenkis URL is still not responding, so although I can see the commits to the svn repository at http://anonscm.debian.org, I can't really figure out what's actually going on...

Many thanks!

Le 29/03/2016 à 14:17, Yury V. Zaytsev a écrit :

Hi Sylvestre,
ri

I am working on it as we speak. Hopefully, most of the 3.8 & 3.9 packages are going to be green by next week.

Any updates on that?

Yes, most of the remaining issues are fixed (the sync to llvm.org/apt was disabled). I will send a summary soon.

It appears that Precise repositories are now in order, but all the others (and, most importantly, Trusty) are still not updated.

I forced the push. Should be fine now.

Also, 3.9 packages are not mentioned on the web page, although they seem to be available for Precise from the snapshots repository.

Not sure what you mean here?
llvm-toolchain-trusty contains 3.9

For me, the Jenkis URL is still not responding, so although I can see the commits to the svn repository at http://anonscm.debian.org, I can't really figure out what's actually going on...

Yes, this is running on a temporary server (the previous one had some hardware issues).
Not sure I will make it public or not.

Sylvestre

Thanks a lot!

cheers,
  Johan

Thanks for all the work, the packages are working great!

Cheers, Jakob.

Hi Sylvestre,

I’d like to shime in here. These apt repository used to contain packages named llvm-3.8-tools containing, amongst other things, the lit python library used to test llvm. It seems that it went away recently and I have travis build failing because of this.

What is going here ? It that just a mistake ? Is there something I can do to help get this package back ?

I’d like to shime in here. These apt repository used to contain packages named llvm-3.8-tools containing, amongst other things, the lit python library used to test llvm. It seems that it went away recently and I have travis build failing because of this.

What is going here ? It that just a mistake ? Is there something I can do to help get this package back ?

I removed llvm-lit, among other utilities, after receiving guidance that they were not intended for distribution to LLVM users. Sounds like that was wrong.

You would have to update CMake to install them; and then reintroduce them into the Debian packaging.

Cheers,
Andrew

I’d be happy to do it, but this is a bit much high level for me to be actionable. Can you explain me what I should do to reintroduce them int he debian packaging ?

I’d be happy to do it, but this is a bit much high level for me to be actionable. Can you explain me what I should do to reintroduce them int he debian packaging ?

On the CMake side, I’m not sure. I think it’s just a matter of using the “install()” functions to install them into the appropriate place in the tree. They weren’t installed by CMake in the first place; I was going to do that, which is when I was told they shouldn’t be distributed.

For Debian packaging, there are a few things.

  1. revive the llvm-X.Y-tools.* files, which were in LLVM 3.7. See: http://anonscm.debian.org/viewvc/pkg-llvm/llvm-toolchain/branches/3.7/debian/.
  2. add the llvm-X.Y-tools entry back into control. Compare http://anonscm.debian.org/viewvc/pkg-llvm/llvm-toolchain/branches/3.7/debian/control?revision=1843&view=markup and http://anonscm.debian.org/viewvc/pkg-llvm/llvm-toolchain/branches/3.8/debian/control?revision=1881&view=markup.
  3. update the “rules” script as necessary to support the above, copying files into the places that the Debian package layout expects

HTH,
Andrew

Thanks for the pointers. I’ll try to work out something this week. I may come back for more help, but I have enough at least to get me started.

To get Lit on Travis, we do
install:
  - pip install --user lit
  - python -c "import lit; lit.main();" --version | head -n 1

Did the tools package contain "not" and "FileCheck"? (We currently have to
carry copies of them in our own source tree.)

I hope it doesn't contain 'not', that executable name is a little too
generic to install into /usr/bin. We could probably distribute FileCheck,
though. I doubt we'll see name collisions, and other projects seem to find
it useful.