[Ada] Add a new gnat tool vxlink
authorJerome Lambourg <lambourg@adacore.com>
Tue, 21 Aug 2018 14:49:49 +0000 (14:49 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Tue, 21 Aug 2018 14:49:49 +0000 (14:49 +0000)
commit5ec8edb56ea77f8627b6fc7b9f95751d27cd9162
tree6e9cb10f5d42f631279ee16e67c2e4b38116af55
parent084e3bd183b1b7253f1216b5b165bde7bfbf6bf6
[Ada] Add a new gnat tool vxlink

VxLink is a helper tool used as a wrapper around g++/gcc to build
VxWorks DKM (Downloadable Kernel Modules).

Such DKM is a partially linked object that includes entry points for
constructors and destructors.

This tool thus uses g++ to generate an intermediate partially linked
object, retrieves the list of constructors and destructors in it and
produces a C file that lists those ctors/dtors in a way that is
understood be VxWorks kernel. It then links this file with the
intermediate object to produce a valid DKM.

2018-08-21  Jerome Lambourg  <lambourg@adacore.com>

gcc/ada/

* vxlink-bind.adb, vxlink-bind.ads, vxlink-link.adb,
vxlink-link.ads, vxlink-main.adb, vxlink.adb, vxlink.ads: Add a
new tool vxlink to handle VxWorks constructors in DKMs.
* gcc-interface/Makefile.in: add rules to build vxlink

From-SVN: r263736
gcc/ada/ChangeLog
gcc/ada/gcc-interface/Makefile.in
gcc/ada/vxlink-bind.adb [new file with mode: 0644]
gcc/ada/vxlink-bind.ads [new file with mode: 0644]
gcc/ada/vxlink-link.adb [new file with mode: 0644]
gcc/ada/vxlink-link.ads [new file with mode: 0644]
gcc/ada/vxlink-main.adb [new file with mode: 0644]
gcc/ada/vxlink.adb [new file with mode: 0644]
gcc/ada/vxlink.ads [new file with mode: 0644]