[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

transition to gcc-12, state of Ada in Debian


The transition of Ada packages to gcc-12 must be completed on
2023-01-12 [1].

--  Status of packages

AdaCore doesn’t support ASIS (or gnat-util) anymore.  No one has
packaged a replacement.  The asis libaws adabrowse adacontrol packages
will be removed from Debian.

gnat-studio/gnat-gps requires dependencies that no one has packaged
yet: e3_core, e3_testsuite, langkit, adalang, ada_language_server.  It
is removed from Debian.

libgtkada, libgnatcoll-{sql,sqlite,postgres} and libgmpada require non
trivial work.  They will be removed unless they are fixed before
delaying the transition.

Dbusada anet alog ncursesada phcpack plplot topal ada-reference-manual
whitakers-words are in good shape or usually easy to update (BCCing
the maintainers just in case they are not subscribed).

Ghdl is unaffected because it depends on gcc-10, but requires
immediate care and will probably be removed.

The remaining packages are already in experimental.

The rate of removals is alarming.  Without new contributors on the key
packages, the language users will eventually loose the benefits of an
integrated distribution over unsigned binaries or language-specific
package managers like pypy.

--  Notes for packagers

As usual… Each package must be uploaded to experimental.  Several
unrelated changes are applied at the same time in order to avoid more
package renamings than necessary (a new upstream release for example).
Eventually, all packages will be reuploaded together to unstable.

Do not worry if your package is removed from testing because of
unicode-data.  This trivial issue will be fixed by the reupload.

Most debian/rules of library packages were including
  /usr/share/ada/debian_packaging*.mk (from gnat-*)
Any package with Ada sources may now benefit from
  /usr/share/ada/packaging.mk (from dh-ada-library >= 8.2)
This script defines build flags and installation paths that
override_dh_auto_* targets can pass to the upstream build system
(make, gprbuild, cmake...).

Ada libraries require changes because of dh-ada-library 8.2.
* Build-Depend: dh-sequence-ada-library, dh-ada-library (>= 8.2)
  (virtual packages cannot carry a version restriction)
* Dh_auto_install (to the default debian/tmp) as described above.
  (dh-ada-library was previously installing directly to
   debian/lib*-dev, so dh_auto_install-arch was probably disabled)
* Dh_auto_install a generated project (like the one d-a-l was
  previously generating). This is automatic with gprinstall, and
  implemented by several non-gpr upstreams.  If you have to implement
  it, an upstream patch is ideal.  [3] is a good example.
Debhelper should then automatically dispatch Ada library stuff from
debian/tmp to debian/lib{*,*-dev}, and report to dh_missing.
You must remove debian/ada_librarie/override_dh_ada_library.
You must remove parts of debian/not-installed/override_dh_missing.


[1] https://lists.debian.org/debian-devel/2022/03/msg00251.html
[3] https://salsa.debian.org/debian/adasockets/-/blob/debian/master/debian/rules

Reply to: