Dear Ada users. I have finally implemented the multiple gnat handling in full, resolving bug #151343. The operational procedures on user side remain largerly the same (as for the last year), however there is one modification everybody using Ada compilers in Gentoo should be aware of.
Now (as was discussed in #151343) gnatbuild.eclass gnat.eclass and eselect-gnat support the notion of "primary" compilers. The idea here is that most users will want one or, possibly, two variants of Ada compilers used for everyday work at most, while, occasionally, wishing to test some other variant(s). These "everyday" compilers (designated "primary" further on) have to be listed in /etc/ada/primary-compilers. The file simply contains a listing of gnat profiles user desires to designate primary, one per line. Mine, for example, contains: [EMAIL PROTECTED] ~ $ cat /etc/ada/primary_compilers x86_64-pc-linux-gnu-gnat-gcc-4.2 x86_64-pc-linux-gnu-gnat-gpl-4.1 All Ada libs will be built only for these compilers and not for any other installed. However "eselect gnat set" will allow user to set any installed gnat, as before. Thus we avoid ABI issues when updating packages that have some Ada lib as a dependency (there are already a few) via enforcing a consistent set of ABIs, cut compilation time (libs are now not getting built for an "occasional" compiler) while still providing an ability to test any gnat in portage. As a safeguard gnatbuild.eclass has also been modified to populate /etc/ada/primary-compilers, if this file does not exist yet, with the corresponding profile upon emerging gnat for the first time. Please, however, take your destiny in your own hands and update that file accordingly to your desires. On a related note. I have been composing a description of inner workings of the whole Ada setup. A preliminary text is available here: http://www.gentoo.org/proj/en/prog_lang/ada/dev_reference.xml However doc writing takes even more time than development itself. Therefore I would appreciate any contribution towards the "user guide" part of the description, (already referenced and planned to be available here: http://www.gentoo.org/proj/en/prog_lang/ada/ada_ug.xml but still empty), even partial. Just think about it, you will be listed as an author of that page (given significant contribution)! I will also be interested in receiving any critique or suggestions on improving the 1st referenced text, at least for the parts that are already complete. George -- [email protected] mailing list
