pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
gnat-glade: remove package moved to main tree
Module Name: pkgsrc-wip
Committed By: Dmytro Kazankov <dkazankov%NetBSD.org@localhost>
Pushed By: dkazankov
Date: Fri Jul 11 09:16:07 2025 +0300
Changeset: 3ddff07a9ed1eeff98ce7babb90bd7e4733186c0
Modified Files:
Makefile
Removed Files:
gnat-glade/COMMIT_MSG
gnat-glade/DESCR
gnat-glade/Makefile
gnat-glade/PLIST
gnat-glade/buildlink3.mk
gnat-glade/distinfo
gnat-glade/patches/patch-Dist_Makefile.in
gnat-glade/patches/patch-Dist_config.sdefault
gnat-glade/patches/patch-Dist_gnatdist-config.in
gnat-glade/patches/patch-Dist_xe.adb
gnat-glade/patches/patch-Dist_xe__back-garlic.adb
gnat-glade/patches/patch-Dist_xe__back-polyorb.adb
gnat-glade/patches/patch-Dist_xe__back.adb
gnat-glade/patches/patch-Dist_xe__front.adb
gnat-glade/patches/patch-Dist_xe__main.adb
gnat-glade/patches/patch-Dist_xe__names.ads
gnat-glade/patches/patch-Dist_xe__parse.adb
gnat-glade/patches/patch-Dist_xe__scan.adb
gnat-glade/patches/patch-Dist_xe__stdcnf.adb
gnat-glade/patches/patch-Dist_xe__usage.adb
gnat-glade/patches/patch-Dist_xe__utils.adb
gnat-glade/patches/patch-Examples_MultiPro_s-gaprxy.adb
gnat-glade/patches/patch-Garlic_Makefile.in
gnat-glade/patches/patch-Garlic_garlic.gpr
gnat-glade/patches/patch-Garlic_isthrbio.adb
gnat-glade/patches/patch-Garlic_isthrbio.gpr
gnat-glade/patches/patch-Garlic_s-dsaser.ads
gnat-glade/patches/patch-Garlic_s-gafizi.adb
gnat-glade/patches/patch-Garlic_s-gaprre.adb
gnat-glade/patches/patch-Garlic_s-gaprre.ads
gnat-glade/patches/patch-Garlic_s-gaprtc.adb
gnat-glade/patches/patch-Garlic_s-garexc.adb
gnat-glade/patches/patch-Garlic_s-garsto.adb
gnat-glade/patches/patch-Garlic_s-garstr.ads
gnat-glade/patches/patch-Garlic_s-gartab.adb
gnat-glade/patches/patch-Garlic_s-gartas.adb
gnat-glade/patches/patch-Garlic_s-garuni.adb
gnat-glade/patches/patch-Garlic_s-gastdf.adb
gnat-glade/patches/patch-Garlic_s-gastha.adb
gnat-glade/patches/patch-Garlic_s-gptcse.adb
gnat-glade/patches/patch-Garlic_s-parint.adb
gnat-glade/patches/patch-Garlic_s-parint.ads
gnat-glade/patches/patch-Garlic_s-rpc.adb
gnat-glade/patches/patch-Garlic_s-rpcser.adb
gnat-glade/patches/patch-Garlic_s-shasto.adb
gnat-glade/patches/patch-Garlic_s-shasto.ads
gnat-glade/patches/patch-Garlic_s-stratt.adb
gnat-glade/patches/patch-Garlic_select.c
gnat-glade/patches/patch-configure
Log Message:
gnat-glade: remove package moved to main tree
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=3ddff07a9ed1eeff98ce7babb90bd7e4733186c0
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 1 -
gnat-glade/COMMIT_MSG | 4 -
gnat-glade/DESCR | 4 -
gnat-glade/Makefile | 47 -
gnat-glade/PLIST | 135 --
gnat-glade/buildlink3.mk | 14 -
gnat-glade/distinfo | 48 -
gnat-glade/patches/patch-Dist_Makefile.in | 29 -
gnat-glade/patches/patch-Dist_config.sdefault | 16 -
gnat-glade/patches/patch-Dist_gnatdist-config.in | 171 --
gnat-glade/patches/patch-Dist_xe.adb | 16 -
gnat-glade/patches/patch-Dist_xe__back-garlic.adb | 16 -
gnat-glade/patches/patch-Dist_xe__back-polyorb.adb | 16 -
gnat-glade/patches/patch-Dist_xe__back.adb | 25 -
gnat-glade/patches/patch-Dist_xe__front.adb | 17 -
gnat-glade/patches/patch-Dist_xe__main.adb | 29 -
gnat-glade/patches/patch-Dist_xe__names.ads | 16 -
gnat-glade/patches/patch-Dist_xe__parse.adb | 53 -
gnat-glade/patches/patch-Dist_xe__scan.adb | 26 -
gnat-glade/patches/patch-Dist_xe__stdcnf.adb | 24 -
gnat-glade/patches/patch-Dist_xe__usage.adb | 15 -
gnat-glade/patches/patch-Dist_xe__utils.adb | 62 -
.../patches/patch-Examples_MultiPro_s-gaprxy.adb | 15 -
gnat-glade/patches/patch-Garlic_Makefile.in | 242 ---
gnat-glade/patches/patch-Garlic_garlic.gpr | 44 -
gnat-glade/patches/patch-Garlic_isthrbio.adb | 15 -
gnat-glade/patches/patch-Garlic_isthrbio.gpr | 17 -
gnat-glade/patches/patch-Garlic_s-dsaser.ads | 63 -
gnat-glade/patches/patch-Garlic_s-gafizi.adb | 15 -
gnat-glade/patches/patch-Garlic_s-gaprre.adb | 15 -
gnat-glade/patches/patch-Garlic_s-gaprre.ads | 15 -
gnat-glade/patches/patch-Garlic_s-gaprtc.adb | 49 -
gnat-glade/patches/patch-Garlic_s-garexc.adb | 16 -
gnat-glade/patches/patch-Garlic_s-garsto.adb | 64 -
gnat-glade/patches/patch-Garlic_s-garstr.ads | 19 -
gnat-glade/patches/patch-Garlic_s-gartab.adb | 16 -
gnat-glade/patches/patch-Garlic_s-gartas.adb | 15 -
gnat-glade/patches/patch-Garlic_s-garuni.adb | 16 -
gnat-glade/patches/patch-Garlic_s-gastdf.adb | 15 -
gnat-glade/patches/patch-Garlic_s-gastha.adb | 15 -
gnat-glade/patches/patch-Garlic_s-gptcse.adb | 15 -
gnat-glade/patches/patch-Garlic_s-parint.adb | 61 -
gnat-glade/patches/patch-Garlic_s-parint.ads | 16 -
gnat-glade/patches/patch-Garlic_s-rpc.adb | 18 -
gnat-glade/patches/patch-Garlic_s-rpcser.adb | 15 -
gnat-glade/patches/patch-Garlic_s-shasto.adb | 130 --
gnat-glade/patches/patch-Garlic_s-shasto.ads | 213 --
gnat-glade/patches/patch-Garlic_s-stratt.adb | 2025 --------------------
gnat-glade/patches/patch-Garlic_select.c | 14 -
gnat-glade/patches/patch-configure | 89 -
50 files changed, 4046 deletions(-)
diffs:
diff --git a/Makefile b/Makefile
index fac52e9bab..18e6a904bd 100644
--- a/Makefile
+++ b/Makefile
@@ -1307,7 +1307,6 @@ SUBDIR+= gmpc-lyricsplugin
SUBDIR+= gmrender-resurrect-git
SUBDIR+= gmrun
SUBDIR+= gn-git
-SUBDIR+= gnat-glade
SUBDIR+= gnatcoll-bindings
SUBDIR+= gnatcoll-db
SUBDIR+= gnocchi
diff --git a/gnat-glade/COMMIT_MSG b/gnat-glade/COMMIT_MSG
deleted file mode 100644
index da0e8ec5ae..0000000000
--- a/gnat-glade/COMMIT_MSG
+++ /dev/null
@@ -1,4 +0,0 @@
-devel/gnat-glade: Add package 6.0.1
-
-GLADE provides an up to date implementations of Annex E (Distributed Systems)
-of the ISO standard ISO/IEC 8652:1995/COR1:2000 for GNAT
diff --git a/gnat-glade/DESCR b/gnat-glade/DESCR
deleted file mode 100644
index 503af731b9..0000000000
--- a/gnat-glade/DESCR
+++ /dev/null
@@ -1,4 +0,0 @@
-GNAT Library for Ada Distributed Environment
-
-Provides implementations of Annex E (Distributed Systems)
-of the ISO standard ISO/IEC 8652:1995/COR1:2000 for GNAT.
diff --git a/gnat-glade/Makefile b/gnat-glade/Makefile
deleted file mode 100644
index 63789f313b..0000000000
--- a/gnat-glade/Makefile
+++ /dev/null
@@ -1,47 +0,0 @@
-# $NetBSD: Makefile,v 1.0 2024/12/05 14:00:00 dkazankov Exp $
-
-#DISTNAME= ${PKG_DISTNAME}
-DISTNAME= gnat-glade-6.0.1
-PKGNAME= gnat-glade-13.3.0
-CATEGORIES= devel
-# Original sourceforge site periodically loses the snapshot,
-# so we use github clone
-MASTER_SITES= ${MASTER_SITE_GITHUB:=dkazankov/}
-GITHUB_PROJECT= gnat-glade
-GITHUB_TAG= v6.0.1
-#DISTFILES= ${PKG_DISTNAME}.zip
-#SITES.${PKG_DISTNAME}.zip= -https://sourceforge.net/code-snapshots/svn/g/gn/gnat-glade/code/${PKG_DISTNAME}.zip
-
-MAINTAINER= dkazankov%NetBSD.org@localhost
-HOMEPAGE= https://sourceforge.net/projects/gnat-glade/
-COMMENT= GNAT Library for Ada Distributed Environment
-LICENSE= gnu-gpl-v2
-
-#PKG_DISTNAME= gnat-glade-code-r135-trunk
-
-USE_TOOLS+= gmake
-GNU_CONFIGURE= yes
-
-CHECK_PIE_SKIP+= bin/*
-CHECK_RELRO_SKIP+= bin/*
-
-USE_LANGUAGES= c ada
-# This component now throws an error when compiled with GNAT 6 or 10
-GCC_REQD+= 13
-
-.include "../../mk/bsd.prefs.mk"
-
-SUBST_CLASSES+= replace-shell
-SUBST_MESSAGE.replace-shell= Replace shell in ${SUBST_FILES.replace-shell}
-SUBST_STAGE.replace-shell= pre-configure
-SUBST_FILES.replace-shell= Dist/gnatdist-config.in
-SUBST_VARS.replace-shell= SHELL
-
-post-patch:
- chmod +x ${WRKSRC}/Dist/config.sdefault
-
-GENERATE_PLIST+= \
- cd ${DESTDIR}${PREFIX} && \
- ${FIND} bin include lib \( -type f -or -type l \) -print | ${SORT};
-
-.include "../../mk/bsd.pkg.mk"
diff --git a/gnat-glade/PLIST b/gnat-glade/PLIST
deleted file mode 100644
index 3db5f5fc7c..0000000000
--- a/gnat-glade/PLIST
+++ /dev/null
@@ -1,135 +0,0 @@
-@comment $NetBSD: PLIST,v 1.0 2024/11/12 18:30:00 dkazankov Exp $
-bin/gnatdist
-bin/gnatdist-config
-include/garlic/s-gafizi.adb
-include/garlic/s-gafizi.ads
-include/garlic/s-galiop.ads
-include/garlic/s-ganata.adb
-include/garlic/s-ganata.ads
-include/garlic/s-ganeut.adb
-include/garlic/s-ganeut.ads
-include/garlic/s-ganota.adb
-include/garlic/s-ganota.ads
-include/garlic/s-gaphlo.adb
-include/garlic/s-gaphlo.ads
-include/garlic/s-gaplsp.ads
-include/garlic/s-gaprco.adb
-include/garlic/s-gaprco.ads
-include/garlic/s-gaprma.adb
-include/garlic/s-gaprma.ads
-include/garlic/s-gaprre.adb
-include/garlic/s-gaprre.ads
-include/garlic/s-gaprtc.adb
-include/garlic/s-gaprtc.ads
-include/garlic/s-gardeb.adb
-include/garlic/s-gardeb.ads
-include/garlic/s-garela.adb
-include/garlic/s-garela.ads
-include/garlic/s-garexc.adb
-include/garlic/s-garexc.ads
-include/garlic/s-garfil.adb
-include/garlic/s-garfil.ads
-include/garlic/s-gargro.adb
-include/garlic/s-gargro.ads
-include/garlic/s-garhea.adb
-include/garlic/s-garhea.ads
-include/garlic/s-garlic.ads
-include/garlic/s-garopt.adb
-include/garlic/s-garopt.ads
-include/garlic/s-garpar.adb
-include/garlic/s-garpar.ads
-include/garlic/s-garpri.adb
-include/garlic/s-garpri.ads
-include/garlic/s-garpro.adb
-include/garlic/s-garpro.ads
-include/garlic/s-garrem.adb
-include/garlic/s-garrem.ads
-include/garlic/s-garsta.adb
-include/garlic/s-garsta.ads
-include/garlic/s-garsto.adb
-include/garlic/s-garsto.ads
-include/garlic/s-garstr.adb
-include/garlic/s-garstr.ads
-include/garlic/s-gartab.adb
-include/garlic/s-gartab.ads
-include/garlic/s-gartas.adb
-include/garlic/s-gartas.ads
-include/garlic/s-garter.adb
-include/garlic/s-garter.ads
-include/garlic/s-gartra.adb
-include/garlic/s-gartra.ads
-include/garlic/s-gartyp.adb
-include/garlic/s-gartyp.ads
-include/garlic/s-garuni.adb
-include/garlic/s-garuni.ads
-include/garlic/s-garuti.adb
-include/garlic/s-garuti.ads
-include/garlic/s-gasoli.adb
-include/garlic/s-gasoli.ads
-include/garlic/s-gastco.adb
-include/garlic/s-gastco.ads
-include/garlic/s-gastdf.adb
-include/garlic/s-gastdf.ads
-include/garlic/s-gastds.adb
-include/garlic/s-gastds.ads
-include/garlic/s-gastha.adb
-include/garlic/s-gastha.ads
-include/garlic/s-gprese.ads
-include/garlic/s-gptcse.adb
-include/garlic/s-gptcse.ads
-include/garlic/s-parint.adb
-include/garlic/s-parint.ads
-include/garlic/s-rpc.adb
-include/garlic/s-rpc.ads
-include/garlic/s-rpcser.adb
-include/garlic/s-rpcser.ads
-include/garlic/s-rpstio.adb
-include/garlic/s-rpstio.ads
-include/garlic/s-shasto.adb
-lib/garlic/libgarlic.a
-lib/garlic/s-gafizi.ali
-lib/garlic/s-galiop.ali
-lib/garlic/s-ganata.ali
-lib/garlic/s-ganeut.ali
-lib/garlic/s-ganota.ali
-lib/garlic/s-gaphlo.ali
-lib/garlic/s-gaplsp.ali
-lib/garlic/s-gaprco.ali
-lib/garlic/s-gaprma.ali
-lib/garlic/s-gaprre.ali
-lib/garlic/s-gaprtc.ali
-lib/garlic/s-gardeb.ali
-lib/garlic/s-garela.ali
-lib/garlic/s-garexc.ali
-lib/garlic/s-garfil.ali
-lib/garlic/s-gargro.ali
-lib/garlic/s-garhea.ali
-lib/garlic/s-garlic.ali
-lib/garlic/s-garopt.ali
-lib/garlic/s-garpar.ali
-lib/garlic/s-garpri.ali
-lib/garlic/s-garpro.ali
-lib/garlic/s-garrem.ali
-lib/garlic/s-garsta.ali
-lib/garlic/s-garsto.ali
-lib/garlic/s-garstr.ali
-lib/garlic/s-gartab.ali
-lib/garlic/s-gartas.ali
-lib/garlic/s-garter.ali
-lib/garlic/s-gartra.ali
-lib/garlic/s-gartyp.ali
-lib/garlic/s-garuni.ali
-lib/garlic/s-garuti.ali
-lib/garlic/s-gasoli.ali
-lib/garlic/s-gastco.ali
-lib/garlic/s-gastdf.ali
-lib/garlic/s-gastds.ali
-lib/garlic/s-gastha.ali
-lib/garlic/s-gprese.ali
-lib/garlic/s-gptcse.ali
-lib/garlic/s-parint.ali
-lib/garlic/s-rpc.ali
-lib/garlic/s-rpcser.ali
-lib/garlic/s-rpstio.ali
-lib/garlic/s-shasto.ali
-lib/gnat/garlic.gpr
diff --git a/gnat-glade/buildlink3.mk b/gnat-glade/buildlink3.mk
deleted file mode 100644
index b2c0b12354..0000000000
--- a/gnat-glade/buildlink3.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# $NetBSD: buildlink3.mk,v 1.0 2024/11/14 16:30:00 dkazankov Exp $
-
-BUILDLINK_TREE+= gnat-glade
-
-.if !defined(GNAT_GLADE_BUILDLINK3_MK)
-GNAT_GLADE_BUILDLINK3_MK:=
-
-BUILDLINK_API_DEPENDS.gnat-glade+= gnat-glade>=6.0.1
-BUILDLINK_PKGSRCDIR.gnat-glade?= ../../wip/gnat-glade
-BUILDLINK_DEPMETHOD.gnat-glade?= build
-
-.endif
-
-BUILDLINK_TREE+= -gnat-glade
diff --git a/gnat-glade/distinfo b/gnat-glade/distinfo
deleted file mode 100644
index a3f72bd2e0..0000000000
--- a/gnat-glade/distinfo
+++ /dev/null
@@ -1,48 +0,0 @@
-$NetBSD: distinfo,v 1.3 2024/05/02 14:00:00 dkazankov Exp $
-
-BLAKE2s (gnat-glade-6.0.1.tar.gz) = c975f8e27eab2eaec271f8d82a01eb4cb7edb99fcb7851960ce094448fb364b0
-SHA512 (gnat-glade-6.0.1.tar.gz) = d99852b7c1ef209a06b50b187db8ab5d4527722a52ea3234c727638e5680f1db867b37d6a49ce28e29d8f207c016d4c6bc7f190f8163833933327d079fd9660c
-Size (gnat-glade-6.0.1.tar.gz) = 3004733 bytes
-SHA1 (patch-Dist_Makefile.in) = 1c9a63dbe5e17e80c81647519d215b8887b544a4
-SHA1 (patch-Dist_config.sdefault) = 7fb3e662a2d565f0c40ad627cda74574ed3ebddd
-SHA1 (patch-Dist_gnatdist-config.in) = 058e96f15d5642092ace7855274521d52fafedbe
-SHA1 (patch-Dist_xe.adb) = 163bf676015a40f5fc4187159c7e16086db22359
-SHA1 (patch-Dist_xe__back-garlic.adb) = 9a66d461624621843abba99f8e8f5df4aa75e457
-SHA1 (patch-Dist_xe__back-polyorb.adb) = b2ee5226af5d51af7ca0236fc02d7bcf0489a716
-SHA1 (patch-Dist_xe__back.adb) = ea6c70f184c6359f52f3c37cdb4f0a1f62fab6f4
-SHA1 (patch-Dist_xe__front.adb) = d2ff90f0e08402fc19e9792d93e4e5180da68642
-SHA1 (patch-Dist_xe__main.adb) = 7a3297ed1f4eb7b45fb82e86b3f436a70b828984
-SHA1 (patch-Dist_xe__names.ads) = 55252237505359b3caa5dc2f54303e894eaf8ed0
-SHA1 (patch-Dist_xe__parse.adb) = 471873dd7134327425bf1a6df2a4b2e24e475465
-SHA1 (patch-Dist_xe__scan.adb) = 9272f4c6b0dade6d0d6d22d146aa0d371403a9bd
-SHA1 (patch-Dist_xe__stdcnf.adb) = 58324a21ac4e72dc9e7f5797ee008ce04edfe8c5
-SHA1 (patch-Dist_xe__usage.adb) = 0ae9e3b8ef811beb7293c115adca989bad62856b
-SHA1 (patch-Dist_xe__utils.adb) = e5a9eede82e19805fdaecd6305c4e564beed19ff
-SHA1 (patch-Examples_MultiPro_s-gaprxy.adb) = 503b5d6ccc62e1d4dd4e291e29b188ec28389818
-SHA1 (patch-Garlic_Makefile.in) = 674601db5717bb7dd691b93c919804bf000c4e6a
-SHA1 (patch-Garlic_garlic.gpr) = c410c7c352619dd9dfcd232e5a6cad4521ae8287
-SHA1 (patch-Garlic_isthrbio.adb) = d45ac410707eca5c646b563264d50c11458eb8bd
-SHA1 (patch-Garlic_isthrbio.gpr) = 991396abd6632cf7f7bfe6cf07a4ba4c7baf305d
-SHA1 (patch-Garlic_s-dsaser.ads) = 73cd62f844268e0dd68207fd37edd4876e6af728
-SHA1 (patch-Garlic_s-gafizi.adb) = bf47bc65cbff5eaf055870d16b68cbd52ac4aa61
-SHA1 (patch-Garlic_s-gaprre.adb) = cf8d8890dcf0919ec50f66b0eaf53b87df835850
-SHA1 (patch-Garlic_s-gaprre.ads) = b3da9598e2701ea5b025bb35da7affbd50e56d4d
-SHA1 (patch-Garlic_s-gaprtc.adb) = 7475c530957346fb598cec3c9f7e66322b67d95b
-SHA1 (patch-Garlic_s-garexc.adb) = 7df0925115b0206313a45def9fb2ef02962138f6
-SHA1 (patch-Garlic_s-garsto.adb) = be6b86a1a5ea31fb4e73eb087d7fea6a022614d4
-SHA1 (patch-Garlic_s-garstr.ads) = cfda7ce053dffaeae6db9f733826ff696f066111
-SHA1 (patch-Garlic_s-gartab.adb) = fdd8eb21aa7dc10dbf49d1794f65f804e169d3ae
-SHA1 (patch-Garlic_s-gartas.adb) = 9896fdef948441ea20716d860785cc4452f9c249
-SHA1 (patch-Garlic_s-garuni.adb) = 4287dd944ccd26b9ae0e6e115f6fe9813fa97d1a
-SHA1 (patch-Garlic_s-gastdf.adb) = 142c33147b64eb14a400e5623b6a31ca73be6960
-SHA1 (patch-Garlic_s-gastha.adb) = 3dbff7340936751840c5e89a5b40211333d9817f
-SHA1 (patch-Garlic_s-gptcse.adb) = 4f668c9f1be0921f5b236e7759859b1d7d3bc20d
-SHA1 (patch-Garlic_s-parint.adb) = cfc1498142a355036694635b0f9ed892fcbf6752
-SHA1 (patch-Garlic_s-parint.ads) = c0611648bca05951af809e8a9cdec98c2d832b1a
-SHA1 (patch-Garlic_s-rpc.adb) = 792e9ca62f15cbaf526354297df22037781539c1
-SHA1 (patch-Garlic_s-rpcser.adb) = 3394a7fed3eddee43c0d660f77785047bf771af5
-SHA1 (patch-Garlic_s-shasto.adb) = 2e76771ee23baa7a0cd5b24863fbe39ba89653f9
-SHA1 (patch-Garlic_s-shasto.ads) = f086c4f186143093b85f66fd5d5d7b88958d75d2
-SHA1 (patch-Garlic_s-stratt.adb) = 0684c2df09d7d74eb3f0141585875e13c31e2a6c
-SHA1 (patch-Garlic_select.c) = 0db5132fcc2184cc685cd6886b87645f73e31e04
-SHA1 (patch-configure) = d4486e11d338df24b573a5dc299f11ff49e9a0ca
diff --git a/gnat-glade/patches/patch-Dist_Makefile.in b/gnat-glade/patches/patch-Dist_Makefile.in
deleted file mode 100644
index 2990369234..0000000000
--- a/gnat-glade/patches/patch-Dist_Makefile.in
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD: patch-Dist_Makefile.in,v 1.0 2025/02/04 22:00:00 dkazankov Exp $
-
-Add configuration helper
-Fix bindir location
-
---- Dist/Makefile.in.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Dist/Makefile.in
-@@ -223,9 +223,11 @@
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
- xe_defs-defaults.ads: $(top_builddir)/config.status $(srcdir)/xe_defs-defaults.ads.in
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
-+gnatdist-config: $(top_builddir)/config.status $(srcdir)/gnatdist-config.in
-+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
- install-binPROGRAMS: $(bin_PROGRAMS)
- @$(NORMAL_INSTALL)
-- test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
-+ test -z "$(DESTDIR)$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
- @list='$(bin_PROGRAMS)'; for p in $$list; do \
- p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
- if test -f $$p \
-@@ -235,6 +237,8 @@
- $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
- else :; fi; \
- done
-+ cp -p $(srcdir)/gnatdist-config $(DESTDIR)$(bindir)/gnatdist-config ; \
-+ chmod a+x $(DESTDIR)$(bindir)/gnatdist-config
-
- uninstall-binPROGRAMS:
- @$(NORMAL_UNINSTALL)
diff --git a/gnat-glade/patches/patch-Dist_config.sdefault b/gnat-glade/patches/patch-Dist_config.sdefault
deleted file mode 100644
index 4275fe7850..0000000000
--- a/gnat-glade/patches/patch-Dist_config.sdefault
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-Dist_config.sdefault,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix libgnat.a search
-https://github.com/reznikmm/garlic/commit/1c459d17d989e5df86234276013fd32430c97220
-
---- Dist/config.sdefault.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Dist/config.sdefault
-@@ -7,7 +7,7 @@
- sed -e '1,/Object Search Path/ d' | grep -v 'Current_Directory' > tmp1
- sed -e 's,\\,/,g' tmp1 > tmp2
- for i in `cat tmp2`; do
-- if [ -f ${i}libgnat.a ]; then
-+ if [ -f ${i}/libgnat.a ]; then
- LIBGNAT_DIR=${i}
- break
- fi
diff --git a/gnat-glade/patches/patch-Dist_gnatdist-config.in b/gnat-glade/patches/patch-Dist_gnatdist-config.in
deleted file mode 100644
index b873684ab9..0000000000
--- a/gnat-glade/patches/patch-Dist_gnatdist-config.in
+++ /dev/null
@@ -1,171 +0,0 @@
-$NetBSD: patch-Dist_gnatdist-config.in,v 1.0 2025/02/04 22:00:00 dkazankov Exp $
-
-Create configuration helper for building applications
-
---- /dev/null
-+++ Dist/gnatdist-config.in
-@@ -0,0 +1,164 @@
-+#!@SHELL@
-+
-+# This script provides tool chain command line switches used to build
-+# applications that use garlic.
-+
-+# @configure_input@
-+
-+host=@host@
-+target=@target@
-+if [ "$host" = "$target" ]; then
-+ is_cross=false
-+else
-+ is_cross=true
-+fi
-+
-+# Determine installation prefix
-+
-+case "$0" in
-+ */*)
-+ # Already has a directory indication
-+ exec_name="$0"
-+ ;;
-+
-+ *)
-+ # Just base filename, retrieve from PATH
-+ exec_name=`which $0`
-+ ;;
-+esac
-+exec_rel_dir=`dirname "${exec_name}"`
-+exec_abs_dir=`cd ${exec_rel_dir} && pwd`
-+exec_prefix=`dirname "${exec_abs_dir}"`
-+
-+# Translate Cygwin-style path to Windows equivalent
-+
-+case "$OS" in
-+ Windows_NT)
-+ exec_prefix=`cygpath -w $exec_prefix`
-+esac
-+
-+unset tgt_subdir
-+if $is_cross; then
-+ tgt_subdir=/$target
-+fi
-+
-+for candidate_prefix in "${exec_prefix}${tgt_subdir}" "@prefix@${tgt_subdir}"; do
-+ prefix="${candidate_prefix}"
-+ if [ -f "${candidate_prefix}"/include/garlic/s-garlic.ads ]; then
-+ break
-+ fi
-+done
-+
-+usage() {
-+ cat <<EOF 1>&2
-+Usage: gnatdist-config [OPTIONS]
-+Options:
-+ No option:
-+ Same as --options.
-+ [--options]
-+ Output options to use for GLADE.
-+ [--prefix[=DIR]]
-+ Output the directory in which GLADE architecture-independent
-+ files are installed, or set this directory to DIR.
-+ [--exec-prefix[=DIR]]
-+ Output the directory in which GLADE architecture-dependent
-+ files are installed, or set this directory to DIR.
-+ [--version|-v]
-+ Output the version of GLADE.
-+ [--largs]
-+ Output the linker flags to use for GLADE.
-+ [--cargs]
-+ Output the compiler flags to use for GLADE.
-+ [--bargs]
-+ Output the binder flags to use for GLADE.
-+ [--help]
-+ Output this message
-+EOF
-+}
-+
-+no_args=true
-+while test $# -gt 0; do
-+ no_args=false
-+ case "$1" in
-+ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
-+ *) optarg= ;;
-+ esac
-+
-+ case $1 in
-+ --help|-h)
-+ usage 1>&2
-+ exit 1
-+ ;;
-+ --prefix=*)
-+ prefix=$optarg;
-+ if test "x$exec_prefix_set" = x ; then
-+ exec_prefix=$prefix
-+ fi
-+ ;;
-+ --prefix)
-+ echo_prefix=true
-+ ;;
-+ --exec-prefix=*)
-+ exec_prefix=$optarg
-+ ;;
-+ --exec-prefix)
-+ echo_exec_prefix=true
-+ ;;
-+ --version|-v)
-+ echo "GNAT-GLADE @VERSION@ for ${target}" 1>&2
-+ if $is_cross; then
-+ echo " hosted on ${host}" 1>&2
-+ fi
-+ exit 0
-+ ;;
-+ --largs)
-+ echo_largs=true
-+ ;;
-+ --cargs)
-+ echo_cargs=true
-+ ;;
-+ --bargs)
-+ echo_bargs=true
-+ ;;
-+ --options)
-+ echo_options=true
-+ ;;
-+
-+ *)
-+ usage 1>&2
-+ exit 1
-+ ;;
-+ esac
-+ shift
-+done
-+if test ! x"$no_args" = x"true" ; then
-+ echo_options=true
-+fi
-+
-+includedir="@includedir@"
-+libdir="@libdir@"
-+garlic_incdir="${includedir}/garlic"
-+garlic_libdir="${libdir}/garlic"
-+
-+if test ! x"$echo_options" = x"true" ; then
-+ echo -a -aI${garlic_incdir} -aO${garlic_libdir}
-+fi
-+
-+if test x"$echo_cargs" = x"true"; then
-+ echo -cargs @GNATFLAGS@ -I${garlic_incdir}
-+fi
-+
-+#if test x"$echo_bargs" = x"true"; then
-+# echo -bargs ${garlic_lib}
-+#fi
-+
-+if test x"$echo_largs" = x"true"; then
-+ echo -largs @LDFLAGS@ -L${garlic_libdir} -lgarlic
-+fi
-+
-+if test x"$echo_prefix" = x"true" ; then
-+ echo $prefix
-+fi
-+if test x"$echo_exec_prefix" = x"true" ; then
-+ echo $exec_prefix
-+fi
diff --git a/gnat-glade/patches/patch-Dist_xe.adb b/gnat-glade/patches/patch-Dist_xe.adb
deleted file mode 100644
index 34842f9c21..0000000000
--- a/gnat-glade/patches/patch-Dist_xe.adb
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-Dist_xe.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Dist/xe.adb.orig 2007-11-26 14:06:30.000000000 +0200
-+++ Dist/xe.adb
-@@ -1171,7 +1171,7 @@
- -- Remove the nodes created in the previous context.
-
- loop
-- exit when Nodes.Last <= Node_Id (Context.Last_Node);
-+ exit when Nodes.Last <= Context.Last_Node;
- Nodes.Decrement_Last;
- end loop;
- N_Anonymous_Variable := Context.Anonymous;
diff --git a/gnat-glade/patches/patch-Dist_xe__back-garlic.adb b/gnat-glade/patches/patch-Dist_xe__back-garlic.adb
deleted file mode 100644
index 3722993f99..0000000000
--- a/gnat-glade/patches/patch-Dist_xe__back-garlic.adb
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-Dist_xe__back-garlic.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-
---- Dist/xe_back-garlic.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Dist/xe_back-garlic.adb
-@@ -34,9 +34,6 @@
- with XE_Names; use XE_Names;
- with XE_Utils; use XE_Utils;
-
--with XE_Back;
--pragma Elaborate_All (XE_Back);
--
- package body XE_Back.GARLIC is
-
- type GARLIC_Backend is new Backend with null record;
diff --git a/gnat-glade/patches/patch-Dist_xe__back-polyorb.adb b/gnat-glade/patches/patch-Dist_xe__back-polyorb.adb
deleted file mode 100644
index 2d217d0729..0000000000
--- a/gnat-glade/patches/patch-Dist_xe__back-polyorb.adb
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-Dist_xe__back-polyorb.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-
---- Dist/xe_back-polyorb.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Dist/xe_back-polyorb.adb
-@@ -34,9 +34,6 @@
- with XE_Names; use XE_Names;
- with XE_Utils; use XE_Utils;
-
--with XE_Back;
--pragma Elaborate_All (XE_Back);
--
- package body XE_Back.PolyORB is
-
- type PolyORB_Backend is new Backend with null record;
diff --git a/gnat-glade/patches/patch-Dist_xe__back.adb b/gnat-glade/patches/patch-Dist_xe__back.adb
deleted file mode 100644
index aaae43a89b..0000000000
--- a/gnat-glade/patches/patch-Dist_xe__back.adb
+++ /dev/null
@@ -1,25 +0,0 @@
-$NetBSD: patch-Dist_xe__back.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Make gnatdist fail if compilation fails on stub/skel
-https://github.com/reznikmm/garlic/commit/d037957ca6828ec3a1cced2ea64e46310f11b22d
-
---- Dist/xe_back.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Dist/xe_back.adb
-@@ -328,7 +328,7 @@
- Arguments (3) := new String'(Name_Buffer (1 .. Name_Len));
- end if;
-
-- Compile (Full_Unit_File, Arguments, Fatal => False, Silent => True);
-+ Compile (Full_Unit_File, Arguments, Fatal => True, Silent => True);
-
- Free (Arguments (3));
- elsif not Quiet_Mode then
-@@ -604,7 +604,7 @@
- Arguments (3) := new String'(Name_Buffer (1 .. Name_Len));
- end if;
-
-- Compile (Full_Unit_File, Arguments, Fatal => False, Silent => True);
-+ Compile (Full_Unit_File, Arguments, Fatal => True, Silent => True);
-
- if Present (Part_Prj_Fname) then
- Free (Arguments (3));
diff --git a/gnat-glade/patches/patch-Dist_xe__front.adb b/gnat-glade/patches/patch-Dist_xe__front.adb
deleted file mode 100644
index abf48b4bae..0000000000
--- a/gnat-glade/patches/patch-Dist_xe__front.adb
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-Dist_xe__front.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Dist/xe_front.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Dist/xe_front.adb
-@@ -470,7 +470,8 @@
- HID := Partitions.Table (P).Host;
- if HID /= No_Host_Id
- and then not Hosts.Table (HID).Static
-- and then Hosts.Table (HID).Import = Ada_Import then
-+ and then Hosts.Table (HID).Import = Ada_Import
-+ then
- Add_Conf_Unit (Hosts.Table (HID).External, P);
- end if;
- end loop;
diff --git a/gnat-glade/patches/patch-Dist_xe__main.adb b/gnat-glade/patches/patch-Dist_xe__main.adb
deleted file mode 100644
index 6117748af3..0000000000
--- a/gnat-glade/patches/patch-Dist_xe__main.adb
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD: patch-Dist_xe__main.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Dist/xe_main.adb.orig 2007-11-26 14:06:30.000000000 +0200
-+++ Dist/xe_main.adb
-@@ -26,8 +26,8 @@
-
- with XE; use XE;
- with XE_Back; use XE_Back;
--with XE_Back.GARLIC; use XE_Back.GARLIC;
--with XE_Back.PolyORB; use XE_Back.PolyORB;
-+with XE_Back.GARLIC;
-+with XE_Back.PolyORB;
- with XE_Defs; use XE_Defs;
- with XE_Flags; use XE_Flags;
- with XE_Front; use XE_Front;
-@@ -36,8 +36,8 @@
- with XE_Parse; use XE_Parse;
- with XE_Types; use XE_Types;
- with XE_Sem; use XE_Sem;
--with XE_Scan; use XE_Scan;
--with XE_Stdcnf; use XE_Stdcnf;
-+with XE_Scan;
-+with XE_Stdcnf;
- with XE_Utils; use XE_Utils;
- with XE_Units; use XE_Units;
- with XE_Usage;
diff --git a/gnat-glade/patches/patch-Dist_xe__names.ads b/gnat-glade/patches/patch-Dist_xe__names.ads
deleted file mode 100644
index 217f53107f..0000000000
--- a/gnat-glade/patches/patch-Dist_xe__names.ads
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-Dist_xe__names.ads,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Dist/xe_names.ads.orig 2007-11-26 14:06:30.000000000 +0200
-+++ Dist/xe_names.ads
-@@ -48,7 +48,7 @@
- -- names table entry and subprograms are provided for setting and retrieving
- -- these associated values. The usage of these values is up to the client.
-
-- Name_Buffer : String (1 .. 16*1024);
-+ Name_Buffer : String (1 .. 16 * 1024);
- -- This buffer is used to set the name to be stored in the table for the
- -- Name_Find call, and to retrieve the name for the Get_Name_String call.
- -- The plus 1 in the length allows for cases of adding ASCII.NUL. The
diff --git a/gnat-glade/patches/patch-Dist_xe__parse.adb b/gnat-glade/patches/patch-Dist_xe__parse.adb
deleted file mode 100644
index 9a51d315d6..0000000000
--- a/gnat-glade/patches/patch-Dist_xe__parse.adb
+++ /dev/null
@@ -1,53 +0,0 @@
-$NetBSD: patch-Dist_xe__parse.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Dist/xe_parse.adb.orig 2007-11-26 14:06:30.000000000 +0200
-+++ Dist/xe_parse.adb
-@@ -973,6 +973,7 @@
- end if;
-
- -- Declare <X> as a formal parameter.
-+ pragma Warnings (Off, "modified by call");
-
- Declare_Subprogram_Parameter
- (Parameter_Name,
-@@ -1007,6 +1008,7 @@
- Function_Node,
- Para_Type_Sloc,
- Parameter_Node);
-+ pragma Warnings (On, "modified by call");
-
- T_Semicolon;
- end P_Function_Declaration;
-@@ -1159,7 +1161,8 @@
- -- of the predefined type Partition_Type_Node.
-
- if Partition_Node = Null_Variable or else
-- Get_Variable_Type (Partition_Node) /= Partition_Type_Node then
-+ Get_Variable_Type (Partition_Node) /= Partition_Type_Node
-+ then
- Write_Conflict_Error (Partition_Sloc, Partition_Name);
- end if;
-
-@@ -1952,8 +1955,7 @@
-
- -- If Named, use Formal_Name to return format parameter node.
- when Named =>
-- if Get_Node_Name
-- (Node_Id (Parameter_Node)) = Formal_Name then
-+ if Get_Node_Name (Node_Id (Parameter_Node)) = Formal_Name then
- return;
- end if;
-
-@@ -2128,7 +2130,8 @@
- begin
- Search_Declaration (Variable_Name, Node);
- if Node /= Null_Node and then
-- not Is_Variable (Node) then
-+ not Is_Variable (Node)
-+ then
- Node := Null_Node;
- end if;
- Variable_Node := Variable_Id (Node);
diff --git a/gnat-glade/patches/patch-Dist_xe__scan.adb b/gnat-glade/patches/patch-Dist_xe__scan.adb
deleted file mode 100644
index 07437bd2e7..0000000000
--- a/gnat-glade/patches/patch-Dist_xe__scan.adb
+++ /dev/null
@@ -1,26 +0,0 @@
-$NetBSD: patch-Dist_xe__scan.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Dist/xe_scan.adb.orig 2007-11-26 14:06:30.000000000 +0200
-+++ Dist/xe_scan.adb
-@@ -214,7 +214,8 @@
- if Buffer (Scan_Ptr) = LF or else
- Buffer (Scan_Ptr) = FF or else
- Buffer (Scan_Ptr) = CR or else
-- Buffer (Scan_Ptr) = VT then
-+ Buffer (Scan_Ptr) = VT
-+ then
- New_Line;
- exit;
- elsif Buffer (Scan_Ptr) = EOF then
-@@ -426,8 +427,6 @@
- procedure Write_Location
- (Where : Location_Type) is
-
-- use ASCII;
--
- begin
- Write_Name (Configuration_File_Name);
- Write_Str (":");
diff --git a/gnat-glade/patches/patch-Dist_xe__stdcnf.adb b/gnat-glade/patches/patch-Dist_xe__stdcnf.adb
deleted file mode 100644
index 2b57654896..0000000000
--- a/gnat-glade/patches/patch-Dist_xe__stdcnf.adb
+++ /dev/null
@@ -1,24 +0,0 @@
-$NetBSD: patch-Dist_xe__stdcnf.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-
---- Dist/xe_stdcnf.adb.orig 2007-11-26 14:06:30.000000000 +0200
-+++ Dist/xe_stdcnf.adb
-@@ -161,6 +161,8 @@
- Type_Sloc => Null_Location,
- Type_Node => Host_Function_Type_Node);
-
-+ pragma Warnings (Off, "modified by call");
-+
- Declare_Type_Component
- (Type_Node => Host_Function_Type_Node,
- Component_Name => Id ("partition_name"),
-@@ -734,6 +736,8 @@
- Null_Location,
- Parameter_Node);
-
-+ pragma Warnings (On, "modified by call");
-+
- end Initialize;
-
- end XE_Stdcnf;
diff --git a/gnat-glade/patches/patch-Dist_xe__usage.adb b/gnat-glade/patches/patch-Dist_xe__usage.adb
deleted file mode 100644
index 600b0de787..0000000000
--- a/gnat-glade/patches/patch-Dist_xe__usage.adb
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-Dist_xe__usage.adb,v 1.0 2025/02/04 22:00:00 dkazankov Exp $
-
-Update version
-
---- Dist/xe_usage.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Dist/xe_usage.adb
-@@ -29,7 +29,7 @@
- with XE_Flags; use XE_Flags;
-
- procedure XE_Usage is
-- Version : constant String := "5.04w";
-+ Version : constant String := "6.0w";
- Length : Positive := Version'First;
-
- begin
diff --git a/gnat-glade/patches/patch-Dist_xe__utils.adb b/gnat-glade/patches/patch-Dist_xe__utils.adb
deleted file mode 100644
index 9948006382..0000000000
--- a/gnat-glade/patches/patch-Dist_xe__utils.adb
+++ /dev/null
@@ -1,62 +0,0 @@
-$NetBSD: patch-Dist_xe__utils.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-Calculate gnat driver name by gnatdist name
-Also fix -cargs option passing
-https://github.com/reznikmm/garlic/commit/1bca5670b0f08ab8e3902441a46bc1c7a9fdf059
-
---- Dist/xe_utils.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Dist/xe_utils.adb
-@@ -24,6 +24,7 @@
- -- --
- ------------------------------------------------------------------------------
-
-+with Ada.Directories;
- with Ada.Command_Line; use Ada.Command_Line;
- with XE_Defs; use XE_Defs;
- with XE_Flags; use XE_Flags;
-@@ -81,12 +82,14 @@
- S3 : String := No_Str);
-
- type Sigint_Handler is access procedure;
-+ pragma Convention (C, Sigint_Handler);
-
- procedure Install_Int_Handler (Handler : Sigint_Handler);
- pragma Import (C, Install_Int_Handler, "__gnat_install_int_handler");
- -- Called by Gnatmake to install the SIGINT handler below
-
- procedure Sigint_Intercepted;
-+ pragma Convention (C, Sigint_Intercepted);
- -- Called when the program is interrupted by Ctrl-C to delete the
- -- temporary mapping files and configuration pragmas files.
-
-@@ -501,6 +504,11 @@
- ----------------
-
- procedure Initialize is
-+ Command : constant String := Ada.Directories.Base_Name
-+ (Ada.Command_Line.Command_Name);
-+ GNAT : constant String :=
-+ Command (Command'First .. Command'Last - 4);
-+ -- calculate `[target-]gnat` driver name by gnatdist exe name
- begin
- XE_Names.Initialize;
- Set_Space_Increment (3);
-@@ -550,7 +558,7 @@
-
- Create_Dir (Stub_Dir_Name);
-
-- GNAT_Driver := Locate ("gnat");
-+ GNAT_Driver := Locate (GNAT);
- end Initialize;
-
- ----------
-@@ -818,6 +826,7 @@
-
- if Program_Args = Binder
- or else Program_Args = Linker
-+ or else Program_Args = Compiler
- then
- Add_Make_Switch (Argv);
- return;
diff --git a/gnat-glade/patches/patch-Examples_MultiPro_s-gaprxy.adb b/gnat-glade/patches/patch-Examples_MultiPro_s-gaprxy.adb
deleted file mode 100644
index a163561be0..0000000000
--- a/gnat-glade/patches/patch-Examples_MultiPro_s-gaprxy.adb
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-Examples_MultiPro_s-gaprxy.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix compilation warnings for GCC 13
-https://github.com/reznikmm/garlic/commit/cd21e825da1a73bd853054ea19eae6a5437fb5e4
-
---- Examples/MultiPro/s-gaprxy.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Examples/MultiPro/s-gaprxy.adb
-@@ -43,7 +43,6 @@
- with System.Garlic.Partitions; use System.Garlic.Partitions;
- with System.Garlic.Physical_Location; use System.Garlic.Physical_Location;
- with System.Garlic.Platform_Specific;
--with System.Garlic.Protocols; use System.Garlic.Protocols;
- with System.Garlic.Soft_Links;
- with System.Garlic.Streams; use System.Garlic.Streams;
- with System.Garlic.Table;
diff --git a/gnat-glade/patches/patch-Garlic_Makefile.in b/gnat-glade/patches/patch-Garlic_Makefile.in
deleted file mode 100644
index 4553fec1b8..0000000000
--- a/gnat-glade/patches/patch-Garlic_Makefile.in
+++ /dev/null
@@ -1,242 +0,0 @@
-$NetBSD: patch-Garlic_Makefile.in,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Remove duplicate spec
-Remove "old" stream attributes implementation
-Remove unsupported Shared_Passive specification
-Make install aware of DESTDIR
-Copy project file to lib/gnat
-Remove all "inlining" staff
-
---- Garlic/Makefile.in.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/Makefile.in
-@@ -187,7 +187,6 @@
- $(srcdir)/s-gptcse.ads $(srcdir)/s-gptcse.adb
-
- COMMONOBJECTS = \
--s-dsaser.o\
- s-galiop.o\
- s-ganata.o\
- s-ganeut.o\
-@@ -229,18 +228,16 @@
- s-rpc.o\
- s-rpcser.o\
- s-rpstio.o\
--s-shasto.o\
--s-stratt.o
-+s-shasto.o
-
- COMMONSOURCES = \
--$(srcdir)/s-dsaser.ads \
-- s-galiop.ads \
-+$(srcdir)/s-galiop.ads \
- $(srcdir)/s-ganata.ads $(srcdir)/s-ganata.adb \
- $(srcdir)/s-ganeut.ads $(srcdir)/s-ganeut.adb \
- $(srcdir)/s-ganota.ads $(srcdir)/s-ganota.adb \
- $(srcdir)/s-gaphlo.ads $(srcdir)/s-gaphlo.adb \
-- s-gaplsp.ads \
--$(srcdir)/s-gaprco.ads s-gaprco.adb \
-+$(srcdir)/s-gaplsp.ads \
-+$(srcdir)/s-gaprco.ads $(srcdir)/s-gaprco.adb \
- $(srcdir)/s-gaprre.ads $(srcdir)/s-gaprre.adb \
- $(srcdir)/s-gardeb.ads $(srcdir)/s-gardeb.adb \
- $(srcdir)/s-garexc.ads $(srcdir)/s-garexc.adb \
-@@ -253,7 +250,7 @@
- $(srcdir)/s-garpri.ads $(srcdir)/s-garpri.adb \
- $(srcdir)/s-gaprma.ads $(srcdir)/s-gaprma.adb \
- $(srcdir)/s-garpro.ads $(srcdir)/s-garpro.adb \
--$(srcdir)/s-garrem.ads s-garrem.adb \
-+$(srcdir)/s-garrem.ads $(srcdir)/s-garrem.adb \
- $(srcdir)/s-garsta.ads $(srcdir)/s-garsta.adb \
- $(srcdir)/s-garstr.ads $(srcdir)/s-garstr.adb \
- $(srcdir)/s-gartas.ads $(srcdir)/s-gartas.adb \
-@@ -275,8 +272,7 @@
- $(srcdir)/s-rpc.ads $(srcdir)/s-rpc.adb \
- $(srcdir)/s-rpcser.ads $(srcdir)/s-rpcser.adb \
- $(srcdir)/s-rpstio.ads $(srcdir)/s-rpstio.adb \
--$(srcdir)/s-shasto.ads $(srcdir)/s-shasto.adb \
--$(srcdir)/s-stratt.adb
-+ $(srcdir)/s-shasto.adb
-
- OBJECTS = \
- $(PROTOCOLSOBJECTS) \
-@@ -286,7 +282,7 @@
- SOURCES = $(PROTOCOLSSOURCES) $(FILTERSSOURCES) $(COMMONSOURCES)
- CLEANFILES = lib*.a *.ali *.o b_*.c b~*.ad[bs]\
- s-gaprco.adb s-galiop.ads\
-- inlining gnatlib/* constants_nodef\
-+ gnatlib/* constants_nodef\
- isthrbio$(EXEEXT)\
- $(FILTERSOBJECTS)
-
-@@ -501,39 +497,14 @@
- -rm -fr bldtool
-
- install-dirs-local:
-- -rm -rf $(GARLIC)
-- -$(mkinstalldirs) $(GARLIC)
-- @echo $(GARLIC) created
--
--inlining: all-local
-- rm -rf gnatlib >/dev/null 2>&1;\
-- mkdir gnatlib >/dev/null 2>&1;\
-- gnatlibdir=`$(srcdir)/../Dist/config.sdefault $(GNAT_RTS_FLAG)`;\
-- (cd $$gnatlibdir && grep -l "D s-stratt.adb" *.ali)\
-- | $(SED) 's,\.ali$$,.o,' > gnatlib/tocheck;\
-- for i in $(OBJECTS); do\
-- echo "Checking $$i";\
-- mv gnatlib/tocheck gnatlib/tocheck.tmp;\
-- grep -v $$i gnatlib/tocheck.tmp > gnatlib/tocheck;\
-- done;\
-- for o in `cat gnatlib/tocheck`; do\
-- if [ ! -f gnatlib/$$o ]; then\
-- s=`gnatls -a -s $$o | sed 's/\013//g'`;\
-- (cd gnatlib;\
-- $(GNAT_FOR_TARGET) $(COMPILE) $(GNATFLAGS) -I. -I.. -I- \
-- $$s;\
-- if test $$? = 0; then\
-- echo $$o >>rebuild;\
-- else\
-- $(RM) -f tocheck;\
-- break;\
-- fi;\
-- );\
-- fi;\
-- done;\
-- $(CP) $(CP_PRESERVE) s-stratt.o s-stratt.ali gnatlib
-- echo s-stratt.o >>gnatlib/rebuild;\
-- echo yes > inlining
-+ -rm -rf $(DESTDIR)$(GARLIC)
-+ -$(mkinstalldirs) $(DESTDIR)$(GARLIC)
-+ @echo $(DESTDIR)$(GARLIC) created
-+ -rm -rf $(DESTDIR)$(includedir)/garlic
-+ -$(mkinstalldirs) $(DESTDIR)$(includedir)/garlic
-+ @echo $(DESTDIR)$(includedir)/garlic created
-+ -$(mkinstalldirs) $(DESTDIR)$(libdir)/gnat
-+ @echo $(DESTDIR)$(libdir)/gnat created
-
- linktest: $(srcdir)/linktest.adb $(OBJECTS)
- $(GNAT_FOR_HOST) -c -a -m $(GNATFLAGS) -I$(srcdir) -I. \
-@@ -541,47 +512,24 @@
- $(GNAT_FOR_HOST) -b -a -m $(GNATFLAGS) -I$(srcdir) -I. \
- $(srcdir)/linktest.adb
-
--install-extra-libs: $(FILTERSEXTRALIBS) inlining install-dirs-local
-+install-extra-libs: $(FILTERSEXTRALIBS) all-local install-dirs-local
-
- install-data-local: all-local install-dirs-local install-extra-libs
-- if test ! -f inlining; then\
-- exit 1;\
-- fi
-- @-for lib in libgnat.a libgnarl.a libAtasking.a libPtasking.a; do \
-- pathtolib=`$(srcdir)/../Dist/config.sdefault $(GNAT_RTS_FLAG)`;\
-- if test -f $$pathtolib$$lib; then \
-- $(CP) $$pathtolib$$lib $(GARLIC)/$$lib;\
-- chmod u+w $(GARLIC)/$$lib;\
-- $(AR) d $(GARLIC)/$$lib s-rpc.o \
-- s-shasto.o \
-- s-parint.o 2>/dev/null;\
-- if test `cat inlining` = "yes"; then\
-- (cd gnatlib;\
-- for o in `cat rebuild`; do \
-- $(AR) d $(GARLIC)/$$lib $$o 2>/dev/null;\
-- if test $$? = 0; then \
-- $(AR) cq $(GARLIC)/$$lib $$o;\
-- echo Replace inlined $$o in $$lib;\
-- fi;\
-- done);\
-- fi;\
-- $(RANLIB) $(GARLIC)/$$lib;\
-+ @for i in $(SOURCES); do\
-+ if test -f $$i; then\
-+ $(CP) $(CP_PRESERVE) $$i $(DESTDIR)$(includedir)/garlic/;\
- fi;\
- done
-- @if test `cat inlining` = "yes"; then\
-- (cd gnatlib;\
-- $(CP) $(CP_PRESERVE) `$(SED) 's/\.o/.ali/g' rebuild` $(GARLIC));\
-- fi
-- @for i in $(SOURCES)\
-- `echo $(OBJECTS) | $(SED) -e 's/\.o/.ali/g'`; do\
-+ @for i in `echo $(OBJECTS) | $(SED) -e 's/\.o/.ali/g'`; do\
- if test -f $$i; then\
-- $(CP) $(CP_PRESERVE) $$i $(GARLIC)/;\
-+ $(CP) $(CP_PRESERVE) $$i $(DESTDIR)$(GARLIC)/;\
- fi;\
- done
-- $(AR) cq $(GARLIC)/libgarlic.a $(subst s-stratt.o,,$(OBJECTS))
-- $(RANLIB) $(GARLIC)/libgarlic.a
-- chmod a+r $(GARLIC)/*
-- chmod a-w $(GARLIC)/*
-+ $(CP) $(CP_PRESERVE) garlic.gpr $(DESTDIR)$(libdir)/gnat/
-+ $(AR) cq $(DESTDIR)$(GARLIC)/libgarlic.a $(OBJECTS)
-+ $(RANLIB) $(DESTDIR)$(GARLIC)/libgarlic.a
-+ chmod a+r $(DESTDIR)$(GARLIC)/*
-+ chmod a-w $(DESTDIR)$(GARLIC)/*
-
- # Dependencies
-
-@@ -597,10 +545,9 @@
- ### dependencies or to use the "fast" target.
- ###
- ### DO NOT REMOVE THIS LINE, IT IS USED BY MAKEDEPEND ###
--s-dsaser.o: s-dsaser.ads s-garlic.ads s-gardeb.ads s-garexc.ads s-gasoli.ads s-gastha.ads s-garstr.ads s-gartyp.ads s-garuni.ads s-parint.ads s-rpc.ads
- s-gafizi.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garfil.ads s-gafizi.ads s-gafizi.adb s-garhea.ads s-garpro.ads s-gasoli.ads s-gastha.ads s-garstr.ads s-gartyp.ads
- s-galiop.o: s-garlic.ads s-galiop.ads
--s-ganata.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-ganata.ads s-ganata.adb s-gasoli.ads s-gasoli.adb s-gartab.ads s-gartab.adb s-gartyp.ads s-garuti.ads s-stratt.adb
-+s-ganata.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-ganata.ads s-ganata.adb s-gasoli.ads s-gasoli.adb s-gartab.ads s-gartab.adb s-gartyp.ads s-garuti.ads
- s-ganeut.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-ganeut.ads s-ganeut.adb s-gasoli.ads s-gartyp.ads
- s-ganota.o: s-garlic.ads s-garexc.ads s-ganota.ads s-ganota.adb s-garpro.ads s-gasoli.ads s-gartyp.ads
- s-gaphlo.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-gaphlo.ads s-gaphlo.adb s-garpro.ads s-gasoli.ads s-gartyp.ads s-garuti.ads
-@@ -612,38 +559,37 @@
- s-gardeb.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-gasoli.ads s-gartyp.ads
- s-garela.o: s-garlic.ads s-garela.ads s-garela.adb s-garopt.ads s-gasoli.ads s-gartas.ads s-gartyp.ads
- s-garexc.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garexc.adb s-gasoli.ads s-gartyp.ads
--s-garfil.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garfil.ads s-garfil.adb s-garhea.ads s-ganata.ads s-ganata.adb s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garstr.ads s-garstr.adb s-gartab.ads s-gartab.adb s-gartyp.ads s-garuti.ads s-stratt.adb
--s-gargro.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-gargro.ads s-gargro.adb s-garhea.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garstr.ads s-garstr.adb s-gartyp.ads s-stratt.adb
-+s-garfil.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garfil.ads s-garfil.adb s-garhea.ads s-ganata.ads s-ganata.adb s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garstr.ads s-garstr.adb s-gartab.ads s-gartab.adb s-gartyp.ads s-garuti.ads
-+s-gargro.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-gargro.ads s-gargro.adb s-garhea.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garstr.ads s-garstr.adb s-gartyp.ads
- s-garhea.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garfil.ads s-gargro.ads s-garhea.ads s-garhea.adb s-galiop.ads s-garopt.ads s-garpar.ads s-garpar.adb s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garsto.ads s-garstr.ads s-garstr.adb s-gartab.ads s-gartra.ads s-gartyp.ads s-garuti.ads
- s-garlic.o: s-garlic.ads
- s-garopt.o: s-garlic.ads s-garopt.ads s-garopt.adb s-gaplsp.ads s-gartyp.ads s-garuti.ads
--s-garpar.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-gargro.ads s-garhea.ads s-ganata.ads s-garopt.ads s-garpar.ads s-garpar.adb s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garstr.ads s-gartab.ads s-gartab.adb s-gartyp.ads s-garuti.ads s-stratt.adb
-+s-garpar.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-gargro.ads s-garhea.ads s-ganata.ads s-garopt.ads s-garpar.ads s-garpar.adb s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garstr.ads s-gartab.ads s-gartab.adb s-gartyp.ads s-garuti.ads
- s-garpri.o: s-garlic.ads s-garpri.ads s-garpri.adb
- s-garpro.o: s-garlic.ads s-garexc.ads s-garpro.ads s-garpro.adb s-gartyp.ads
- s-garrem.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-garrem.ads s-garrem.adb s-gasoli.ads s-gastha.ads s-garstr.ads s-gartyp.ads s-garuti.ads
- s-garsta.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garela.ads s-garexc.ads s-garexc.adb s-garfil.ads s-gargro.ads s-garhea.ads s-ganata.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-gaprco.ads s-garrem.ads s-gasoli.ads s-garsta.ads s-garsta.adb s-gastha.ads s-garsto.ads s-gastco.ads s-garstr.ads s-garter.ads s-gartra.ads s-gartyp.ads s-garuni.ads s-garuti.ads
- s-garsto.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garpar.ads s-gaphlo.ads s-gaplsp.ads s-garpro.ads s-gasoli.ads s-gastha.ads s-garsto.ads s-garsto.adb s-garstr.ads s-gartyp.ads s-garuni.ads
--s-garstr.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-gasoli.ads s-gasoli.adb s-gastha.ads s-gastha.adb s-garstr.ads s-garstr.adb s-gartyp.ads s-stratt.adb
-+s-garstr.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-gasoli.ads s-gasoli.adb s-gastha.ads s-gastha.adb s-garstr.ads s-garstr.adb s-gartyp.ads
- s-gartab.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-ganata.ads s-gasoli.ads s-gartab.ads s-gartab.adb s-gartyp.ads
--s-gartas.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-gasoli.ads s-gartas.ads s-gartas.adb s-gartyp.ads s-stratt.adb
--s-garter.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garela.ads s-garexc.ads s-garfil.ads s-garhea.ads s-garhea.adb s-galiop.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garsto.ads s-garstr.ads s-garstr.adb s-garter.ads s-garter.adb s-gartra.ads s-gartyp.ads s-garuti.ads s-stratt.adb
--s-gartra.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garopt.ads s-gasoli.ads s-gastha.ads s-garstr.ads s-gartra.ads s-gartra.adb s-gartyp.ads s-stratt.adb
-+s-gartas.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-gasoli.ads s-gartas.ads s-gartas.adb s-gartyp.ads
-+s-garter.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garela.ads s-garexc.ads s-garfil.ads s-garhea.ads s-garhea.adb s-galiop.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garsto.ads s-garstr.ads s-garstr.adb s-garter.ads s-garter.adb s-gartra.ads s-gartyp.ads s-garuti.ads
-+s-gartra.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garopt.ads s-gasoli.ads s-gastha.ads s-garstr.ads s-gartra.ads s-gartra.adb s-gartyp.ads
- s-gartyp.o: s-garlic.ads s-gartyp.ads s-gartyp.adb
--s-garuni.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garfil.ads s-gargro.ads s-garhea.ads s-garhea.adb s-galiop.ads s-ganata.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garsto.ads s-garstr.ads s-garstr.adb s-gartab.ads s-gartab.adb s-gartra.ads s-gartyp.ads s-garuni.ads s-garuni.adb s-garuti.ads s-stratt.adb
-+s-garuni.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garfil.ads s-gargro.ads s-garhea.ads s-garhea.adb s-galiop.ads s-ganata.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garsto.ads s-garstr.ads s-garstr.adb s-gartab.ads s-gartab.adb s-gartra.ads s-gartyp.ads s-garuni.ads s-garuni.adb s-garuti.ads
- s-garuti.o: s-garlic.ads s-garuti.ads s-garuti.adb
--s-gasoli.o: s-garlic.ads s-gasoli.ads s-gasoli.adb s-gartyp.ads s-stratt.adb
-+s-gasoli.o: s-garlic.ads s-gasoli.ads s-gasoli.adb s-gartyp.ads
- s-gastco.o: s-garlic.ads s-garexc.ads s-garsto.ads s-gastco.ads s-gastco.adb s-gartyp.ads
- s-gastdf.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garopt.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-garsto.ads s-gastdf.ads s-gastdf.adb s-gartyp.ads
--s-gastds.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garexc.adb s-garhea.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garsto.ads s-gastds.ads s-gastds.adb s-garstr.ads s-gartyp.ads s-garuni.ads s-stratt.adb
-+s-gastds.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garexc.adb s-garhea.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-gastha.ads s-garsto.ads s-gastds.ads s-gastds.adb s-garstr.ads s-gartyp.ads s-garuni.ads
- s-gastha.o: s-garlic.ads s-gasoli.ads s-gastha.ads s-gastha.adb s-gartyp.ads
- s-gprese.o: s-garlic.ads s-garexc.ads s-garpro.ads s-gaprre.ads s-gprese.ads s-gartyp.ads
- s-gptcse.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garpro.ads s-gaprtc.ads s-gptcse.ads s-gptcse.adb s-gasoli.ads s-gartyp.ads
--s-parint.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garhea.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-garsta.ads s-gastha.ads s-garsto.ads s-garstr.ads s-gartyp.ads s-garuni.ads s-garuti.ads s-garuti.adb s-parint.ads s-parint.adb s-rpc.ads s-stratt.adb
--s-rpc.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garfil.ads s-garhea.ads s-garhea.adb s-galiop.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpri.ads s-gaprma.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-garsta.ads s-gastha.ads s-garsto.ads s-garstr.ads s-garstr.adb s-gartra.ads s-gartyp.ads s-garuni.ads s-garuti.ads s-rpc.ads s-rpc.adb s-stratt.adb
--s-rpcser.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garhea.ads s-garopt.ads s-gaplsp.ads s-garpri.ads s-gaprma.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-garsta.ads s-gastha.ads s-garstr.ads s-garstr.adb s-gartas.ads s-gartyp.ads s-garuni.ads s-parint.ads s-rpc.ads s-rpcser.ads s-rpcser.adb s-stratt.adb
-+s-parint.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garhea.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpro.ads s-gasoli.ads s-garsta.ads s-gastha.ads s-garsto.ads s-garstr.ads s-gartyp.ads s-garuni.ads s-garuti.ads s-garuti.adb s-parint.ads s-parint.adb s-rpc.ads
-+s-rpc.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garfil.ads s-garhea.ads s-garhea.adb s-galiop.ads s-garopt.ads s-garpar.ads s-gaphlo.ads s-garpri.ads s-gaprma.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-garsta.ads s-gastha.ads s-garsto.ads s-garstr.ads s-garstr.adb s-gartra.ads s-gartyp.ads s-garuni.ads s-garuti.ads s-rpc.ads s-rpc.adb
-+s-rpcser.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garhea.ads s-garopt.ads s-gaplsp.ads s-garpri.ads s-gaprma.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-garsta.ads s-gastha.ads s-garstr.ads s-garstr.adb s-gartas.ads s-gartyp.ads s-garuni.ads s-parint.ads s-rpc.ads s-rpcser.ads s-rpcser.adb
- s-rpstio.o: s-garlic.ads s-gardeb.ads s-gardeb.adb s-garexc.ads s-garhea.ads s-ganata.ads s-garpro.ads s-gasoli.ads s-gasoli.adb s-garsta.ads s-gastha.ads s-garstr.ads s-garstr.adb s-gartab.ads s-gartab.adb s-gartyp.ads s-rpc.ads s-rpstio.ads s-rpstio.adb
--s-shasto.o: s-garlic.ads s-gardeb.ads s-garexc.ads s-garexc.adb s-garsto.ads s-gartyp.ads s-shasto.ads s-shasto.adb
--s-stratt.o: s-stratt.adb
-+s-shasto.o: s-garlic.ads s-gardeb.ads s-garexc.ads s-garexc.adb s-garsto.ads s-gartyp.ads s-shasto.adb
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
- .NOEXPORT:
diff --git a/gnat-glade/patches/patch-Garlic_garlic.gpr b/gnat-glade/patches/patch-Garlic_garlic.gpr
deleted file mode 100644
index 7169965283..0000000000
--- a/gnat-glade/patches/patch-Garlic_garlic.gpr
+++ /dev/null
@@ -1,44 +0,0 @@
-$NetBSD: patch-Garlic_garlic.gpr,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Provide project file for gnatmake
-
---- /dev/null
-+++ Garlic/garlic.gpr
-@@ -0,0 +1,37 @@
-+library project Garlic is
-+
-+ for Languages use ("Ada");
-+
-+ for Source_Dirs use ("../../include/garlic");
-+ for Library_Dir use "../../lib/garlic";
-+ for Library_Kind use "static";
-+
-+ for Library_Name use "garlic";
-+
-+ package Naming is
-+ for dot_replacement use "-";
-+ for casing use "lowercase";
-+ for body_suffix ("ada") use ".adb";
-+ for spec_suffix ("ada") use ".ads";
-+ end Naming;
-+
-+ package Install is
-+ for Active use "False";
-+ end Install;
-+
-+ for Externally_Built use "True";
-+
-+ type Platforms is ("Posix", "Windows_NT");
-+
-+ type Library_Kind is ("static", "static-pic", "relocatable");
-+
-+ type Garlic_Build_Kind is ("dev", "prod");
-+
-+ Ada_Switches := ("-O2", "-g", "-gnatg");
-+ Common_Dir := "../Garlic";
-+ Platform_Dir := "../Garlic/platform/e";
-+ Platform : Platforms := "Posix";
-+ Library_Type : Library_Kind := "static";
-+ Build_Mode : Garlic_Build_Kind := "prod";
-+
-+end Garlic;
diff --git a/gnat-glade/patches/patch-Garlic_isthrbio.adb b/gnat-glade/patches/patch-Garlic_isthrbio.adb
deleted file mode 100644
index 4ade7f8fd8..0000000000
--- a/gnat-glade/patches/patch-Garlic_isthrbio.adb
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-Garlic_isthrbio.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix link time version warning
-
---- Garlic/isthrbio.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/isthrbio.adb
-@@ -65,7 +65,7 @@
- Exceptfds : Fd_Set_Access;
- Timeout : Timeval_Access)
- return int;
-- pragma Import (C, C_Select, "select");
-+ pragma Import (C, C_Select, "__netbsd_select");
-
- task A_Task is
- entry Start;
diff --git a/gnat-glade/patches/patch-Garlic_isthrbio.gpr b/gnat-glade/patches/patch-Garlic_isthrbio.gpr
deleted file mode 100644
index 51d74433b0..0000000000
--- a/gnat-glade/patches/patch-Garlic_isthrbio.gpr
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-Garlic_isthrbio.gpr,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Make project to fix link time version warning
-
---- /dev/null
-+++ Garlic/isthrbio.gpr
-@@ -0,0 +1,10 @@
-+project Isthrbio is
-+
-+ for Languages use ("C", "Ada");
-+
-+ for Exec_Dir use "../";
-+ for Source_Dirs use (".");
-+ for Main use ("isthrbio");
-+ for Source_Files use ("isthrbio.adb", "select.c");
-+
-+end Isthrbio;
diff --git a/gnat-glade/patches/patch-Garlic_s-dsaser.ads b/gnat-glade/patches/patch-Garlic_s-dsaser.ads
deleted file mode 100644
index c95f265b15..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-dsaser.ads
+++ /dev/null
@@ -1,63 +0,0 @@
-$NetBSD: patch-Garlic_s-stratt.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Remove duplicate specification
-
---- Garlic/s-dsaser.ads.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-dsaser.ads
-@@ -1,56 +0,0 @@
--------------------------------------------------------------------------------
---- --
---- GLADE COMPONENTS --
---- --
---- S Y S T E M . D S A _ S E R V I C E S --
---- --
---- S p e c --
---- --
---- Copyright (C) 2006 Free Software Foundation, Inc. --
---- --
---- GARLIC is free software; you can redistribute it and/or modify it under --
---- terms of the GNU General Public License as published by the Free Soft- --
---- ware Foundation; either version 2, or (at your option) any later ver- --
---- sion. GARLIC is distributed in the hope that it will be useful, but --
---- WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABI- --
---- LITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public --
---- License for more details. You should have received a copy of the GNU --
---- General Public License distributed with GARLIC; see file COPYING. If --
---- not, write to the Free Software Foundation, 59 Temple Place - Suite 330, --
---- Boston, MA 02111-1307, USA. --
---- --
---- As a special exception, if other files instantiate generics from this --
---- unit, or you link this unit with other files to produce an executable, --
---- this unit does not by itself cause the resulting executable to be --
---- covered by the GNU General Public License. This exception does not --
---- however invalidate any other reasons why the executable file might be --
---- covered by the GNU Public License. --
---- --
---- GLADE is maintained by ACT Europe. --
---- (email: glade-report%act-europe.fr@localhost) --
---- --
--------------------------------------------------------------------------------
--
---- This package is used to call distributed system annex services, which
---- require the partition communication sub-system to be initialized.
--
--with System.Partition_Interface;
--with System.RPC;
--
--package System.DSA_Services is
--
-- function Get_Active_Partition_ID
-- (Name : Partition_Interface.Unit_Name) return RPC.Partition_ID
-- renames Partition_Interface.Get_Active_Partition_ID;
-- -- Returns the partition ID of the partition in which Name resides
--
-- function Get_Local_Partition_ID return RPC.Partition_ID
-- renames Partition_Interface.Get_Local_Partition_ID;
-- -- Return the Partition_ID of the current partition
--
-- function Get_Passive_Partition_ID
-- (Name : Partition_Interface.Unit_Name) return RPC.Partition_ID
-- renames Partition_Interface.Get_Passive_Partition_ID;
-- -- Return the Partition_ID of the given shared passive partition
--
--end System.DSA_Services;
diff --git a/gnat-glade/patches/patch-Garlic_s-gafizi.adb b/gnat-glade/patches/patch-Garlic_s-gafizi.adb
deleted file mode 100644
index 85af2ede5d..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-gafizi.adb
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-Garlic_s-gafizi.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix som compilation warnings
-
---- Garlic/s-gafizi.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-gafizi.adb
-@@ -33,8 +33,6 @@
-
- with Ada.Streams; use Ada.Streams;
- with Interfaces.C;
--with System.Garlic.Filters;
--pragma Warnings (Off, System.Garlic.Filters);
- with System.Garlic.Debug; use System.Garlic.Debug;
- with System.Garlic.Streams; use System.Garlic.Streams;
-
diff --git a/gnat-glade/patches/patch-Garlic_s-gaprre.adb b/gnat-glade/patches/patch-Garlic_s-gaprre.adb
deleted file mode 100644
index fe9eeac8ce..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-gaprre.adb
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-Garlic_s-gaprre.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix compilation warnings for GCC 13
-https://github.com/reznikmm/garlic/commit/cd21e825da1a73bd853054ea19eae6a5437fb5e4
-
---- Garlic/s-gaprre.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-gaprre.adb
-@@ -41,7 +41,6 @@
- with System.Garlic.Heart; use System.Garlic.Heart;
- with System.Garlic.Options; use System.Garlic.Options;
- with System.Garlic.Physical_Location; use System.Garlic.Physical_Location;
--with System.Garlic.Protocols; use System.Garlic.Protocols;
- with System.Garlic.Streams; use System.Garlic.Streams;
- with System.Garlic.Trace; use System.Garlic.Trace;
- with System.Garlic.Types; use System.Garlic.Types;
diff --git a/gnat-glade/patches/patch-Garlic_s-gaprre.ads b/gnat-glade/patches/patch-Garlic_s-gaprre.ads
deleted file mode 100644
index d80950978f..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-gaprre.ads
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-Garlic_s-gaprre.ads,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix compilation warnings for GCC 13
-https://github.com/reznikmm/garlic/commit/cd21e825da1a73bd853054ea19eae6a5437fb5e4
-
---- Garlic/s-gaprre.ads.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-gaprre.ads
-@@ -36,7 +36,6 @@
- with GNAT.Strings;
-
- with System.Garlic.Exceptions;
--with System.Garlic.Protocols;
- with System.Garlic.Types;
-
- package System.Garlic.Protocols.Replay is
diff --git a/gnat-glade/patches/patch-Garlic_s-gaprtc.adb b/gnat-glade/patches/patch-Garlic_s-gaprtc.adb
deleted file mode 100644
index 9f2b6742e9..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-gaprtc.adb
+++ /dev/null
@@ -1,49 +0,0 @@
-$NetBSD: patch-Garlic_s-gaprtc.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-Fix compilation warnings for GCC 13
-https://github.com/reznikmm/garlic/commit/cd21e825da1a73bd853054ea19eae6a5437fb5e4
-
-
---- Garlic/s-gaprtc.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-gaprtc.adb
-@@ -43,7 +43,6 @@
- with System.Garlic.Partitions; use System.Garlic.Partitions;
- with System.Garlic.Physical_Location; use System.Garlic.Physical_Location;
- with System.Garlic.Platform_Specific;
--with System.Garlic.Protocols; use System.Garlic.Protocols;
- with System.Garlic.Soft_Links;
- with System.Garlic.Streams; use System.Garlic.Streams;
- with System.Garlic.Table;
-@@ -58,7 +57,7 @@
- Key : Debug_Key := Private_Debug_Key)
- renames Print_Debug_Info;
-
-- use Ada.Streams, System.Garlic.Protocols, System.Garlic.Types;
-+ use Ada.Streams, System.Garlic.Types;
-
- subtype Error_Type is Exceptions.Error_Type;
-
-@@ -168,7 +167,6 @@
- Data : access Stream_Element_Array;
- From : Stream_Element_Count;
- Error : in out Error_Type);
-- pragma Inline (Send);
- pragma Export (Ada, Send, "GLADE_Physical_Send");
- -- Receive and send data. Receive loops as long as Data has not
- -- been filled and Send as long as everything has not
-@@ -320,12 +318,11 @@
-
- function Do_Connect (Sock_Addr : Sock_Addr_Type) return Socket_Type is
- Peer : Socket_Type := No_Socket;
-- Addr : Sock_Addr_Type := Sock_Addr;
-
- begin
- begin
- Create_Socket (Peer);
-- Connect_Socket (Peer, Addr);
-+ Connect_Socket (Peer, Sock_Addr);
- exception when Socket_Error =>
- pragma Debug (D ("Cannot connect to " & Image (Sock_Addr)));
- if Peer /= No_Socket then
diff --git a/gnat-glade/patches/patch-Garlic_s-garexc.adb b/gnat-glade/patches/patch-Garlic_s-garexc.adb
deleted file mode 100644
index 5436035db7..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-garexc.adb
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-Garlic_s-garexc.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix compilation warning
-https://github.com/reznikmm/garlic/commit/4d16e8caddbcc83f6d37e14d657a6c8515466cc7
-
---- Garlic/s-garexc.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-garexc.adb
-@@ -113,8 +113,6 @@
- procedure Raise_With_Errno (Id : Exception_Id) is
- begin
- Raise_Exception (Id, "Error" & Integer'Image (Errno));
-- -- Next line will never be called, just to avoid GNAT warnings
-- Raise_With_Errno (Id);
- end Raise_With_Errno;
-
- -----------
diff --git a/gnat-glade/patches/patch-Garlic_s-garsto.adb b/gnat-glade/patches/patch-Garlic_s-garsto.adb
deleted file mode 100644
index 7e2e2ba7d6..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-garsto.adb
+++ /dev/null
@@ -1,64 +0,0 @@
-$NetBSD: patch-Garlic_s-garsto.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Get rid of Getenv
-https://github.com/reznikmm/garlic/commit/4d16e8caddbcc83f6d37e14d657a6c8515466cc7
-
---- Garlic/s-garsto.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-garsto.adb
-@@ -33,8 +33,7 @@
-
- with Ada.Streams; use Ada.Streams;
-
--with GNAT.HTable;
--with GNAT.OS_Lib;
-+with System.HTable;
- with GNAT.Strings; use GNAT.Strings;
-
- with System.Garlic.Debug; use System.Garlic.Debug;
-@@ -59,12 +58,10 @@
- Key : Debug_Key := Private_Debug_Key)
- renames Print_Debug_Info;
-
-- package OS renames GNAT.OS_Lib;
--
- subtype Hash_Header is Natural range 0 .. 30;
-
-- function Hash (F : OS.String_Access) return Hash_Header;
-- function Equal (F1, F2 : OS.String_Access) return Boolean;
-+ function Hash (F : String_Access) return Hash_Header;
-+ function Equal (F1, F2 : String_Access) return Boolean;
- -- Hash and equality functions for hash table
-
- function Extract_Pkg_Name (Var_Name : String) return String;
-@@ -88,11 +85,11 @@
- Max_Storages : constant := 10;
- Storage_Table : array (First_Storage .. Max_Storages) of Shared_Data_Access;
-
-- package SST is new GNAT.HTable.Simple_HTable
-+ package SST is new System.HTable.Simple_HTable
- (Header_Num => Hash_Header,
- Element => Shared_Data_Access,
- No_Element => null,
-- Key => OS.String_Access,
-+ Key => String_Access,
- Hash => Hash,
- Equal => Equal);
-
-@@ -100,7 +97,7 @@
- -- Equal --
- -----------
-
-- function Equal (F1, F2 : OS.String_Access) return Boolean is
-+ function Equal (F1, F2 : String_Access) return Boolean is
- begin
- return F1.all = F2.all;
- end Equal;
-@@ -123,7 +120,7 @@
- -- Hash --
- ----------
-
-- function Hash (F : OS.String_Access) return Hash_Header is
-+ function Hash (F : String_Access) return Hash_Header is
- N : Natural := 0;
-
- begin
diff --git a/gnat-glade/patches/patch-Garlic_s-garstr.ads b/gnat-glade/patches/patch-Garlic_s-garstr.ads
deleted file mode 100644
index bc0d7d7926..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-garstr.ads
+++ /dev/null
@@ -1,19 +0,0 @@
-$NetBSD: patch-Garlic_s-garstr.ads,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Garlic/s-garstr.ads.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-garstr.ads
-@@ -48,10 +48,10 @@
- type Node_Ptr is access Node;
-
- type Node (Size : Ada.Streams.Stream_Element_Count) is record
-- Content : Ada.Streams.Stream_Element_Array (1 .. Size);
- Current : Ada.Streams.Stream_Element_Offset := 1;
- Last : Ada.Streams.Stream_Element_Offset := 1;
- Next : Node_Ptr;
-+ Content : Ada.Streams.Stream_Element_Array (1 .. Size);
- end record;
-
- type Params_Stream_Type (Initial_Size : Ada.Streams.Stream_Element_Count) is
diff --git a/gnat-glade/patches/patch-Garlic_s-gartab.adb b/gnat-glade/patches/patch-Garlic_s-gartab.adb
deleted file mode 100644
index e68576f48b..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-gartab.adb
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-Garlic_s-gartab.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Garlic/s-gartab.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-gartab.adb
-@@ -209,7 +209,7 @@
- Index := Allocate;
- Table (Index) := Null_Component;
- Usage (Index).Name := Name;
-- Set_Info (Name, Integer (Integer (Index)));
-+ Set_Info (Name, Integer (Index));
- else
- Index := Index_Type (Info);
- end if;
diff --git a/gnat-glade/patches/patch-Garlic_s-gartas.adb b/gnat-glade/patches/patch-Garlic_s-gartas.adb
deleted file mode 100644
index ce6039212a..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-gartas.adb
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-Garlic_s-gartas.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix compilation warnings for GCC 13
-https://github.com/reznikmm/garlic/commit/cd21e825da1a73bd853054ea19eae6a5437fb5e4
-
---- Garlic/s-gartas.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-gartas.adb
-@@ -35,7 +35,6 @@
- with Ada.Dynamic_Priorities;
- -- with Ada.Task_Attributes;
-
--with System; use System;
- with System.Garlic.Debug; use System.Garlic.Debug;
- with System.Garlic.Soft_Links; use System.Garlic.Soft_Links;
- with System.Garlic.Types; use System.Garlic.Types;
diff --git a/gnat-glade/patches/patch-Garlic_s-garuni.adb b/gnat-glade/patches/patch-Garlic_s-garuni.adb
deleted file mode 100644
index 47577d9d37..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-garuni.adb
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-Garlic_s-garuni.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Garlic/s-garuni.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-garuni.adb
-@@ -543,7 +543,7 @@
- end if;
-
- pragma Debug
-- (D ("Looking for information on unit "& Units.Get_Name (Unit)));
-+ (D ("Looking for information on unit " & Units.Get_Name (Unit)));
-
- Units.Enter;
- Current := Units.Get_Component (Unit);
diff --git a/gnat-glade/patches/patch-Garlic_s-gastdf.adb b/gnat-glade/patches/patch-Garlic_s-gastdf.adb
deleted file mode 100644
index c73e785e96..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-gastdf.adb
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-Garlic_s-gastdf.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix compilation warnings for GCC 13
-https://github.com/reznikmm/garlic/commit/cd21e825da1a73bd853054ea19eae6a5437fb5e4
-
---- Garlic/s-gastdf.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-gastdf.adb
-@@ -36,7 +36,6 @@
-
- with GNAT.OS_Lib; use GNAT.OS_Lib;
-
--with System;
- with System.File_Control_Block;
- with System.File_IO;
-
diff --git a/gnat-glade/patches/patch-Garlic_s-gastha.adb b/gnat-glade/patches/patch-Garlic_s-gastha.adb
deleted file mode 100644
index 2e4c5311ea..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-gastha.adb
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-Garlic_s-gastha.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Garlic/s-gastha.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-gastha.adb
-@@ -39,7 +39,6 @@
- package SSE renames System.Storage_Elements;
-
- use type SSE.Storage_Count;
-- use type IC.int;
-
- function malloc (Size : IC.int) return Address;
- pragma Import (C, malloc, "__gnat_malloc");
diff --git a/gnat-glade/patches/patch-Garlic_s-gptcse.adb b/gnat-glade/patches/patch-Garlic_s-gptcse.adb
deleted file mode 100644
index 324a2b22d9..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-gptcse.adb
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-Garlic_s-gptcse.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix compilation warnings for GCC 13
-https://github.com/reznikmm/garlic/commit/cd21e825da1a73bd853054ea19eae6a5437fb5e4
-
---- Garlic/s-gptcse.adb.orig 2007-11-26 15:35:25.000000000 +0200
-+++ Garlic/s-gptcse.adb
-@@ -37,7 +37,6 @@
-
- with System.Garlic.Debug; use System.Garlic.Debug;
- with System.Garlic.Soft_Links; use System.Garlic.Soft_Links;
--with System.Garlic.Protocols.Tcp; use System.Garlic.Protocols.Tcp;
- with System.Garlic.Types; use System.Garlic.Types;
-
- package body System.Garlic.Protocols.Tcp.Server is
diff --git a/gnat-glade/patches/patch-Garlic_s-parint.adb b/gnat-glade/patches/patch-Garlic_s-parint.adb
deleted file mode 100644
index 738b1532e4..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-parint.adb
+++ /dev/null
@@ -1,61 +0,0 @@
-$NetBSD: patch-Garlic_s-parint.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix compilation error for caller stubs
-https://github.com/reznikmm/garlic/commit/97a0ea7e59e509d1328dc6287c432861a9044561
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Garlic/s-parint.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-parint.adb
-@@ -562,6 +562,7 @@
-
- Name : String := RCI_Name;
- Unit : Unit_Id;
-+ Initialized : Boolean := False;
-
- -----------------------------
- -- Get_Active_Partition_ID --
-@@ -571,6 +572,11 @@
- Partition : Partition_ID;
- Error : aliased Error_Type;
- begin
-+ if not Initialized then
-+ Initialized := True;
-+ To_Lower (Name);
-+ Unit := Get_Unit_Id (Name);
-+ end if;
- Get_Partition (Unit, Partition, Error);
- if Found (Error) then
- Raise_Communication_Error (Error'Access);
-@@ -586,6 +592,11 @@
- Receiver : Unsigned_64;
- Error : aliased Error_Type;
- begin
-+ if not Initialized then
-+ Initialized := True;
-+ To_Lower (Name);
-+ Unit := Get_Unit_Id (Name);
-+ end if;
- Get_Receiver (Unit, Receiver, Error);
- if Found (Error) then
- Raise_Communication_Error (Error'Access);
-@@ -593,9 +604,6 @@
- return Receiver;
- end Get_RCI_Package_Receiver;
-
-- begin
-- To_Lower (Name);
-- Unit := Get_Unit_Id (Name);
- end RCI_Locator;
-
- ---------
-@@ -622,7 +630,8 @@
- while Caller /= null loop
- D ("Check " & Caller.Name.all & " version consistency");
- if Different (Caller.Version.all,
-- Get_Unit_Version (Caller.Name.all, Caller.RCI)) then
-+ Get_Unit_Version (Caller.Name.all, Caller.RCI))
-+ then
-
- -- If not boot partition, then terminate without waiting for
- -- boot partition request.
diff --git a/gnat-glade/patches/patch-Garlic_s-parint.ads b/gnat-glade/patches/patch-Garlic_s-parint.ads
deleted file mode 100644
index 5cd9cf6714..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-parint.ads
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-Garlic_s-parint.ads,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Add PCS_Version constant to make GNAT work
-https://github.com/reznikmm/garlic/commit/a7d7065148e7af5fccdbf32e03906d68a8aba65b
-
---- Garlic/s-parint.ads.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-parint.ads
-@@ -41,6 +41,8 @@
-
- pragma Elaborate_Body;
-
-+ PCS_Version : constant := 1;
-+
- type DSA_Implementation_Name is (No_DSA, GARLIC_DSA, PolyORB_DSA);
- DSA_Implementation : constant DSA_Implementation_Name := GARLIC_DSA;
-
diff --git a/gnat-glade/patches/patch-Garlic_s-rpc.adb b/gnat-glade/patches/patch-Garlic_s-rpc.adb
deleted file mode 100644
index ce4ff07955..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-rpc.adb
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD: patch-Garlic_s-rpc.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Garlic/s-rpc.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-rpc.adb
-@@ -48,10 +48,6 @@
-
- package body System.RPC is
-
-- use Ada.Streams;
--
-- use type System.Garlic.Streams.Params_Stream_Access;
-- use type System.Garlic.Streams.Params_Stream_Type;
- use type System.Garlic.Types.Partition_ID;
-
- -- This package needs extra comments ???
diff --git a/gnat-glade/patches/patch-Garlic_s-rpcser.adb b/gnat-glade/patches/patch-Garlic_s-rpcser.adb
deleted file mode 100644
index ef6cc647b1..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-rpcser.adb
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-Garlic_s-rpcser.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix some compilation warnings
-https://github.com/reznikmm/garlic/commit/b738f20db65add57f817f952a625df73bef0710e
-
---- Garlic/s-rpcser.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-rpcser.adb
-@@ -61,7 +61,6 @@
- package body System.RPC.Server is
-
- use type System.Garlic.Types.Partition_ID;
-- use type System.Garlic.Streams.Params_Stream_Type;
-
- Private_Debug_Key : constant Debug_Key :=
- Debug_Initialize ("S_RPCSER", "(s-rpcser): ");
diff --git a/gnat-glade/patches/patch-Garlic_s-shasto.adb b/gnat-glade/patches/patch-Garlic_s-shasto.adb
deleted file mode 100644
index 4aa2a8a0b7..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-shasto.adb
+++ /dev/null
@@ -1,130 +0,0 @@
-$NetBSD: patch-Garlic_s-shasto.adb,v 1.0 2025/02/13 22:00:00 dkazankov Exp $
-
-Implementation of Shared_Var_Procs specs
-
---- Garlic/s-shasto.adb.orig 2007-11-26 15:35:25.000000000 +0200
-+++ Garlic/s-shasto.adb
-@@ -31,17 +31,24 @@
- -- --
- ------------------------------------------------------------------------------
-
-+with Ada.Streams.Stream_IO;
-+
- with System.Garlic.Exceptions; use System.Garlic.Exceptions;
- with System.Garlic.Storages; use System.Garlic.Storages;
-
- package body System.Shared_Storage is
-
-+ use Ada.Streams.Stream_IO;
-+
-+ procedure Shared_Var_Close (Var : in out Stream_Access);
-+ function Shared_Var_ROpen (Var : String) return Stream_Access;
-+ function Shared_Var_WOpen (Var : String) return Stream_Access;
-+
- ----------------------
- -- Shared_Var_Close --
- ----------------------
-
-- procedure Shared_Var_Close (Var : in out SIO.Stream_Access)
-- is
-+ procedure Shared_Var_Close (Var : in out Stream_Access) is
- VS : Shared_Data_Access;
- pragma Warnings (Off, Var);
- begin
-@@ -53,8 +60,7 @@
- -- Shared_Var_Lock --
- ---------------------
-
-- procedure Shared_Var_Lock (Var : String)
-- is
-+ procedure Shared_Var_Lock (Var : String) is
- VS : Shared_Data_Access;
- Ok : Boolean;
- E : aliased Error_Type;
-@@ -71,8 +77,7 @@
- -- Shared_Var_ROpen --
- ----------------------
-
-- function Shared_Var_ROpen (Var : String) return SIO.Stream_Access
-- is
-+ function Shared_Var_ROpen (Var : String) return Stream_Access is
- VS : Shared_Data_Access;
- Ok : Boolean;
- E : aliased Error_Type;
-@@ -84,7 +89,7 @@
- end if;
- Initiate_Request (VS, Read, Ok);
- if Ok then
-- return SIO.Stream_Access (VS);
-+ return Stream_Access (VS);
- else
- return null;
- end if;
-@@ -94,8 +99,7 @@
- -- Shared_Var_Unlock --
- -----------------------
-
-- procedure Shared_Var_Unlock (Var : String)
-- is
-+ procedure Shared_Var_Unlock (Var : String) is
- VS : Shared_Data_Access;
- E : aliased Error_Type;
-
-@@ -111,8 +115,7 @@
- -- Shared_Var_WOpen --
- ----------------------
-
-- function Shared_Var_WOpen (Var : String) return SIO.Stream_Access
-- is
-+ function Shared_Var_WOpen (Var : String) return Stream_Access is
- VS : Shared_Data_Access;
- Ok : Boolean;
- E : aliased Error_Type;
-@@ -123,7 +126,46 @@
- Raise_Communication_Error (Content (E'Access));
- end if;
- Initiate_Request (VS, Write, Ok);
-- return SIO.Stream_Access (VS);
-+ return Stream_Access (VS);
- end Shared_Var_WOpen;
-
-+ ----------------------
-+ -- Shared_Var_Procs --
-+ ----------------------
-+
-+ package body Shared_Var_Procs is
-+
-+ -- XXX for instance, we use stream attributes to
-+ -- assign variable V of limited type Typ.
-+
-+ ----------
-+ -- Read --
-+ ----------
-+
-+ procedure Read is
-+ S : Stream_Access := Shared_Var_ROpen (Full_Name);
-+
-+ begin
-+ if S /= null then
-+ Typ'Read (S, V);
-+ Shared_Var_Close (S);
-+ end if;
-+ end Read;
-+
-+ -----------
-+ -- Write --
-+ -----------
-+
-+ procedure Write is
-+ S : Stream_Access := Shared_Var_WOpen (Full_Name);
-+
-+ begin
-+ if S /= null then
-+ Typ'Write (S, V);
-+ Shared_Var_Close (S);
-+ end if;
-+ end Write;
-+
-+ end Shared_Var_Procs;
-+
- end System.Shared_Storage;
diff --git a/gnat-glade/patches/patch-Garlic_s-shasto.ads b/gnat-glade/patches/patch-Garlic_s-shasto.ads
deleted file mode 100644
index 7391844249..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-shasto.ads
+++ /dev/null
@@ -1,213 +0,0 @@
-$NetBSD: patch-Garlic_s-shasto.ads,v 1.0 2025/02/13 21:00:00 dkazankov Exp $
-
-Remove unsupported old specification
-
---- Garlic/s-shasto.ads.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-shasto.ads
-@@ -1,206 +0,0 @@
--------------------------------------------------------------------------------
---- --
---- GLADE COMPONENTS --
---- --
---- S Y S T E M . S H A R E D _ S T O R A G E --
---- --
---- S p e c --
---- --
---- Copyright (C) 1996-2006 Free Software Foundation, Inc. --
---- --
---- GARLIC is free software; you can redistribute it and/or modify it under --
---- terms of the GNU General Public License as published by the Free Soft- --
---- ware Foundation; either version 2, or (at your option) any later ver- --
---- sion. GARLIC is distributed in the hope that it will be useful, but --
---- WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABI- --
---- LITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public --
---- License for more details. You should have received a copy of the GNU --
---- General Public License distributed with GARLIC; see file COPYING. If --
---- not, write to the Free Software Foundation, 59 Temple Place - Suite 330, --
---- Boston, MA 02111-1307, USA. --
---- --
---- As a special exception, if other files instantiate generics from this --
---- unit, or you link this unit with other files to produce an executable, --
---- this unit does not by itself cause the resulting executable to be --
---- covered by the GNU General Public License. This exception does not --
---- however invalidate any other reasons why the executable file might be --
---- covered by the GNU Public License. --
---- --
---- GLADE is maintained by ACT Europe. --
---- (email: glade-report%act-europe.fr@localhost) --
---- --
--------------------------------------------------------------------------------
--
--with Ada.Streams.Stream_IO;
--
--package System.Shared_Storage is
--
-- -- This package manages the shared/persistant memory required for
-- -- full implementation of variables in Shared_Passive packages,
-- -- more precisely variables whose enclosing dynamic scope is a
-- -- shared passive package.
--
-- -- -------------------------
-- -- -- Shared Storage Model --
-- -- -------------------------
--
-- -- The basic model used is that each partition that references the
-- -- Shared_Passive package has a local copy of the package data
-- -- that is initialized in accordance with the declarations of the
-- -- package in the normal manner. The routines in
-- -- System.Shared_Memory are then used to ensure that the values in
-- -- these separate copies are properly synchronized with the state
-- -- of the overall system.
--
-- -- This synchronization is ensured by maintaining a set of files
-- -- in a designated directory. The directory is designated by
-- -- setting the environment variable SHARED_MEMORY_DIRECTORY. This
-- -- variable must be set for all partitions. If the environment
-- -- variable is not defined, then the current directory is used.
--
-- -- There is one file for each variable. The name is the fully
-- -- qualified name of the variable with all letters forced to lower
-- -- case. For example, the variable Key_Name in the Shared_Passive
-- -- package Shared_Data results in the file name
-- -- shared_data.key_name.
--
-- -- If the file does not exist, it indicates that no partition has
-- -- assigned a new value, so that the initial value is the correct
-- -- one. This is the critical component of the model. It means that
-- -- there is no system-wide synchronization required for
-- -- initializing the package, since the shared memory files need
-- -- not (and do not) reflect the initial state. There is therefore
-- -- no issue of synchronizing initialization and read/write
-- -- accress.
--
-- -- If the file does exist, it is a Stream_IO file that contains
-- -- the most recently assigned value of the variable, as written by
-- -- the use of the typ'Write stream attribute.
--
-- -- -----------------------
-- -- -- Read/Write Access --
-- -- -----------------------
--
-- -- The approach is as follows:
--
-- -- For each shared variable, var, an access routine varR is
-- -- created whose body has the following form (this example is for
-- -- Pkg.Var):
--
-- -- procedure varR is
-- -- S : Ada.Streams.Stream_IO.Stream_Access;
-- -- begin
-- -- S := Shared_Mem_RFile ("pkg", "var");
-- -- if S /= null then
-- -- typ'Read (S);
-- -- end if;
-- -- end varR;
--
-- -- The routine Shared_Mem_RFile in package System.Shared_Memory
-- -- either returns null if the file does not exist, or otherwise a
-- -- Stream_Access value that references the corresponding shared
-- -- memory file, positioned at start of the file, ready to read the
-- -- current value.
--
-- -- Each reference to the shared variable, var, is preceded by a
-- -- call to the corresponding varR procedure, which either leaves
-- -- the initial value unchanged if the file does not exist, or
-- -- reads the current value from the shared memory file.
--
-- -- In addition, for each shared variable, var, an assignment
-- -- routine is created whose body has the following form (again for
-- -- Pgg.Var)
--
-- -- procedure VarA is
-- -- begin
-- -- typ'Write (Shared_Mem_WFile ("pkg", "var"), var);
-- -- end VarA;
--
-- -- The routine Shared_Mem_WFile is package System.Shared_Memory
-- -- returns a Stream_Access value that references the corresponding
-- -- shared memory file, positioned at the start, ready to write the
-- -- new value.
--
-- -- Each assignment to the shared variable, var, is followed by a
-- -- call to the corresponding varA procedure, which writes the new
-- -- value to the shared memory file.
--
-- -- Note that there is no synchronization for these file read and
-- -- write operations, since it is assumed that a correctly
-- -- operating programs will provide appropriate synchronization. In
-- -- particular, variables can be protected using protected types
-- -- with no entries.
--
-- -- Note: a special circuit allows the use of stream attributes
-- -- Read and Write for limited types (using the corresponding
-- -- attribute for the full type), but there are limitations on the
-- -- data that can be placed in shared passive partitions. See
-- -- sem_smem.ads/adb for details.
--
-- -- ----------------------------------------------------------------
-- -- -- Handling of Protected Objects in Shared Passive Partitions --
-- -- ----------------------------------------------------------------
--
-- -- During the execution of a protected subprogram call, access is
-- -- locked out using a global locking mechanism, as provided by the
-- -- GNAT.Lock_Files capability. This package contains the lock and
-- -- unlock calls, and the expander generates a call to the lock
-- -- routine before the protected call and a call to the unlock
-- -- routine after the protected call.
--
-- -- Within the code of the protected subprogram, the access to the
-- -- protected object itself uses the local copy, without any
-- -- special synchronization. Since global access is locked out, no
-- -- other task or partition can attempt to read or write this data
-- -- as long as the lock is held.
--
-- -- The data in the local copy does however need synchronizing with
-- -- the global values in the shared memory file. This is achieved
-- -- as follows:
--
-- -- The protected object generates a read and assignment routine as
-- -- described for other shared passive variables. The code for the
-- -- 'Read and 'Write attributes (not normally allowed, but allowed
-- -- in this special case) simply reads or writes the values of the
-- -- components in the protected record.
--
-- -- The lock call is followed by a call to the shared read routine
-- -- to synchronize the local copy to contain the proper global
-- -- value.
--
-- -- The unlock call in the procedure case only is preceded by a
-- -- call to the shared assign routine to synchronize the global
-- -- shared memory files with the (possibly modified) local copy.
--
-- -- These calls to the read and assign routines, as well as the
-- -- lock and unlock routines, are inserted by the expander (see
-- -- exp_smem.adb).
--
-- package SIO renames Ada.Streams.Stream_IO;
--
-- function Shared_Var_ROpen (Var : String) return SIO.Stream_Access;
-- -- As described above, this routine returns null if the corresponding
-- -- shared memory file does not exist, and otherwise, if the file does
-- -- exist, a Stream_Access value that references the shared memory file,
-- -- positioned to the start, ready to read the current value.
--
-- function Shared_Var_WOpen (Var : String) return SIO.Stream_Access;
-- -- As described above, this routine returns a Stream_Access value that
-- -- references the shared memory file, positioned to the start, ready to
-- -- write the new value. The file is created by this call if it does not
-- -- already exist.
--
-- procedure Shared_Var_Lock (Var : String);
-- -- This procedure claims the global shared memory lock. It is used for
-- -- protected types in shared passive packages. A call to this locking
-- -- routine is generated as the first operation in the code for the body
-- -- of a protected subprogram, and it busy waits if the lock is busy.
--
-- procedure Shared_Var_Unlock (Var : String);
-- -- This procedure releases the lock obtaind by a prior call to the
-- -- Shared_Mem_Lock procedure, and is to be generated as the last
-- -- operation in the body of a protected subprogram.
--
-- procedure Shared_Var_Close (Var : in out SIO.Stream_Access);
--
--end System.Shared_Storage;
diff --git a/gnat-glade/patches/patch-Garlic_s-stratt.adb b/gnat-glade/patches/patch-Garlic_s-stratt.adb
deleted file mode 100644
index 2f8b6b4a0e..0000000000
--- a/gnat-glade/patches/patch-Garlic_s-stratt.adb
+++ /dev/null
@@ -1,2025 +0,0 @@
-$NetBSD: patch-Garlic_s-stratt.adb,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Remove old stream attributes implementation
-
---- Garlic/s-stratt.adb.orig 2007-11-26 15:10:13.000000000 +0200
-+++ Garlic/s-stratt.adb
-@@ -1,2018 +0,0 @@
--------------------------------------------------------------------------------
---- --
---- GLADE COMPONENTS --
---- --
---- S Y S T E M . S T R E A M _ A T T R I B U T E S --
---- --
---- B o d y --
---- --
---- Copyright (C) 1996-2006 Free Software Foundation, Inc. --
---- --
---- GARLIC is free software; you can redistribute it and/or modify it under --
---- terms of the GNU General Public License as published by the Free Soft- --
---- ware Foundation; either version 2, or (at your option) any later ver- --
---- sion. GARLIC is distributed in the hope that it will be useful, but --
---- WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABI- --
---- LITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public --
---- License for more details. You should have received a copy of the GNU --
---- General Public License distributed with GARLIC; see file COPYING. If --
---- not, write to the Free Software Foundation, 59 Temple Place - Suite 330, --
---- Boston, MA 02111-1307, USA. --
---- --
---- As a special exception, if other files instantiate generics from this --
---- unit, or you link this unit with other files to produce an executable, --
---- this unit does not by itself cause the resulting executable to be --
---- covered by the GNU General Public License. This exception does not --
---- however invalidate any other reasons why the executable file might be --
---- covered by the GNU Public License. --
---- --
---- GLADE is maintained by ACT Europe. --
---- (email: glade-report%act-europe.fr@localhost) --
---- --
--------------------------------------------------------------------------------
--
--with Ada.IO_Exceptions;
--with Ada.Streams; use Ada.Streams;
--with Ada.Unchecked_Conversion;
--
--package body System.Stream_Attributes is
--
-- pragma Suppress (Range_Check);
-- pragma Suppress (Overflow_Check);
--
-- use UST;
--
-- Data_Error : exception renames Ada.IO_Exceptions.End_Error;
-- -- Exception raised if insufficient data read (End_Error is
-- -- mandated by AI95-00132).
--
-- SU : constant := System.Storage_Unit;
-- -- XXXXX pragma Assert (SU = 8);
--
-- BB : constant := 2 ** SU; -- Byte base
-- BL : constant := 2 ** SU - 1; -- Byte last
-- BS : constant := 2 ** (SU - 1); -- Byte sign
--
-- US : constant := Unsigned'Size; -- Unsigned size
-- UB : constant := (US - 1) / SU + 1; -- Unsigned byte
-- UL : constant := 2 ** US - 1; -- Unsigned last
--
-- FB : constant := 2.0 ** SU; -- Float base
--
-- subtype SE is Ada.Streams.Stream_Element;
-- subtype SEA is Ada.Streams.Stream_Element_Array;
-- subtype SEO is Ada.Streams.Stream_Element_Offset;
--
-- generic function UC renames Ada.Unchecked_Conversion;
--
-- type Field_Type is
-- record
-- E_Size : Integer; -- Exponent bit size
-- E_Bias : Integer; -- Exponent bias
-- F_Size : Integer; -- Fraction bit size
-- E_Last : Integer; -- Max exponent value
-- F_Mask : SE; -- Mask to apply on first fraction byte
-- E_Bytes : SEO; -- N. of exponent bytes completly used
-- F_Bytes : SEO; -- N. of fraction bytes completly used
-- F_Bits : Integer; -- N. of bits used on first fraction word
-- end record;
--
-- type Precision is (Single, Double, Extended);
-- Fields : constant array (Precision) of Field_Type
-- := (
-- -- Single precision
-- (E_Size => 8,
-- E_Bias => 127,
-- F_Size => 23,
-- E_Last => 2 ** 8 - 1,
-- F_Mask => 16#7F#, -- 2 ** 7 - 1,
-- E_Bytes => 2,
-- F_Bytes => 3,
-- F_Bits => 23 mod US),
-- -- Double precision
-- (E_Size => 11,
-- E_Bias => 1023,
-- F_Size => 52,
-- E_Last => 2 ** 11 - 1,
-- F_Mask => 16#0F#, -- 2 ** 4 - 1,
-- E_Bytes => 2,
-- F_Bytes => 7,
-- F_Bits => 52 mod US),
-- -- Extended precision
-- (E_Size => 15,
-- E_Bias => 16383,
-- F_Size => 63,
-- E_Last => 2 ** 15 - 1,
-- F_Mask => 16#FF#, -- 2 ** 8 - 1,
-- E_Bytes => 2,
-- F_Bytes => 8,
-- F_Bits => 63 mod US));
--
-- -- The representation of all items requires a multiple of four bytes
-- -- (or 32 bits) of data. The bytes are numbered 0 through n-1. The bytes
-- -- are read or written to some byte stream such that byte m always
-- -- precedes byte m+1. If the n bytes needed to contain the data are not
-- -- a multiple of four, then the n bytes are followed by enough (0 to 3)
-- -- residual zero bytes, r, to make the total byte count a multiple of 4.
--
-- -- An XDR signed integer is a 32-bit datum that encodes an integer
-- -- in the range [-2147483648,2147483647]. The integer is represented
-- -- in two's complement notation. The most and least significant bytes
-- -- are 0 and 3, respectively. Integers are declared as follows:
-- --
-- -- (MSB) (LSB)
-- -- +-------+-------+-------+-------+
-- -- |byte 0 |byte 1 |byte 2 |byte 3 |
-- -- +-------+-------+-------+-------+
-- -- <------------32 bits------------>
--
-- -- XXXXX pragma Assert (Long_Long_Integer'Size <= 64);
-- -- XXXXX pragma Assert (16 <= Integer'Size and Integer'Size <= 32);
--
-- SSI_L : constant := 1;
-- SI_L : constant := 2;
-- I_L : constant := 4;
-- LI_L : constant := 8;
-- LLI_L : constant := 8;
--
-- subtype XDR_S_SSI is SEA (1 .. SSI_L);
-- subtype XDR_S_SI is SEA (1 .. SI_L);
-- subtype XDR_S_I is SEA (1 .. I_L);
-- subtype XDR_S_LI is SEA (1 .. LI_L);
-- subtype XDR_S_LLI is SEA (1 .. LLI_L);
--
-- function Short_Short_Integer_To_XDR_S_SSI is
-- new Ada.Unchecked_Conversion (Short_Short_Integer, XDR_S_SSI);
-- function XDR_S_SSI_To_Short_Short_Integer is
-- new Ada.Unchecked_Conversion (XDR_S_SSI, Short_Short_Integer);
--
-- function Short_Integer_To_XDR_S_SI is
-- new Ada.Unchecked_Conversion (Short_Integer, XDR_S_SI);
-- function XDR_S_SI_To_Short_Integer is
-- new Ada.Unchecked_Conversion (XDR_S_SI, Short_Integer);
--
-- function Integer_To_XDR_S_I is
-- new Ada.Unchecked_Conversion (Integer, XDR_S_I);
-- function XDR_S_I_To_Integer is
-- new Ada.Unchecked_Conversion (XDR_S_I, Integer);
--
-- function Long_Long_Integer_To_XDR_S_LI is
-- new Ada.Unchecked_Conversion (Long_Long_Integer, XDR_S_LI);
-- function XDR_S_LI_To_Long_Long_Integer is
-- new Ada.Unchecked_Conversion (XDR_S_LI, Long_Long_Integer);
--
-- function Long_Long_Integer_To_XDR_S_LLI is
-- new Ada.Unchecked_Conversion (Long_Long_Integer, XDR_S_LLI);
-- function XDR_S_LLI_To_Long_Long_Integer is
-- new Ada.Unchecked_Conversion (XDR_S_LLI, Long_Long_Integer);
--
-- -- An XDR unsigned integer is a 32-bit datum that encodes a nonnegative
-- -- integer in the range [0,4294967295]. It is represented by an unsigned
-- -- binary number whose most and least significant bytes are 0 and 3,
-- -- respectively. An unsigned integer is declared as follows:
-- --
-- -- (MSB) (LSB)
-- -- +-------+-------+-------+-------+
-- -- |byte 0 |byte 1 |byte 2 |byte 3 |
-- -- +-------+-------+-------+-------+
-- -- <------------32 bits------------>
--
-- -- XXXXX pragma Assert (Long_Long_Unsigned'Size <= 64);
-- -- XXXXX pragma Assert (16 <= Unsigned'Size and Unsigned'Size <= 32);
--
-- SSU_L : constant := 1;
-- SU_L : constant := 2;
-- U_L : constant := 4;
-- LU_L : constant := 8;
-- LLU_L : constant := 8;
--
-- subtype XDR_S_SSU is SEA (1 .. SSU_L);
-- subtype XDR_S_SU is SEA (1 .. SU_L);
-- subtype XDR_S_U is SEA (1 .. U_L);
-- subtype XDR_S_LU is SEA (1 .. LU_L);
-- subtype XDR_S_LLU is SEA (1 .. LLU_L);
--
-- type XDR_SSU is mod BB ** SSU_L;
-- type XDR_SU is mod BB ** SU_L;
-- type XDR_U is mod BB ** U_L;
-- -- type XDR_LU is mod BB ** LU_L; -- Computed using Unsigned
-- -- type XDR_LLU is mod BB ** LLU_L; -- Computed using Unsigned
--
-- function Short_Unsigned_To_XDR_S_SU is
-- new Ada.Unchecked_Conversion (Short_Unsigned, XDR_S_SU);
-- function XDR_S_SU_To_Short_Unsigned is
-- new Ada.Unchecked_Conversion (XDR_S_SU, Short_Unsigned);
--
-- function Unsigned_To_XDR_S_U is
-- new Ada.Unchecked_Conversion (Unsigned, XDR_S_U);
-- function XDR_S_U_To_Unsigned is
-- new Ada.Unchecked_Conversion (XDR_S_U, Unsigned);
--
-- function Long_Long_Unsigned_To_XDR_S_LU is
-- new Ada.Unchecked_Conversion (Long_Long_Unsigned, XDR_S_LU);
-- function XDR_S_LU_To_Long_Long_Unsigned is
-- new Ada.Unchecked_Conversion (XDR_S_LU, Long_Long_Unsigned);
--
-- function Long_Long_Unsigned_To_XDR_S_LLU is
-- new Ada.Unchecked_Conversion (Long_Long_Unsigned, XDR_S_LLU);
-- function XDR_S_LLU_To_Long_Long_Unsigned is
-- new Ada.Unchecked_Conversion (XDR_S_LLU, Long_Long_Unsigned);
--
-- -- The standard defines the floating-point data type "float" (32 bits
-- -- or 4 bytes). The encoding used is the IEEE standard for normalized
-- -- single-precision floating-point numbers.
--
-- -- The standard defines the encoding for the double-precision
-- -- floating-point data type "double" (64 bits or 8 bytes). The
-- -- encoding used is the IEEE standard for normalized double-precision
-- -- floating-point numbers.
--
-- SF_L : constant := 4; -- Single precision
-- F_L : constant := 4; -- Single precision
-- LF_L : constant := 8; -- Double precision
-- LLF_L : constant := 12; -- Extended precision
--
-- -- TBD
-- TM_L : constant := 8;
-- subtype XDR_S_TM is SEA (1 .. TM_L);
-- type XDR_TM is mod BB ** TM_L;
--
-- type XDR_SA is mod 2 ** Standard'Address_Size;
-- function To_XDR_SA is new UC (System.Address, XDR_SA);
-- function To_XDR_SA is new UC (XDR_SA, System.Address);
--
-- -- Enumerations have the same representation as signed integers.
-- -- Enumerations are handy for describing subsets of the integers.
--
-- -- Booleans are important enough and occur frequently enough to warrant
-- -- their own explicit type in the standard. Booleans are declared as
-- -- an enumeration, with FALSE = 0 and TRUE = 1.
--
-- -- The standard defines a string of n (numbered 0 through n-1) ASCII
-- -- bytes to be the number n encoded as an unsigned integer (as described
-- -- above), and followed by the n bytes of the string. Byte m of the string
-- -- always precedes byte m+1 of the string, and byte 0 of the string always
-- -- follows the string's length. If n is not a multiple of four, then the
-- -- n bytes are followed by enough (0 to 3) residual zero bytes, r, to make
-- -- the total byte count a multiple of four.
--
-- -- To fit with XDR string, do not consider character as an enumeration
-- -- type.
--
-- C_L : constant := 1;
-- subtype XDR_S_C is SEA (1 .. C_L);
--
-- -- Consider Wide_Character as an enumeration type.
-- WC_L : constant := 4;
-- subtype XDR_S_WC is SEA (1 .. WC_L);
-- type XDR_WC is mod BB ** WC_L;
--
-- -- Optimization: if we already have the correct Bit_Order, then some
-- -- computations can be avoided since the source and the target will be
-- -- identical anyway. They will be replaced by direct unchecked
-- -- conversions.
--
-- Optimize_Integers : constant Boolean :=
-- Default_Bit_Order = High_Order_First;
--
-- ----------------
-- -- Workaround --
-- ----------------
--
-- function Scaling
-- (X : Short_Float; A : Integer)
-- return Short_Float;
--
-- function Scaling
-- (X : Float; A : Integer)
-- return Float;
--
-- function Scaling
-- (X : Long_Float; A : Integer)
-- return Long_Float;
-- function Scaling
-- (X : Long_Long_Float; A : Integer)
-- return Long_Long_Float;
-- ----------
-- -- I_AD --
-- ----------
--
-- function I_AD (Stream : not null access RST) return Fat_Pointer is
-- FP : Fat_Pointer;
--
-- begin
-- FP.P1 := I_AS (Stream).P1;
-- FP.P2 := I_AS (Stream).P1;
--
-- return FP;
-- end I_AD;
--
-- ----------
-- -- I_AS --
-- ----------
--
-- function I_AS (Stream : not null access RST) return Thin_Pointer is
-- S : XDR_S_TM;
-- L : SEO;
-- U : XDR_TM := 0;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- else
-- for N in S'Range loop
-- U := U * BB + XDR_TM (S (N));
-- end loop;
--
-- return (P1 => To_XDR_SA (XDR_SA (U)));
-- end if;
-- end I_AS;
--
-- ---------
-- -- I_B --
-- ---------
--
-- function I_B (Stream : not null access RST) return Boolean is
-- begin
-- case I_SSU (Stream) is
-- when 0 => return False;
-- when 1 => return True;
-- when others => raise Data_Error;
-- end case;
-- end I_B;
--
-- ---------
-- -- I_C --
-- ---------
--
-- function I_C (Stream : not null access RST) return Character is
-- S : XDR_S_C;
-- L : SEO;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- else
--
-- -- Use Ada requirements on Character representation clause.
-- return Character'Val (S (1));
-- end if;
-- end I_C;
--
-- ---------
-- -- I_F --
-- ---------
--
-- function I_F (Stream : not null access RST) return Float is
-- I : constant Precision := Single;
-- E_Size : Integer renames Fields (I).E_Size;
-- E_Bias : Integer renames Fields (I).E_Bias;
-- E_Last : Integer renames Fields (I).E_Last;
-- F_Size : Integer renames Fields (I).F_Size;
-- F_Mask : SE renames Fields (I).F_Mask;
-- E_Bytes : SEO renames Fields (I).E_Bytes;
-- F_Bytes : SEO renames Fields (I).F_Bytes;
--
-- E : Unsigned;
-- P : Boolean;
-- X : Float;
-- S : SEA (1 .. F_L);
-- L : SEO;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- end if;
--
-- -- Extract Fraction, Exponent and Sign.
-- X := Float (S (F_L + 1 - F_Bytes) and F_Mask);
-- for N in F_L + 2 - F_Bytes .. F_L loop
-- X := X * FB + Float (S (N));
-- end loop;
-- X := Scaling (X, -F_Size); -- Float
--
-- if BS <= S (1) then
-- P := False;
-- E := Unsigned (S (1) - BS);
-- else
-- P := True;
-- E := Unsigned (S (1));
-- end if;
--
-- for N in 2 .. E_Bytes loop
-- E := E * BB + Unsigned (S (N));
-- end loop;
-- E := Shift_Right (E, Integer (E_Bytes) * SU - E_Size - 1);
--
-- -- Look for special cases.
-- if X = 0.0 then
--
-- -- Signed zeros.
-- if E = 0 then
-- if P then
-- return Float'Copy_Sign (0.0, 1.0);
-- else
-- return Float'Copy_Sign (0.0, -1.0);
-- end if;
--
-- else
--
-- -- Signed infinites.
-- if E = Unsigned (E_Last) then
-- if P then
-- return Float'Safe_Last;
-- else
-- return Float'Safe_First;
-- end if;
-- end if;
-- end if;
-- end if;
--
-- -- Denormalized float.
-- if E = 0 then
--
-- X := Scaling (X, 1 - E_Bias); -- Flaot
--
-- -- Normalized float.
-- else
--
-- X := Scaling (X + 1.0, Integer (E) - E_Bias); -- Float
--
-- end if;
--
-- if P then
-- X := Float'Copy_Sign (X, 1.0);
-- else
-- X := Float'Copy_Sign (X, -1.0);
-- end if;
--
-- return X;
-- end I_F;
--
-- ---------
-- -- I_I --
-- ---------
--
-- function I_I (Stream : not null access RST) return Integer is
-- S : XDR_S_I;
-- L : SEO;
-- U : XDR_U := 0;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- elsif Optimize_Integers then
-- return XDR_S_I_To_Integer (S);
-- else
-- for N in S'Range loop
-- U := U * BB + XDR_U (S (N));
-- end loop;
--
-- -- Test sign and apply two complement's notation.
-- if S (1) < BL then
-- return Integer (U);
-- else
-- return Integer (-((XDR_U'Last xor U) + 1));
-- end if;
-- end if;
-- end I_I;
--
-- ----------
-- -- I_LF --
-- ----------
--
-- function I_LF (Stream : not null access RST) return Long_Float is
-- I : constant Precision := Double;
-- E_Size : Integer renames Fields (I).E_Size;
-- E_Bias : Integer renames Fields (I).E_Bias;
-- E_Last : Integer renames Fields (I).E_Last;
-- F_Size : Integer renames Fields (I).F_Size;
-- F_Mask : SE renames Fields (I).F_Mask;
-- E_Bytes : SEO renames Fields (I).E_Bytes;
-- F_Bytes : SEO renames Fields (I).F_Bytes;
--
-- E : Unsigned;
-- P : Boolean;
-- X : Long_Float;
-- S : SEA (1 .. LF_L);
-- L : SEO;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- end if;
--
-- -- Extract Fraction, Exponent and Sign.
-- X := Long_Float (S (LF_L + 1 - F_Bytes) and F_Mask);
-- for N in LF_L + 2 - F_Bytes .. LF_L loop
-- X := X * FB + Long_Float (S (N));
-- end loop;
-- X := Scaling (X, -F_Size); -- Long_Float
--
-- if BS <= S (1) then
-- P := False;
-- E := Unsigned (S (1) - BS);
-- else
-- P := True;
-- E := Unsigned (S (1));
-- end if;
--
-- for N in 2 .. E_Bytes loop
-- E := E * BB + Unsigned (S (N));
-- end loop;
-- E := Shift_Right (E, Integer (E_Bytes) * SU - E_Size - 1);
--
-- -- Look for special cases.
-- if X = 0.0 then
--
-- -- Signed zeros.
-- if E = 0 then
-- if P then
-- return Long_Float'Copy_Sign (0.0, 1.0);
-- else
-- return Long_Float'Copy_Sign (0.0, -1.0);
-- end if;
--
-- else
--
-- -- Signed infinites.
-- if E = Unsigned (E_Last) then
-- if P then
-- return Long_Float'Safe_Last;
-- else
-- return Long_Float'Safe_First;
-- end if;
-- end if;
-- end if;
-- end if;
--
-- -- Denormalized float.
-- if E = 0 then
--
-- X := Scaling (X, 1 - E_Bias); -- Long_Float
--
-- -- Normalized float.
-- else
--
-- X := Scaling (X + 1.0, Integer (E) - E_Bias); -- Long_Float
--
-- end if;
--
-- if P then
-- X := Long_Float'Copy_Sign (X, 1.0);
-- else
-- X := Long_Float'Copy_Sign (X, -1.0);
-- end if;
--
-- return X;
-- end I_LF;
--
-- ----------
-- -- I_LI --
-- ----------
--
-- function I_LI (Stream : not null access RST) return Long_Integer is
-- S : XDR_S_LI;
-- L : SEO;
-- U : Unsigned := 0;
-- X : Long_Unsigned := 0;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- elsif Optimize_Integers then
-- return Long_Integer (XDR_S_LI_To_Long_Long_Integer (S));
-- else
--
-- -- Compute using machine unsigned
-- -- rather than long_long_unsigned
--
-- for N in S'Range loop
-- U := U * BB + Unsigned (S (N));
--
-- -- We have filled an unsigned.
-- if N mod UB = 0 then
-- X := Shift_Left (X, US) + Long_Unsigned (U);
-- U := 0;
-- end if;
-- end loop;
--
-- -- Test sign and apply two complement's notation.
-- if S (1) < BL then
-- return Long_Integer (X);
-- else
-- return Long_Integer (-((Long_Unsigned'Last xor X) + 1));
-- end if;
--
-- end if;
-- end I_LI;
--
-- -----------
-- -- I_LLF --
-- -----------
--
-- function I_LLF (Stream : not null access RST) return Long_Long_Float is
-- I : constant Precision := Extended;
-- E_Size : Integer renames Fields (I).E_Size;
-- E_Bias : Integer renames Fields (I).E_Bias;
-- E_Last : Integer renames Fields (I).E_Last;
-- F_Size : Integer renames Fields (I).F_Size;
-- F_Mask : SE renames Fields (I).F_Mask;
-- E_Bytes : SEO renames Fields (I).E_Bytes;
-- F_Bytes : SEO renames Fields (I).F_Bytes;
--
-- E : Unsigned;
-- P : Boolean;
-- X : Long_Long_Float;
-- S : SEA (1 .. LLF_L);
-- L : SEO;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- end if;
--
-- -- Extract Fraction, Exponent and Sign.
-- X := Long_Long_Float (S (LLF_L + 1 - F_Bytes) and F_Mask);
-- for N in LLF_L + 2 - F_Bytes .. LLF_L loop
-- X := X * FB + Long_Long_Float (S (N));
-- end loop;
-- X := Scaling (X, -F_Size); -- Long_Long_Float
--
-- if BS <= S (1) then
-- P := False;
-- E := Unsigned (S (1) - BS);
-- else
-- P := True;
-- E := Unsigned (S (1));
-- end if;
--
-- for N in 2 .. E_Bytes loop
-- E := E * BB + Unsigned (S (N));
-- end loop;
-- E := Shift_Right (E, Integer (E_Bytes) * SU - E_Size - 1);
--
-- -- Look for special cases.
-- if X = 0.0 then
--
-- -- Signed zeros.
-- if E = 0 then
-- if P then
-- return Long_Long_Float'Copy_Sign (0.0, 1.0);
-- else
-- return Long_Long_Float'Copy_Sign (0.0, -1.0);
-- end if;
--
-- else
--
-- -- Signed infinites.
-- if E = Unsigned (E_Last) then
-- if P then
-- return Long_Long_Float'Safe_Last;
-- else
-- return Long_Long_Float'Safe_First;
-- end if;
-- end if;
-- end if;
-- end if;
--
-- -- Denormalized float.
-- if E = 0 then
--
-- X := Scaling (X, 1 - E_Bias); -- Long_Long_Float
--
-- -- Normalized float.
-- else
--
-- X := Scaling (X + 1.0, Integer (E) - E_Bias); -- Long_Long_Float
--
-- end if;
--
-- if P then
-- X := Long_Long_Float'Copy_Sign (X, 1.0);
-- else
-- X := Long_Long_Float'Copy_Sign (X, -1.0);
-- end if;
--
-- return X;
-- end I_LLF;
--
-- -----------
-- -- I_LLI --
-- -----------
--
-- function I_LLI (Stream : not null access RST) return Long_Long_Integer is
-- S : XDR_S_LLI;
-- L : SEO;
-- U : Unsigned := 0;
-- X : Long_Long_Unsigned := 0;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- elsif Optimize_Integers then
-- return XDR_S_LLI_To_Long_Long_Integer (S);
-- else
--
-- -- Compute using machine unsigned for computing
-- -- rather than long_long_unsigned.
--
-- for N in S'Range loop
-- U := U * BB + Unsigned (S (N));
--
-- -- We have filled an unsigned.
-- if N mod UB = 0 then
-- X := Shift_Left (X, US) + Long_Long_Unsigned (U);
-- U := 0;
-- end if;
-- end loop;
--
-- -- Test sign and apply two complement's notation.
-- if S (1) < BL then
-- return Long_Long_Integer (X);
-- else
-- return Long_Long_Integer (-((Long_Long_Unsigned'Last xor X) + 1));
-- end if;
-- end if;
-- end I_LLI;
--
-- -----------
-- -- I_LLU --
-- -----------
--
-- function I_LLU (Stream : not null access RST) return Long_Long_Unsigned is
-- S : XDR_S_LLU;
-- L : SEO;
-- U : Unsigned := 0;
-- X : Long_Long_Unsigned := 0;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- elsif Optimize_Integers then
-- return XDR_S_LLU_To_Long_Long_Unsigned (S);
-- else
--
-- -- Compute using machine unsigned
-- -- rather than long_long_unsigned.
--
-- for N in S'Range loop
-- U := U * BB + Unsigned (S (N));
--
-- -- We have filled an unsigned.
-- if N mod UB = 0 then
-- X := Shift_Left (X, US) + Long_Long_Unsigned (U);
-- U := 0;
-- end if;
-- end loop;
--
-- return X;
-- end if;
-- end I_LLU;
--
-- ----------
-- -- I_LU --
-- ----------
--
-- function I_LU (Stream : not null access RST) return Long_Unsigned is
-- S : XDR_S_LU;
-- L : SEO;
-- U : Unsigned := 0;
-- X : Long_Unsigned := 0;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- elsif Optimize_Integers then
-- return Long_Unsigned (XDR_S_LU_To_Long_Long_Unsigned (S));
-- else
--
-- -- Compute using machine unsigned
-- -- rather than long_unsigned.
--
-- for N in S'Range loop
-- U := U * BB + Unsigned (S (N));
--
-- -- We have filled an unsigned.
-- if N mod UB = 0 then
-- X := Shift_Left (X, US) + Long_Unsigned (U);
-- U := 0;
-- end if;
-- end loop;
--
-- return X;
-- end if;
-- end I_LU;
--
-- ----------
-- -- I_SF --
-- ----------
--
-- function I_SF (Stream : not null access RST) return Short_Float is
-- I : constant Precision := Single;
-- E_Size : Integer renames Fields (I).E_Size;
-- E_Bias : Integer renames Fields (I).E_Bias;
-- E_Last : Integer renames Fields (I).E_Last;
-- F_Size : Integer renames Fields (I).F_Size;
-- F_Mask : SE renames Fields (I).F_Mask;
-- E_Bytes : SEO renames Fields (I).E_Bytes;
-- F_Bytes : SEO renames Fields (I).F_Bytes;
--
-- E : Unsigned;
-- P : Boolean;
-- X : Short_Float;
-- S : SEA (1 .. SF_L);
-- L : SEO;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- end if;
--
-- -- Extract Fraction, Exponent and Sign.
-- X := Short_Float (S (SF_L + 1 - F_Bytes) and F_Mask);
-- for N in SF_L + 2 - F_Bytes .. SF_L loop
-- X := X * FB + Short_Float (S (N));
-- end loop;
-- X := Scaling (X, -F_Size); -- Short_Float
--
-- if BS <= S (1) then
-- P := False;
-- E := Unsigned (S (1) - BS);
-- else
-- P := True;
-- E := Unsigned (S (1));
-- end if;
--
-- for N in 2 .. E_Bytes loop
-- E := E * BB + Unsigned (S (N));
-- end loop;
-- E := Shift_Right (E, Integer (E_Bytes) * SU - E_Size - 1);
--
-- -- Look for special cases.
-- if X = 0.0 then
--
-- -- Signed zeros.
-- if E = 0 then
-- if P then
-- return Short_Float'Copy_Sign (0.0, 1.0);
-- else
-- return Short_Float'Copy_Sign (0.0, -1.0);
-- end if;
--
-- else
--
-- -- Signed infinites.
-- if E = Unsigned (E_Last) then
-- if P then
-- return Short_Float'Safe_Last;
-- else
-- return Short_Float'Safe_First;
-- end if;
-- end if;
-- end if;
-- end if;
--
-- -- Denormalized float.
-- if E = 0 then
--
-- X := Scaling (X, 1 - E_Bias); -- Short_Float
--
-- -- Normalized float.
-- else
--
-- X := Scaling (X + 1.0, Integer (E) - E_Bias); -- Short_Float
--
-- end if;
--
-- if P then
-- X := Short_Float'Copy_Sign (X, 1.0);
-- else
-- X := Short_Float'Copy_Sign (X, -1.0);
-- end if;
--
-- return X;
-- end I_SF;
--
-- ----------
-- -- I_SI --
-- ----------
--
-- function I_SI (Stream : not null access RST) return Short_Integer is
-- S : XDR_S_SI;
-- L : SEO;
-- U : XDR_SU := 0;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- elsif Optimize_Integers then
-- return XDR_S_SI_To_Short_Integer (S);
-- else
-- for N in S'Range loop
-- U := U * BB + XDR_SU (S (N));
-- end loop;
--
-- -- test sign and apply two complement's notation.
-- if S (1) < BL then
-- return Short_Integer (U);
-- else
-- return Short_Integer (-((XDR_SU'Last xor U) + 1));
-- end if;
-- end if;
-- end I_SI;
--
-- -----------
-- -- I_SSI --
-- -----------
--
-- function I_SSI (Stream : not null access RST) return Short_Short_Integer is
-- S : XDR_S_SSI;
-- L : SEO;
-- U : XDR_SSU;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- elsif Optimize_Integers then
-- return XDR_S_SSI_To_Short_Short_Integer (S);
-- else
-- -- for N in S'Range loop
-- -- U := U * BB + XDR_SSU (S (N));
-- -- end loop;
-- U := XDR_SSU (S (1));
--
-- -- Test sign and apply two complement's notation.
-- if S (1) < BL then
-- return Short_Short_Integer (U);
-- else
-- return Short_Short_Integer (-((XDR_SSU'Last xor U) + 1));
-- end if;
-- end if;
-- end I_SSI;
--
-- -----------
-- -- I_SSU --
-- -----------
--
-- function I_SSU (Stream : not null access RST) return Short_Short_Unsigned is
-- S : XDR_S_SSU;
-- L : SEO;
-- U : XDR_SSU := 0;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- else
-- -- for N in S'Range loop
-- -- U := U * BB + XDR_SSU (S (N));
-- -- end loop;
-- U := XDR_SSU (S (1));
--
-- return Short_Short_Unsigned (U);
-- end if;
-- end I_SSU;
--
-- ----------
-- -- I_SU --
-- ----------
--
-- function I_SU (Stream : not null access RST) return Short_Unsigned is
-- S : XDR_S_SU;
-- L : SEO;
-- U : XDR_SU := 0;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- elsif Optimize_Integers then
-- return XDR_S_SU_To_Short_Unsigned (S);
-- else
-- for N in S'Range loop
-- U := U * BB + XDR_SU (S (N));
-- end loop;
--
-- return Short_Unsigned (U);
-- end if;
-- end I_SU;
--
-- ---------
-- -- I_U --
-- ---------
--
-- function I_U (Stream : not null access RST) return Unsigned is
-- S : XDR_S_U;
-- L : SEO;
-- U : XDR_U := 0;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- elsif Optimize_Integers then
-- return XDR_S_U_To_Unsigned (S);
-- else
-- for N in S'Range loop
-- U := U * BB + XDR_U (S (N));
-- end loop;
--
-- return Unsigned (U);
-- end if;
-- end I_U;
--
-- ----------
-- -- I_WC --
-- ----------
--
-- function I_WC (Stream : not null access RST) return Wide_Character is
-- S : XDR_S_WC;
-- L : SEO;
-- U : XDR_WC := 0;
--
-- begin
-- Ada.Streams.Read (Stream.all, S, L);
--
-- if L /= S'Last then
-- raise Data_Error;
-- else
-- for N in S'Range loop
-- U := U * BB + XDR_WC (S (N));
-- end loop;
--
-- -- Use Ada requirements on Wide_Character representation clause.
-- return Wide_Character'Val (U);
-- end if;
-- end I_WC;
--
-- -------------
-- -- Scaling --
-- -------------
--
-- function Scaling
-- (X : Short_Float; A : Integer)
-- return Short_Float is
-- E : constant Integer := Short_Float'Exponent (X);
-- begin
-- return Short_Float'Compose (X, A + E);
-- end Scaling;
--
-- -------------
-- -- Scaling --
-- -------------
--
-- function Scaling
-- (X : Float; A : Integer)
-- return Float is
-- E : constant Integer := Float'Exponent (X);
-- begin
-- return Float'Compose (X, A + E);
-- end Scaling;
--
-- -------------
-- -- Scaling --
-- -------------
--
-- function Scaling
-- (X : Long_Float; A : Integer)
-- return Long_Float is
-- E : constant Integer := Long_Float'Exponent (X);
-- begin
-- return Long_Float'Compose (X, A + E);
-- end Scaling;
--
-- -------------
-- -- Scaling --
-- -------------
--
-- function Scaling
-- (X : Long_Long_Float; A : Integer)
-- return Long_Long_Float is
-- E : constant Integer := Long_Long_Float'Exponent (X);
-- begin
-- return Long_Long_Float'Compose (X, A + E);
-- end Scaling;
--
-- ----------
-- -- W_AD --
-- ----------
--
-- procedure W_AD (Stream : not null access RST; Item : Fat_Pointer) is
-- S : XDR_S_TM;
-- U : XDR_TM;
--
-- begin
-- U := XDR_TM (To_XDR_SA (Item.P1));
-- for N in reverse S'Range loop
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- Ada.Streams.Write (Stream.all, S);
--
-- U := XDR_TM (To_XDR_SA (Item.P2));
-- for N in reverse S'Range loop
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- Ada.Streams.Write (Stream.all, S);
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end W_AD;
--
-- ----------
-- -- W_AS --
-- ----------
--
-- procedure W_AS (Stream : not null access RST; Item : Thin_Pointer) is
-- S : XDR_S_TM;
-- U : XDR_TM := XDR_TM (To_XDR_SA (Item.P1));
--
-- begin
-- for N in reverse S'Range loop
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- Ada.Streams.Write (Stream.all, S);
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end W_AS;
--
-- ---------
-- -- W_B --
-- ---------
--
-- procedure W_B (Stream : not null access RST; Item : Boolean) is
-- begin
-- if Item then
-- W_SSU (Stream, 1);
-- else
-- W_SSU (Stream, 0);
-- end if;
-- end W_B;
--
-- ---------
-- -- W_C --
-- ---------
--
-- procedure W_C (Stream : not null access RST; Item : Character) is
-- S : XDR_S_C;
--
-- pragma Assert (C_L = 1);
--
-- begin
--
-- -- Use Ada requirements on Character representation clause.
-- S (1) := SE (Character'Pos (Item));
--
-- Ada.Streams.Write (Stream.all, S);
-- end W_C;
--
-- ---------
-- -- W_F --
-- ---------
--
-- procedure W_F (Stream : not null access RST; Item : Float) is
-- I : constant Precision := Single;
-- E_Size : Integer renames Fields (I).E_Size;
-- E_Bias : Integer renames Fields (I).E_Bias;
-- E_Last : Integer renames Fields (I).E_Last;
-- E_Bytes : SEO renames Fields (I).E_Bytes;
-- F_Bytes : SEO renames Fields (I).F_Bytes;
--
-- E : Integer := 0;
-- F : Float;
-- Q : Float;
-- N : SEO;
-- U : Unsigned;
-- P : Integer;
-- S : SEA (1 .. F_L) := (others => 0);
-- V : Float;
--
-- begin
-- if Item'Valid then
-- V := Item;
-- else
-- V := 0.0;
-- end if;
--
-- F := abs (V);
--
-- -- Signed zero.
-- if V = 0.0 then
--
-- U := 0;
--
-- else
--
-- -- Signed infinites.
-- if V <= Float'Safe_First or else
-- Float'Safe_Last <= V then
-- E := E_Last;
--
-- else
-- E := Float'Exponent (F);
--
-- -- Denormalized float.
-- if E <= 1 - E_Bias then
-- E := 0;
-- F := Scaling (F, E_Bias - 1); -- Float
--
-- -- Signed infinites.
-- else
-- if E_Last + E_Bias < E then
-- E := E_Last;
-- F := 0.0;
--
-- -- Normalized float.
-- else
-- E := E + E_Bias - 1;
-- F := Float'Fraction (F) * 2.0 - 1.0;
-- end if;
-- end if;
--
-- -- Copy fraction on the stream array.
-- -- Compute using machine unsigned rather
-- -- than larger unsigned.
-- -- N : Number of intermediate unsigned.
-- -- F : Float fraction.
-- -- P : Bits to shift left.
-- -- U : Intermediate unsigned.
--
-- N := (F_Bytes - 1) / UB;
-- P := Fields (I).F_Bits;
-- loop
-- F := Scaling (F, P); -- Float
-- Q := Float'Truncation (F);
-- U := Unsigned (Q);
-- for I in reverse F_L - UB * (N + 1) + 1 .. F_L - UB * N loop
-- S (I) := SE (U mod BB);
-- U := U / BB;
-- end loop;
-- exit when N = 0;
-- N := N - 1;
-- F := F - Q;
-- P := Unsigned'Size;
-- end loop;
-- end if;
--
-- -- Store the exponent at the proper bit position.
-- U := Shift_Left (Unsigned (E), Integer (E_Bytes) * SU - E_Size - 1);
--
-- -- We intentionnally don't store the first byte
-- -- as we have to add the sign bit.
-- for N in reverse 2 .. E_Bytes loop
-- S (N) := SE (U mod BB) + S (N);
-- U := U / BB;
-- end loop;
--
-- end if;
--
-- -- Store the sign and the first exponent byte.
-- if Float'Copy_Sign (1.0, V) = -1.0 then
-- S (1) := SE (U + BS);
-- else
-- S (1) := SE (U);
-- end if;
-- U := U / BB;
--
-- Ada.Streams.Write (Stream.all, S);
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end W_F;
--
-- ---------
-- -- W_I --
-- ---------
--
-- procedure W_I (Stream : not null access RST; Item : Integer) is
-- S : XDR_S_I;
-- U : XDR_U;
--
-- begin
-- if Optimize_Integers then
-- S := Integer_To_XDR_S_I (Item);
-- else
-- -- Test sign and apply two complement's notation.
-- if Item < 0 then
-- U := XDR_U'Last xor XDR_U (-(Item + 1));
-- else
-- U := XDR_U (Item);
-- end if;
--
-- for N in reverse S'Range loop
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end if;
--
-- Ada.Streams.Write (Stream.all, S);
-- end W_I;
--
-- ----------
-- -- W_LF --
-- ----------
--
-- procedure W_LF (Stream : not null access RST; Item : Long_Float) is
-- I : constant Precision := Double;
-- E_Size : Integer renames Fields (I).E_Size;
-- E_Bias : Integer renames Fields (I).E_Bias;
-- E_Last : Integer renames Fields (I).E_Last;
-- E_Bytes : SEO renames Fields (I).E_Bytes;
-- F_Bytes : SEO renames Fields (I).F_Bytes;
--
-- E : Integer := 0;
-- F : Long_Float;
-- Q : Long_Float;
-- N : SEO;
-- U : Unsigned;
-- P : Integer;
-- S : SEA (1 .. LF_L) := (others => 0);
-- V : Long_Float;
--
-- begin
-- if Item'Valid then
-- V := Item;
-- else
-- V := 0.0;
-- end if;
--
-- F := abs (V);
--
-- -- Signed zero.
-- if V = 0.0 then
--
-- U := 0;
--
-- else
--
-- -- Signed infinites.
-- if V <= Long_Float'Safe_First or else
-- Long_Float'Safe_Last <= V then
-- E := E_Last;
--
-- else
-- E := Long_Float'Exponent (F);
--
-- -- Denormalized float.
-- if E <= 1 - E_Bias then
-- E := 0;
-- F := Scaling (F, E_Bias - 1); -- Long_Float
--
-- -- Signed infinites.
-- else
-- if E_Last + E_Bias < E then
-- E := E_Last;
-- F := 0.0;
--
-- -- Normalized float.
-- else
-- E := E + E_Bias - 1;
-- F := Long_Float'Fraction (F) * 2.0 - 1.0;
-- end if;
-- end if;
--
-- -- Copy fraction on the stream array.
-- -- Compute using machine unsigned rather
-- -- than larger unsigned.
-- -- N : Number of intermediate unsigned.
-- -- F : Float fraction.
-- -- P : Bits to shift left.
-- -- U : Intermediate unsigned.
--
-- N := (F_Bytes - 1) / UB;
-- P := Fields (I).F_Bits;
-- loop
-- F := Scaling (F, P); -- Long_Float
-- Q := Long_Float'Truncation (F);
-- U := Unsigned (Q);
-- for I in reverse LF_L - UB * (N + 1) + 1 .. LF_L - UB * N loop
-- S (I) := SE (U mod BB);
-- U := U / BB;
-- end loop;
-- exit when N = 0;
-- N := N - 1;
-- F := F - Q;
-- P := Unsigned'Size;
-- end loop;
-- end if;
--
-- -- Store the exponent at the proper bit position.
-- U := Shift_Left (Unsigned (E), Integer (E_Bytes) * SU - E_Size - 1);
--
-- -- We intentionnally don't store the first byte
-- -- as we have to add the sign bit.
-- for N in reverse 2 .. E_Bytes loop
-- S (N) := SE (U mod BB) + S (N);
-- U := U / BB;
-- end loop;
--
-- end if;
--
-- -- Store the sign and the first exponent byte.
-- if Long_Float'Copy_Sign (1.0, V) = -1.0 then
-- S (1) := SE (U + BS);
-- else
-- S (1) := SE (U);
-- end if;
-- U := U / BB;
--
-- Ada.Streams.Write (Stream.all, S);
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end W_LF;
--
-- ----------
-- -- W_LI --
-- ----------
--
-- procedure W_LI (Stream : not null access RST; Item : Long_Integer) is
-- S : XDR_S_LI;
-- U : Unsigned;
-- X : Long_Unsigned;
--
-- begin
-- if Optimize_Integers then
-- S := Long_Long_Integer_To_XDR_S_LI (Long_Long_Integer (Item));
-- else
-- -- Test sign and apply two complement's notation.
-- if Item < 0 then
-- X := Long_Unsigned'Last xor Long_Unsigned (-(Item + 1));
-- else
-- X := Long_Unsigned (Item);
-- end if;
--
-- -- Compute using machine unsigned
-- -- rather than long_unsigned.
--
-- for N in reverse S'Range loop
--
-- -- We have filled an unsinged.
-- if (LU_L - N) mod UB = 0 then
-- U := Unsigned (X and UL);
-- X := Shift_Right (X, US);
-- end if;
--
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end if;
--
-- Ada.Streams.Write (Stream.all, S);
-- end W_LI;
--
-- -----------
-- -- W_LLF --
-- -----------
--
-- procedure W_LLF (Stream : not null access RST; Item : Long_Long_Float) is
-- I : constant Precision := Extended;
-- E_Size : Integer renames Fields (I).E_Size;
-- E_Bias : Integer renames Fields (I).E_Bias;
-- E_Last : Integer renames Fields (I).E_Last;
-- E_Bytes : SEO renames Fields (I).E_Bytes;
-- F_Bytes : SEO renames Fields (I).F_Bytes;
--
-- E : Integer := 0;
-- F : Long_Long_Float;
-- Q : Long_Long_Float;
-- N : SEO;
-- U : Unsigned;
-- P : Integer;
-- S : SEA (1 .. LLF_L) := (others => 0);
-- V : Long_Long_Float;
--
-- begin
-- if Item'Valid then
-- V := Item;
-- else
-- V := 0.0;
-- end if;
--
-- F := abs (V);
--
-- -- Signed zero.
-- if V = 0.0 then
--
-- U := 0;
--
-- else
--
-- -- Signed infinites.
-- if V <= Long_Long_Float'Safe_First or else
-- Long_Long_Float'Safe_Last <= V then
-- E := E_Last;
--
-- else
-- E := Long_Long_Float'Exponent (F);
--
-- -- Denormalized float.
-- if E <= 1 - E_Bias then
-- E := 0;
-- F := Scaling (F, E_Bias - 1); -- Long_Long_Float
--
-- -- Signed infinites.
-- else
-- if E_Last + E_Bias < E then
-- E := E_Last;
-- F := 0.0;
--
-- -- Normalized float.
-- else
-- E := E + E_Bias - 1;
-- F := Long_Long_Float'Fraction (F) * 2.0 - 1.0;
-- end if;
-- end if;
--
-- -- Copy fraction on the stream array.
-- -- Compute using machine unsigned rather
-- -- than larger unsigned.
-- -- N : Number of intermediate unsigned.
-- -- F : Float fraction.
-- -- P : Bits to shift left.
-- -- U : Intermediate unsigned.
--
-- N := (F_Bytes - 1) / UB;
-- P := Fields (I).F_Bits;
-- loop
-- F := Scaling (F, P); -- Long_Long_Float
-- Q := Long_Long_Float'Truncation (F);
-- U := Unsigned (Q);
-- for I in reverse LLF_L - UB * (N + 1) + 1 .. LLF_L - UB * N loop
-- S (I) := SE (U mod BB);
-- U := U / BB;
-- end loop;
-- exit when N = 0;
-- N := N - 1;
-- F := F - Q;
-- P := Unsigned'Size;
-- end loop;
-- end if;
--
-- -- Store the exponent at the proper bit position.
-- U := Shift_Left (Unsigned (E), Integer (E_Bytes) * SU - E_Size - 1);
--
-- -- We intentionnally don't store the first byte
-- -- as we have to add the sign bit.
-- for N in reverse 2 .. E_Bytes loop
-- S (N) := SE (U mod BB) + S (N);
-- U := U / BB;
-- end loop;
--
-- end if;
--
-- -- Store the sign and the first exponent byte.
-- if Long_Long_Float'Copy_Sign (1.0, V) = -1.0 then
-- S (1) := SE (U + BS);
-- else
-- S (1) := SE (U);
-- end if;
-- U := U / BB;
--
-- Ada.Streams.Write (Stream.all, S);
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end W_LLF;
--
-- -----------
-- -- W_LLI --
-- -----------
--
-- procedure W_LLI
-- (Stream : not null access RST; Item : Long_Long_Integer)
-- is
-- S : XDR_S_LLI;
-- U : Unsigned;
-- X : Long_Long_Unsigned;
--
-- begin
-- if Optimize_Integers then
-- S := Long_Long_Integer_To_XDR_S_LLI (Item);
-- else
-- -- Test sign and apply two complement's notation.
-- if Item < 0 then
-- X := Long_Long_Unsigned'Last xor Long_Long_Unsigned (-(Item + 1));
-- else
-- X := Long_Long_Unsigned (Item);
-- end if;
--
-- -- Compute using machine unsigned
-- -- rather than long_long_unsigned.
--
-- for N in reverse S'Range loop
--
-- -- We have filled an unsigned.
-- if (LLU_L - N) mod UB = 0 then
-- U := Unsigned (X and UL);
-- X := Shift_Right (X, US);
-- end if;
--
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end if;
--
-- Ada.Streams.Write (Stream.all, S);
-- end W_LLI;
--
-- -----------
-- -- W_LLU --
-- -----------
--
-- procedure W_LLU
-- (Stream : not null access RST; Item : Long_Long_Unsigned)
-- is
-- S : XDR_S_LLU;
-- U : Unsigned;
-- X : Long_Long_Unsigned := Item;
--
-- begin
-- if Optimize_Integers then
-- S := Long_Long_Unsigned_To_XDR_S_LLU (Item);
-- else
-- -- Compute using machine unsigned
-- -- rather than long_long_unsigned.
--
-- for N in reverse S'Range loop
--
-- -- We have filled an unsigned.
-- if (LLU_L - N) mod UB = 0 then
-- U := Unsigned (X and UL);
-- X := Shift_Right (X, US);
-- end if;
--
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end if;
--
-- Ada.Streams.Write (Stream.all, S);
-- end W_LLU;
--
-- ----------
-- -- W_LU --
-- ----------
--
-- procedure W_LU (Stream : not null access RST; Item : Long_Unsigned) is
-- S : XDR_S_LU;
-- U : Unsigned;
-- X : Long_Unsigned := Item;
--
-- begin
-- if Optimize_Integers then
-- S := Long_Long_Unsigned_To_XDR_S_LU (Long_Long_Unsigned (Item));
-- else
-- -- Compute using machine unsigned
-- -- rather than long_unsigned.
--
-- for N in reverse S'Range loop
--
-- -- We have filled an unsigned.
-- if (LU_L - N) mod UB = 0 then
-- U := Unsigned (X and UL);
-- X := Shift_Right (X, US);
-- end if;
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end if;
--
-- Ada.Streams.Write (Stream.all, S);
-- end W_LU;
--
-- ----------
-- -- W_SF --
-- ----------
--
-- procedure W_SF (Stream : not null access RST; Item : Short_Float) is
-- I : constant Precision := Single;
-- E_Size : Integer renames Fields (I).E_Size;
-- E_Bias : Integer renames Fields (I).E_Bias;
-- E_Last : Integer renames Fields (I).E_Last;
-- E_Bytes : SEO renames Fields (I).E_Bytes;
-- F_Bytes : SEO renames Fields (I).F_Bytes;
--
-- E : Integer := 0;
-- F : Short_Float;
-- Q : Short_Float;
-- N : SEO;
-- U : Unsigned := 0;
-- P : Integer;
-- S : SEA (1 .. SF_L) := (others => 0);
-- V : Short_Float;
--
-- begin
-- if Item'Valid then
-- V := Item;
-- else
-- V := 0.0;
-- end if;
--
-- F := abs (V);
--
-- -- Signed zero.
-- if V = 0.0 then
--
-- U := 0;
--
-- else
--
-- -- Signed infinites.
-- if V <= Short_Float'Safe_First or else
-- Short_Float'Safe_Last <= V then
-- E := E_Last;
--
-- else
-- E := Short_Float'Exponent (F);
--
-- -- Denormalized float.
-- if E <= 1 - E_Bias then
-- E := 0;
-- F := Scaling (F, E_Bias - 1); -- Short_Float
--
-- -- Signed infinites.
-- else
-- if E_Last + E_Bias < E then
-- E := E_Last;
-- F := 0.0;
--
-- -- Normalized float.
-- else
-- E := E + E_Bias - 1;
-- F := Short_Float'Fraction (F) * 2.0 - 1.0;
-- end if;
-- end if;
--
-- -- Copy fraction on the stream array.
-- -- Compute using machine unsigned rather
-- -- than larger unsigned.
-- -- N : Number of intermediate unsigned.
-- -- F : Float fraction.
-- -- P : Bits to shift left.
-- -- U : Intermediate unsigned.
--
-- N := (F_Bytes - 1) / UB;
-- P := Fields (I).F_Bits;
-- loop
-- F := Scaling (F, P); -- Short_Float
-- Q := Short_Float'Truncation (F);
-- U := Unsigned (Q);
-- for I in reverse SF_L - UB * (N + 1) + 1 .. SF_L - UB * N loop
-- S (I) := SE (U mod BB);
-- U := U / BB;
-- end loop;
-- exit when N = 0;
-- N := N - 1;
-- F := F - Q;
-- P := Unsigned'Size;
-- end loop;
-- end if;
--
-- -- Store the exponent at the proper bit position.
-- U := Shift_Left (Unsigned (E), Integer (E_Bytes) * SU - E_Size - 1);
--
-- -- We intentionnally don't store the first byte
-- -- as we have to add the sign bit.
-- for N in reverse 2 .. E_Bytes loop
-- S (N) := SE (U mod BB) + S (N);
-- U := U / BB;
-- end loop;
--
-- end if;
--
-- -- Store the sign and the first exponent byte.
-- if Short_Float'Copy_Sign (1.0, V) = -1.0 then
-- S (1) := SE (U + BS);
-- else
-- S (1) := SE (U);
-- end if;
-- U := U / BB;
--
-- Ada.Streams.Write (Stream.all, S);
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end W_SF;
--
-- ----------
-- -- W_SI --
-- ----------
--
-- procedure W_SI (Stream : not null access RST; Item : Short_Integer) is
-- S : XDR_S_SI;
-- U : XDR_SU;
--
-- begin
-- if Optimize_Integers then
-- S := Short_Integer_To_XDR_S_SI (Item);
-- else
-- -- Test sign and apply two complement's notation.
-- if Item < 0 then
-- U := XDR_SU'Last xor XDR_SU (-(Item + 1));
-- else
-- U := XDR_SU (Item);
-- end if;
--
-- for N in reverse S'Range loop
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end if;
--
-- Ada.Streams.Write (Stream.all, S);
-- end W_SI;
--
-- -----------
-- -- W_SSI --
-- -----------
--
-- procedure W_SSI
-- (Stream : not null access RST; Item : Short_Short_Integer)
-- is
-- S : XDR_S_SSI;
-- U : XDR_SSU;
--
-- begin
-- if Optimize_Integers then
-- S := Short_Short_Integer_To_XDR_S_SSI (Item);
-- else
-- -- Test sign and apply two complement's notation.
-- if Item < 0 then
-- U := XDR_SSU'Last xor XDR_SSU (-(Item + 1));
-- else
-- U := XDR_SSU (Item);
-- end if;
--
-- S (1) := SE (U);
-- end if;
--
-- Ada.Streams.Write (Stream.all, S);
-- end W_SSI;
--
-- -----------
-- -- W_SSU --
-- -----------
--
-- procedure W_SSU
-- (Stream : not null access RST; Item : Short_Short_Unsigned)
-- is
-- S : XDR_S_SSU;
-- U : constant XDR_SSU := XDR_SSU (Item);
--
-- begin
-- -- for N in reverse S'Range loop
-- -- S (N) := SE (U mod BB);
-- -- U := U / BB;
-- -- end loop;
-- S (1) := SE (U);
--
-- Ada.Streams.Write (Stream.all, S);
--
-- -- if U /= 0 then
-- -- raise Data_Error;
-- -- end if;
-- end W_SSU;
--
-- ----------
-- -- W_SU --
-- ----------
--
-- procedure W_SU (Stream : not null access RST; Item : Short_Unsigned) is
-- S : XDR_S_SU;
-- U : XDR_SU := XDR_SU (Item);
--
-- begin
-- if Optimize_Integers then
-- S := Short_Unsigned_To_XDR_S_SU (Item);
-- else
-- for N in reverse S'Range loop
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end if;
--
-- Ada.Streams.Write (Stream.all, S);
-- end W_SU;
--
-- ---------
-- -- W_U --
-- ---------
--
-- procedure W_U (Stream : not null access RST; Item : Unsigned) is
-- S : XDR_S_U;
-- U : XDR_U := XDR_U (Item);
--
-- begin
-- if Optimize_Integers then
-- S := Unsigned_To_XDR_S_U (Item);
-- else
-- for N in reverse S'Range loop
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end if;
--
-- Ada.Streams.Write (Stream.all, S);
-- end W_U;
--
-- ----------
-- -- W_WC --
-- ----------
--
-- procedure W_WC (Stream : not null access RST; Item : Wide_Character) is
-- S : XDR_S_WC;
-- U : XDR_WC;
--
-- begin
--
-- -- Use Ada requirements on Wide_Character representation clause.
-- U := XDR_WC (Wide_Character'Pos (Item));
--
-- for N in reverse S'Range loop
-- S (N) := SE (U mod BB);
-- U := U / BB;
-- end loop;
--
-- Ada.Streams.Write (Stream.all, S);
--
-- if U /= 0 then
-- raise Data_Error;
-- end if;
-- end W_WC;
--
--end System.Stream_Attributes;
diff --git a/gnat-glade/patches/patch-Garlic_select.c b/gnat-glade/patches/patch-Garlic_select.c
deleted file mode 100644
index e5a1d97824..0000000000
--- a/gnat-glade/patches/patch-Garlic_select.c
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD: patch-Garlic_select.c,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix link time version warning on NetBSD
-
---- /dev/null
-+++ Garlic/select.c
-@@ -0,0 +1,7 @@
-+#include <sys/select.h>
-+int
-+__netbsd_select(int nfds, fd_set * restrict readfds, fd_set * restrict writefds,
-+ fd_set * restrict exceptfds, struct timeval * restrict timeout)
-+{
-+ return select(nfds, readfds, writefds, exceptfds, timeout);
-+}
diff --git a/gnat-glade/patches/patch-configure b/gnat-glade/patches/patch-configure
deleted file mode 100644
index 04f1575403..0000000000
--- a/gnat-glade/patches/patch-configure
+++ /dev/null
@@ -1,89 +0,0 @@
-$NetBSD: patch-configure,v 1.0 2024/12/05 15:00:00 dkazankov Exp $
-
-Fix version
-Add var for configuration helper
-Fix GNAT version control
-Add NetBSD support
-Fix link time version warning
-Add configuration helper
-
---- configure.orig 2007-11-28 21:27:21.000000000 +0200
-+++ configure
-@@ -1669,7 +1669,7 @@
-
- # Define the identity of the package.
- PACKAGE=GLADE
-- VERSION=dev
-+ VERSION=6.0.1
-
-
- cat >>confdefs.h <<_ACEOF
-@@ -3372,7 +3372,6 @@
- fi
-
-
--
- #
- # Check for maintainer mode
- #
-@@ -3521,8 +3520,14 @@
-
- echo "$as_me:$LINENO: checking if the Ada compiler is recent enough" >&5
- echo $ECHO_N "checking if the Ada compiler is recent enough... $ECHO_C" >&6
--am_gnatls_date=`$GNATLS -v | $SED -ne 's/^GNATLS .*(\(........\).*$/\1/p'`
--if test "20041007" -le "$am_gnatls_date"; then
-+am_gnatls_date=`$GNATLS -v | $SED -ne 's/^GNATLS .*(\(........\)).*$/\1/p'`
-+if test -z "$am_gnatls_date"; then
-+ echo "$as_me:$LINENO: result: yes" >&5
-+ echo "${ECHO_T}yes" >&6
-+elif test "release" -le "$am_gnatls_date"; then
-+ echo "$as_me:$LINENO: result: yes" >&5
-+ echo "${ECHO_T}yes" >&6
-+elif test "20041007" -le "$am_gnatls_date"; then
- echo "$as_me:$LINENO: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- else
-@@ -3559,6 +3564,7 @@
- *-linux*) PLATFORM_SPECIFIC=l;;
- *-*-solaris2*) PLATFORM_SPECIFIC=s;;
- sparc-sun-sunos4*) PLATFORM_SPECIFIC=u;;
-+ *-*netbsd) PLATFORM_SPECIFIC=n;;
- *) ;;
- esac
-
-@@ -3574,6 +3580,7 @@
- g) PSNAME="SGI";;
- h) PSNAME="HP";;
- b) PSNAME="AIX";;
-+ n) PSNAME="NetBSD";;
- e) PSNAME="Empty";;
- *) PSNAME="Unknown target (${target})";;
- esac
-@@ -3596,8 +3603,8 @@
-
- PROCESS_BLOCKING_IO="no";
- case ${PLATFORM_SPECIFIC} in
-- s|l)
-- ${GNATMAKE} -q -o ./isthrbio ${srcdir}/Garlic/isthrbio.adb>/dev/null 2>&1;
-+ s|l|n)
-+ ${GNATMAKE} -q -P${srcdir}/Garlic/isthrbio.gpr >/dev/null 2>&1;
- if ./isthrbio; then
- PROCESS_BLOCKING_IO="yes";
- fi;
-@@ -4054,7 +4061,7 @@
- #
- # Output
- #
-- ac_config_files="$ac_config_files Makefile Dist/Makefile Dist/xe_defs-defaults.ads Garlic/Makefile Garlic/s-gaplsp.ads Examples/check-config Examples/Makefile Examples/Bank/Makefile Examples/Eratho/Makefile Examples/Eratho/absolute/Makefile Examples/Eratho/cycle/Makefile Examples/Eratho/dynamic/Makefile Examples/Eratho/spiral/Makefile Examples/Filters/Makefile Examples/Messages/Makefile Examples/MultiPro/Makefile Examples/DSMStorage/Makefile Examples/MultiSto/Makefile Examples/Reconnection/Makefile Examples/LightBank/Makefile"
-+ac_config_files="$ac_config_files Makefile Dist/Makefile Dist/xe_defs-defaults.ads Dist/gnatdist-config Garlic/Makefile Garlic/s-gaplsp.ads Examples/check-config Examples/Makefile Examples/Bank/Makefile Examples/Eratho/Makefile Examples/Eratho/absolute/Makefile Examples/Eratho/cycle/Makefile Examples/Eratho/dynamic/Makefile Examples/Eratho/spiral/Makefile Examples/Filters/Makefile Examples/Messages/Makefile Examples/MultiPro/Makefile Examples/DSMStorage/Makefile Examples/MultiSto/Makefile Examples/Reconnection/Makefile Examples/LightBank/Makefile"
- cat >confcache <<\_ACEOF
- # This file is a shell script that caches the results of configure
- # tests run on this system so they can be shared between configure
-@@ -4633,6 +4640,7 @@
- "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- "Dist/Makefile" ) CONFIG_FILES="$CONFIG_FILES Dist/Makefile" ;;
- "Dist/xe_defs-defaults.ads" ) CONFIG_FILES="$CONFIG_FILES Dist/xe_defs-defaults.ads" ;;
-+ "Dist/gnatdist-config" ) CONFIG_FILES="$CONFIG_FILES Dist/gnatdist-config" ;;
- "Garlic/Makefile" ) CONFIG_FILES="$CONFIG_FILES Garlic/Makefile" ;;
- "Garlic/s-gaplsp.ads" ) CONFIG_FILES="$CONFIG_FILES Garlic/s-gaplsp.ads" ;;
- "Examples/check-config" ) CONFIG_FILES="$CONFIG_FILES Examples/check-config" ;;
Home |
Main Index |
Thread Index |
Old Index