Currently we provide a separate implementation of Stream_Attributes via
s-stratt__xdr.adb which needs to be recompiled manually.

This change introduces instead a new binder switch to choose at bind
time which stream implementation to use and replaces s-stratt__xdr.adb
by a new unit System.Stream_Attributes.XDR.

Tested on x86_64-pc-linux-gnu, committed on trunk

2020-06-18  Arnaud Charlet  <char...@adacore.com>

gcc/ada/

        * Makefile.rtl: Add s-statxd.o.
        * bindgen.adb (Gen_Adainit): Add support for XDR_Stream.
        * bindusg.adb (Display): Add mention of -xdr.
        * gnatbind.adb: Process -xdr switch.
        * init.c (__gl_xdr_stream): New.
        * opt.ads (XDR_Stream): New.
        * libgnat/s-stratt__xdr.adb: Rename to...
        * libgnat/s-statxd.adb: this and adjust.
        * libgnat/s-statxd.ads: New.
        * libgnat/s-stratt.ads, libgnat/s-stratt.adb: Choose between
        default and XDR implementation at runtime.
        * libgnat/s-ststop.ads: Update comments.
        * doc/gnat_rm/implementation_advice.rst: Update doc on XDR
        streaming.
        * gnat_rm.texi: Regenerate.

Attachment: patch.diff.gz
Description: application/gzip

Reply via email to