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

gnat cross build



Hello.

During native gnat-7 builds in Debian:
* gnat1drv, gnatbind, gnatmake statically embed a handwritten list of
  objects. This list contains unnecessary objects, probably because it
  is manually updated and has to cover many situations. Also, some
  objects duplicate libgnat or libgnatvsn contents.
* The other gnat tools are then built with gnatmake, and linked with
  the shared libgnat and libgnatvsn.
* Since 7.1.0-6, gnatbind and gnatmake are rebuilt the same way.
The binary packages have these dependencies.
* libgnatvsn-dev: libgnatvsn (libgnatvsn.so devel symlink)
* gnat: libgnat (libgnat.so, gnat provides a kind of libgnat-dev)
* gnat: libgnat, libgnatvsn (since most tools are linked dynamically)

During -cross builds, all gnat tools are linked statically.
The third dependency disappears.
So libgnatvsn-cross packages are not required to bootstrap the
compiler, and may be produced later with native builds.

Are there objections to the removal of libgnatvsn-cross?
(If I remember well, Ludovic already agreed a while ago, but I cannot
find the mail anymore.)

In order to test the changes, I must cross-build gnat on a porterbox.
I guess that I should...
- "debian/rules binary-indep" in the patched gcc-7 source package
- install the new gcc-7-source
- "debian/rules binary-arch" in the gcc-7-cross source package
Is the process documented somewhere?

Thanks.


Reply to: