On Fri, 2016-04-08 at 16:03 +0200, Björn Persson wrote:
Vratislav Podzimek vpodzime@redhat.com wrote:
Hello everybody, my name is Vratislav Podzimek. I'm a member of the Installer team at Red Hat primarily focusing on storage configuration and management. Other than that I'm also a "junior Ada enthusiast".
Welcome to the team, Vratislav! Have you found the Ada packaging policy? https://fedoraproject.org/wiki/Packaging:Ada
Thanks! I found it some time ago when I was looking for some information about building Ada stuff on Fedora. It's time to read it again and more thoroughly now, I think.
Last weekend I spent some time trying to build GPS on my Fedora 23, but after overcoming 10 issues I gave up.
Yeah, that's probably not the best place to begin. Packaging Adacore's software is far from trivial, unfortunately. Their idea of how to distribute software isn't well aligned with Fedora's. I think you should get some experience before you take on GPS.
There was an attempt to package it once: https://bugzilla.redhat.com/show_bug.cgi?id=834747
Well, I didn't try to package it, but merely build it. Even that proved to be quite hard for me though.
So here I come with a hope to get some advice as well as some tasks to help with to make it easier for people to develop in Ada on Fedora.
I don't suppose you happen to have some hardware of one of the secondary architectures? In that case you might be able to help with the effort to get an up-to-date GPRbuild going on the secondary architectures.
I have access to an ARM64 system, ARMv7 system and if really needed, I could probably also reach some ppc(64) system. Would that be helpful?
If multilib compatibility is important to you, then there's an issue that you could choose to work on. 32- and 64-bit -devel packages are supposed to be parallel-installable, but those packages that have begun using gprinstall aren't, because gprinstall generates GNAT project files without multilib support. The project files would need to be fixed up at the end of the %install section.
I have no idea how to do something like this, but if it has high priority I can study it. That's probably a more general rule for me now as my experience with Ada is still quite limited (just writing and building some personal, more or less trivial, stuff). But I'd be glad to study basically anything new and interesting.
I have also been wanting to look into Devassistant and the Developer Portal to see if it would make sense to add something Ada-related there. You could look at that if you're interested.
Maybe something for creating GPRbuild project files with some code stubs and such?
If you want to make new packages, then you could for example pick something from https://codelabs.ch/. I've packaged Anet. I had to patch their makefile to make compiler and linker options, directories and file permissions configurable, but I had much less trouble with that than with Adacore's stuff. I managed to convince them to accept my patches.
Maybe once I find something there I'd like/need to use in one of my hobby projects.
My first question is - are there any plans to build the 2015 toolset for Fedora? I noticed all the built packages are based on the 2014 version now.
Do you mean in Fedora 22? In Fedora 23 on the primary architectures we have the 2015 versions of XMLada, GPRbuild, AWS and Aunit, and GTKada 3.8.3 which is also distributed as "2015". We don't normally push version upgrades to stable releases, as that would introduce soname changes and possibly other incompatibilities.
For some reason I thought that because 'gnatcoll' is a "2014" version, all the packages are.
# rpm -q gnatcoll gnatcoll-2014-5.fc23.x86_64
Is there a reason for gnatcoll being only in its "2014" version?
Thanks for the overview and the tips. Are there any priorities making something from the above more important than the other things? Maybe the GPRbuild issues on secondary arches?
Also sorry for such a late reply, I have been quite busy at work lately. That should get better soon so I hope to become helpful soon. :)