summaryrefslogtreecommitdiff
path: root/dev-ada
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ada')
-rw-r--r--dev-ada/asis/Manifest7
-rw-r--r--dev-ada/asis/asis-2016.ebuild40
-rw-r--r--dev-ada/asis/asis-2017.ebuild40
-rw-r--r--dev-ada/asis/files/asis-2016-gentoo.patch36
-rw-r--r--dev-ada/asis/files/asis-2017-gentoo.patch50
-rw-r--r--dev-ada/asis/metadata.xml19
-rw-r--r--dev-ada/aunit/Manifest7
-rw-r--r--dev-ada/aunit/aunit-2016.ebuild40
-rw-r--r--dev-ada/aunit/aunit-2017.ebuild40
-rw-r--r--dev-ada/aunit/files/aunit-2016-gentoo.patch11
-rw-r--r--dev-ada/aunit/files/aunit-2017-gentoo.patch11
-rw-r--r--dev-ada/aunit/metadata.xml15
-rw-r--r--dev-ada/aws/Manifest7
-rw-r--r--dev-ada/aws/aws-2016.ebuild49
-rw-r--r--dev-ada/aws/aws-2017.ebuild50
-rw-r--r--dev-ada/aws/files/aws-2016-gentoo.patch36
-rw-r--r--dev-ada/aws/files/aws-2017-gentoo.patch36
-rw-r--r--dev-ada/aws/metadata.xml20
-rw-r--r--dev-ada/gnat_util/Manifest7
-rw-r--r--dev-ada/gnat_util/files/gnat_util-2016-gentoo.patch100
-rw-r--r--dev-ada/gnat_util/files/gnat_util-2017-gentoo.patch80
-rw-r--r--dev-ada/gnat_util/gnat_util-2016.ebuild55
-rw-r--r--dev-ada/gnat_util/gnat_util-2017.ebuild55
-rw-r--r--dev-ada/gnat_util/metadata.xml24
-rw-r--r--dev-ada/gnatcoll/Manifest7
-rw-r--r--dev-ada/gnatcoll/files/gnatcoll-2016-gentoo.patch333
-rw-r--r--dev-ada/gnatcoll/files/gnatcoll-2017-gentoo.patch224
-rw-r--r--dev-ada/gnatcoll/gnatcoll-2016.ebuild127
-rw-r--r--dev-ada/gnatcoll/gnatcoll-2017.ebuild133
-rw-r--r--dev-ada/gnatcoll/metadata.xml32
-rw-r--r--dev-ada/gnatmem/Manifest7
-rw-r--r--dev-ada/gnatmem/files/gnatmem-2016-gentoo.patch89
-rw-r--r--dev-ada/gnatmem/files/gnatmem-2017-gentoo.patch89
-rw-r--r--dev-ada/gnatmem/gnatmem-2016.ebuild39
-rw-r--r--dev-ada/gnatmem/gnatmem-2017.ebuild39
-rw-r--r--dev-ada/gnatmem/metadata.xml27
-rw-r--r--dev-ada/gprbuild/Manifest11
-rw-r--r--dev-ada/gprbuild/files/gprbuild-2016-gentoo.patch235
-rw-r--r--dev-ada/gprbuild/files/gprbuild-2016.xml94
-rw-r--r--dev-ada/gprbuild/files/gprbuild-2017-gentoo.patch42
-rw-r--r--dev-ada/gprbuild/files/gprbuild-2017.xml85
-rw-r--r--dev-ada/gprbuild/gprbuild-2016.ebuild100
-rw-r--r--dev-ada/gprbuild/gprbuild-2017.ebuild108
-rw-r--r--dev-ada/gprbuild/metadata.xml25
-rw-r--r--dev-ada/gps-bin/Manifest3
-rw-r--r--dev-ada/gps-bin/gps-bin-2016.ebuild76
-rw-r--r--dev-ada/gps-bin/metadata.xml13
-rw-r--r--dev-ada/gtkada/Manifest7
-rw-r--r--dev-ada/gtkada/files/gtkada-2016-gentoo.patch93
-rw-r--r--dev-ada/gtkada/files/gtkada-2017-gentoo.patch63
-rw-r--r--dev-ada/gtkada/gtkada-2016.ebuild65
-rw-r--r--dev-ada/gtkada/gtkada-2017.ebuild65
-rw-r--r--dev-ada/gtkada/metadata.xml17
-rw-r--r--dev-ada/metadata.xml40
-rw-r--r--dev-ada/xmlada/Manifest6
-rw-r--r--dev-ada/xmlada/files/xmlada-2016-gentoo.patch19
-rw-r--r--dev-ada/xmlada/metadata.xml27
-rw-r--r--dev-ada/xmlada/xmlada-2016.ebuild52
-rw-r--r--dev-ada/xmlada/xmlada-2017.ebuild57
59 files changed, 3284 insertions, 0 deletions
diff --git a/dev-ada/asis/Manifest b/dev-ada/asis/Manifest
new file mode 100644
index 000000000000..8d5f342f4193
--- /dev/null
+++ b/dev-ada/asis/Manifest
@@ -0,0 +1,7 @@
+AUX asis-2016-gentoo.patch 1535 SHA256 fd567a8968c1b07113cb2825118a08c26b5c2fe58a8ba9c0074765e2e92d4998 SHA512 7b78b1dc4824242c10f409ab4874c11f8dfcc977d31e1bd63e96915e3f8477efa737e35b6d3c1076f920155b89f51572528e1d309fcf450bdc3353ec32dd6bc2 WHIRLPOOL 57ba73f1908fbb882c87107d8663a04e151871d847d716711f740294b2335ad5d821e76463ce4afbccebf4dc088d47b559e923ed43d2dca2492b433dca24d17a
+AUX asis-2017-gentoo.patch 2030 SHA256 8c457f35942ebe3df8ae9304e9564b4856182a46be8853b33527502b9f674ff9 SHA512 9697264392827254fc23993979ddb1cef8276e8f699f776f85a4ce09fcaf2e87b68e4187622fc16c809d71e7e360626c72f5d5f7be33c72a9544996cbf1321f9 WHIRLPOOL c235b2df12d9d6251a16cd7aa1a9d54545e634b04486db52513d0e18922b739b3baaa26836028ae752369f4785cc915bba954fd4f0ee67bf389422e553c93f3b
+DIST asis-gpl-2016-src.tar.gz 5240554 SHA256 3e36e0835e291dafe6dd2246748ed12b449d33044c32209d3af012c83064c38e SHA512 439195d4cb5d58328dcc8c815cb6a32c5f8ed1d6581246dfa5dcca7c212ffad38dd63df25e490c4ac628eaf8c8e6d286f8ea036b7f39499704565b60c1bba8ee WHIRLPOOL 12ded099fdf510be75d67795f990b0044ba701595c4a2c858c46cc5dc97d5c380bd9d51c654a18183a77f9cbc1a9bb7a5dea344da471e6a136154da9d7cb558d
+DIST asis-gpl-2017-src.tar.gz 5909758 SHA256 ca84ab53418930e79c54566b2377253d5d557e5a2d6e9d2be00aef0c1d921627 SHA512 dee6b8e0851a4b3181d50256697865f7a6a613eef7b59e43cb1a0b066e794d927db9f60df33f7e1af343d41801a6b66feb1f7a963523b2442c85ca506d7e112f WHIRLPOOL 5c179e1b4682fee465e4ac3a32afcd97fd7e88f32488a1f9ad45dadfe14ed5bedd662bae0c8728e9e812adff1ff5d66814f9edc34420b6b81d6de4ec1468e73d
+EBUILD asis-2016.ebuild 994 SHA256 d245a19aa42bc87b92035965d11e41cfd886b5de51577d77a3ae9b7589395d5e SHA512 4210dd53f33676688f62bbfcd16f6acfeec959c1b0d334e445eb354dfd7a9e61002d6409af7ddd0ffd05733c27e5e58c409b84201a5f03caa021d49f28bb41ff WHIRLPOOL afba70cf219247b78d87276f81bfb54e7b9de238038cab4a6adb3a4edff4382e8aaab0a63911f869cee005c35b4c6416bdf7224f5aabe8606dfd90b33f295f27
+EBUILD asis-2017.ebuild 988 SHA256 7d6190644e4f283890e63697ca98b8a9d94f0807b8dab5a06c8013d8c88c6044 SHA512 c72f803b90378348042484400d256291237131b24087a28bda0bd53febfd1d16f02b918820b5b9839e5750718695f5f5eef049b28951c84fcbf9e7c614b8d2ae WHIRLPOOL 655524781e764189d73eb8ee5f03c078cb95ae5415d1aa62a95d868fe8faa94146570364ed26b7653756b3c74c50d9f014144711a66c8e49d1c3c8f3f8b105aa
+MISC metadata.xml 691 SHA256 efd60b58e5581b07b2751113284553bada94cfa7ef8115255b32e211531f5ddf SHA512 ec079b9cfceb47d66966db417e9e6666ca56284413cd9aae3881a488837d9928560d499a4f33fe9b4143281d81dcbdf3a129543c9e7669d4a0da6386d644c1c6 WHIRLPOOL 26694a935aa815603de061e44031742706d0658e0c4e4a57d7e96a0ad698fb1e8a8f13f00fe86cee6cab5b79242e458684ed5930d2347736669c3dd4e2c15c9c
diff --git a/dev-ada/asis/asis-2016.ebuild b/dev-ada/asis/asis-2016.ebuild
new file mode 100644
index 000000000000..68c09bcff36e
--- /dev/null
+++ b/dev-ada/asis/asis-2016.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multiprocessing
+MYP=${PN}-gpl-${PV}-src
+
+DESCRIPTION="To develop tools for Ada software"
+HOMEPAGE="http://libre.adacore.com/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/57399029c7a447658e0aff71
+ -> ${MYP}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017"
+
+DEPEND="dev-ada/gnat_util[gnat_2016=,gnat_2017=]
+ dev-ada/gnatcoll[gnat_2016=,gnat_2017=,projects,shared]
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]
+ dev-ada/xmlada[gnat_2016=,gnat_2017=]
+ gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )"
+RDEPEND="${RDEPEND}"
+REQUIRED_USE="^^ ( gnat_2016 gnat_2017 )"
+
+S="${WORKDIR}"/${MYP}
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_compile() {
+ emake PROCESSORS=$(makeopts_jobs)
+ emake tools PROCESSORS=$(makeopts_jobs)
+}
+
+src_install() {
+ emake prefix="${D}"/usr install
+ emake prefix="${D}"/usr install-tools
+}
diff --git a/dev-ada/asis/asis-2017.ebuild b/dev-ada/asis/asis-2017.ebuild
new file mode 100644
index 000000000000..bb826f23d567
--- /dev/null
+++ b/dev-ada/asis/asis-2017.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multiprocessing
+MYP=${PN}-gpl-${PV}-src
+
+DESCRIPTION="To develop tools for Ada software"
+HOMEPAGE="http://libre.adacore.com/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/591c45e2c7a447af2deecffb
+ -> ${MYP}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017"
+
+DEPEND="dev-ada/gnat_util[gnat_2016=,gnat_2017=]
+ dev-ada/gnatcoll[gnat_2016=,gnat_2017=,projects,shared]
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]
+ dev-ada/xmlada[gnat_2016=,gnat_2017=]
+ gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )"
+RDEPEND="${RDEPEND}"
+REQUIRED_USE="!gnat_2016 gnat_2017"
+
+S="${WORKDIR}"/${MYP}
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_compile() {
+ emake PROCESSORS=$(makeopts_jobs)
+ emake tools PROCESSORS=$(makeopts_jobs)
+}
+
+src_install() {
+ emake prefix="${D}"/usr install
+ emake prefix="${D}"/usr install-tools
+}
diff --git a/dev-ada/asis/files/asis-2016-gentoo.patch b/dev-ada/asis/files/asis-2016-gentoo.patch
new file mode 100644
index 000000000000..c5ffda3628b9
--- /dev/null
+++ b/dev-ada/asis/files/asis-2016-gentoo.patch
@@ -0,0 +1,36 @@
+--- asis-gpl-2015-src/Makefile.old 2017-01-03 13:59:38.106788092 +0000
++++ asis-gpl-2015-src/Makefile 2017-01-03 14:01:43.735605615 +0000
+@@ -10,15 +10,18 @@
+ # ==================================================== build
+
+ all:
+- $(GPRBUILD) -p -j0 -XBLD=$(BLD) -XOPSYS=$(OPSYS) \
+- $(GPRBUILD_FLAGS) -XASIS_COMPONENTS=$(COMPS) build_asis.gpr
++ $(GPRBUILD) -p -j$(PROCESSORS) -XBLD=$(BLD) -XOPSYS=$(OPSYS) \
++ $(GPRBUILD_FLAGS) -XASIS_COMPONENTS=$(COMPS) build_asis.gpr \
++ -cargs $(ADAFLAGS)
+
+ tools: setup
+- $(GPRBUILD) -p -j0 -XBLD=$(BLD) -XOPSYS=$(OPSYS) \
+- $(GPRBUILD_FLAGS) -XASIS_COMPONENTS=tools build_asis.gpr
++ $(GPRBUILD) -p -j$(PROCESSORS) -XBLD=$(BLD) -XOPSYS=$(OPSYS) \
++ $(GPRBUILD_FLAGS) -XASIS_COMPONENTS=tools build_asis.gpr \
++ -cargs $(ADAFLAGS)
+
+ setup:
+- $(GPRBUILD) -p -XBLD=$(BLD) tools/tool_utils/generate_factory.gpr
++ $(GPRBUILD) -p -j$(PROCESSORS) -XBLD=$(BLD) tools/tool_utils/generate_factory.gpr \
++ -cargs $(ADAFLAGS)
+ rm -rf tools/tool_utils/ada_trees-factory.ads tools/tool_utils/ada_trees-factory.adb
+ rm -rf tools/gnat2xml/ada_trees-factory.ads tools/gnat2xml/ada_trees-factory.adb
+ cd tools/tool_utils ; ./ada_trees-generate_factory$(exe_ext)
+--- asis-gpl-2016-src/Makefile.stub.old 2017-04-06 21:16:41.802376709 +0200
++++ asis-gpl-2016-src/Makefile.stub 2017-04-06 21:17:01.627023825 +0200
+@@ -3,7 +3,6 @@
+
+ # Where Asis library should be installed
+ # Default is into current GNAT directory
+-INSTALL_DIR = $(dir $(shell which gnatls))..
+ prefix=$(INSTALL_DIR)
+
+ # System commands
diff --git a/dev-ada/asis/files/asis-2017-gentoo.patch b/dev-ada/asis/files/asis-2017-gentoo.patch
new file mode 100644
index 000000000000..3c3ab73618fc
--- /dev/null
+++ b/dev-ada/asis/files/asis-2017-gentoo.patch
@@ -0,0 +1,50 @@
+--- asis-gpl-2015-src/Makefile.old 2017-01-03 13:59:38.106788092 +0000
++++ asis-gpl-2015-src/Makefile 2017-01-03 14:01:43.735605615 +0000
+@@ -10,18 +10,21 @@
+
+ .PHONY: all
+ all: setup-snames
+- $(GPRBUILD) -p -j0 -XBLD=$(BLD) -XOPSYS=$(OPSYS) -XGNSA=$(GNSA) \
+- $(GPRBUILD_FLAGS) -XASIS_COMPONENTS=$(COMPS) build_asis.gpr
++ $(GPRBUILD) -p -j$(PROCESSORS) -XBLD=$(BLD) -XOPSYS=$(OPSYS) -XGNSA=$(GNSA) \
++ $(GPRBUILD_FLAGS) -XASIS_COMPONENTS=$(COMPS) build_asis.gpr \
++ -cargs $(ADAFLAGS)
+
+ .PHONY: tools
+ tools: setup
+- $(GPRBUILD) -p -j0 -XBLD=$(BLD) -XOPSYS=$(OPSYS) \
+- $(GPRBUILD_FLAGS) -XASIS_COMPONENTS=tools build_asis.gpr
++ $(GPRBUILD) -p -j$(PROCESSORS) -XBLD=$(BLD) -XOPSYS=$(OPSYS) \
++ $(GPRBUILD_FLAGS) -XASIS_COMPONENTS=tools build_asis.gpr \
++ -cargs $(ADAFLAGS)
+
+ .PHONY: toolsdev
+ toolsdev: setup
+- $(GPRBUILD) -p -j0 -XBLD=$(BLD) -XOPSYS=$(OPSYS) \
+- $(GPRBUILD_FLAGS) -XASIS_COMPONENTS=toolsdev build_asis.gpr
++ $(GPRBUILD) -p -j$(PROCESSORS) -XBLD=$(BLD) -XOPSYS=$(OPSYS) \
++ $(GPRBUILD_FLAGS) -XASIS_COMPONENTS=toolsdev build_asis.gpr \
++ -cargs $(ADAFLAGS)
+
+ # The setup target re-generates 4 generated Ada files. We avoid changing the
+ # timestamps of unchanged files, to avoid triggering recompilation of
+@@ -34,7 +37,8 @@
+
+ .PHONY: setup-snames
+ setup-snames: gnat/snames.ads-tmpl gnat/snames.adb-tmpl gnat/xutil.ads gnat/xutil.adb
+- $(GPRBUILD) -p -XBLD=$(BLD) $(GPRBUILD_FLAGS) gnat/snames.gpr
++ $(GPRBUILD) -p -XBLD=$(BLD) $(GPRBUILD_FLAGS) gnat/snames.gpr \
++ -cargs $(ADAFLAGS)
+ cd gnat ; ./xsnamest$(exe_ext)
+ if cmp --quiet gnat/snames.ns gnat/snames.ads; then \
+ echo "snames.ads unchanged"; \
+@@ -52,7 +56,8 @@
+ .PHONY: setup-factory
+ setup-factory:
+ $(GPRBUILD) -p -XBLD=$(BLD) $(GPRBUILD_FLAGS) \
+- tools/tool_utils/generate_factory.gpr
++ tools/tool_utils/generate_factory.gpr \
++ -cargs $(ADAFLAGS)
+ cd tools/tool_utils ; \
+ ./ada_trees-generate_factory$(exe_ext)
+ if cmp --quiet tools/tool_utils/ada_trees-factory.ns tools/tool_utils/ada_trees-factory.ads; then \
diff --git a/dev-ada/asis/metadata.xml b/dev-ada/asis/metadata.xml
new file mode 100644
index 000000000000..f4734803a247
--- /dev/null
+++ b/dev-ada/asis/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <use>
+ <flag name="gnat_2016">Compile with dev-lang/gnat-gpl-2016</flag>
+ <flag name="gnat_2017">Compile with dev-lang/gnat-gpl-2017</flag>
+
+ </use>
+ <longdescription lang="en">
+ ASIS is a library that gives applications access to the complete
+ syntactic and semantic structure of an Ada compilation unit. This
+ library is typically used by tools that need to perform some sort of
+ static analysis on an Ada program.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-ada/aunit/Manifest b/dev-ada/aunit/Manifest
new file mode 100644
index 000000000000..f789e394ad04
--- /dev/null
+++ b/dev-ada/aunit/Manifest
@@ -0,0 +1,7 @@
+AUX aunit-2016-gentoo.patch 374 SHA256 22d44c42e9a6df441483a1cde87624b25971e2ce257d15fd068af7d9d6466381 SHA512 0ea27e0d8783788c83a3916071ea0dd5361f21a4fc67727b735986dfc624c9f1bd6aa471229c389f5453001577ca1eec0ecdd0865952a0aa5fe1453787dac33b WHIRLPOOL 43808668390fd8b87b2713f7ee84b2f5b1c8a8fda489a7eb77c9c3557af16dfe2629284a0aaa3de72711bfee31d0a91d5a4623452a1036995eab241ab70941cd
+AUX aunit-2017-gentoo.patch 374 SHA256 22d44c42e9a6df441483a1cde87624b25971e2ce257d15fd068af7d9d6466381 SHA512 0ea27e0d8783788c83a3916071ea0dd5361f21a4fc67727b735986dfc624c9f1bd6aa471229c389f5453001577ca1eec0ecdd0865952a0aa5fe1453787dac33b WHIRLPOOL 43808668390fd8b87b2713f7ee84b2f5b1c8a8fda489a7eb77c9c3557af16dfe2629284a0aaa3de72711bfee31d0a91d5a4623452a1036995eab241ab70941cd
+DIST aunit-gpl-2016-src.tar.gz 393489 SHA256 ba1b86b853daef98190a7dfc9858aedcd4cc85219b310356c02348f32dcc77cf SHA512 94721f04ff721bbb572ede3fe7b8b61f9682ecaec8076eec3a0a27a41d9bab86248921671b7e63656f473f8d4ddb3a44ecdfb19f479073cf2ae378d62dc68190 WHIRLPOOL fae3579197384972872966b16022e0248d23d207a55af63c6e9daf94ba152a403fa2164a7d9b81fb3ba1214583f2b5506acd87708ffb16f7ef4c66d1f14a3e13
+DIST aunit-gpl-2017-src.tar.gz 638311 SHA256 c9a574d5a4a16648b1a9294b0d18deb571841b3bbd3ea3cd3ede4a6896faa0f7 SHA512 8aad7acc472af127d7c140fb80bd8f1e26866daba2817a436851704bb9048c8347284c5cf2dd05c0c65590cf05ff01d035c3612a698d19607347e961174b3ab4 WHIRLPOOL 4639eb970ca297121b28272d589d3d436c11496d33539a2e336f307888ca63ee96f4d386de870ee3dabeaee1d40e5535b7a78c834c0ab74af4d235f5aae1079c
+EBUILD aunit-2016.ebuild 1021 SHA256 a46e66697bb0350ea452320c5c9b425a18a7563cce7a75410ec47e6cb0e71fe2 SHA512 c930ef72a7242c8bb13db0028337983bc0f17bc48637566003dd04e3459520b1ab164eb0bcea661313dd0ad54a646d54d94179387a48dcecb3c8373ea7c057d9 WHIRLPOOL f488f18bd1c002517e47180b1f74f13b6511dd5ab2a33331044bad03624bdc56a350893f7c4aababa64713c6fbe69dd7e4d2e57755b63146120f72e0f811f735
+EBUILD aunit-2017.ebuild 987 SHA256 167dcf110e6b38d7d30df36b5935b9b86695c17167e7d233d8dbbe855b746d3a SHA512 a81c6a9c4e4a245afd74e9d34f75a8f0889ef660539dc9fe37be33c0b530c96b6d5dc7d1bb864cb88c88974dd4fa720274de918c9d1bd394a3d04d203f7ea0bd WHIRLPOOL b6d5ea2d56106ff16dfd6ef68935997f46f190bfc80d5b644e73154e5b69b91f9ce12a7412ce28f91eefff16b084b7bf9d297110604bdd7b112887cd2cc04fec
+MISC metadata.xml 936 SHA256 a0c5328d39150b15c06d031f3a6263f250a8c2a5b785b7a417da31f62dfcafe4 SHA512 663611206da2bf967532848d961a0f2ea04780cfb0c97d5f62c6693b4af83417b7fa32fa76d3520c1184f8d3239f0f88ed503e778444e901393c3c798b6848cd WHIRLPOOL 357adfaee2f77b03d81039783d71798a4048ab8f8297854912ab91b9faf6dd70f2a5985740018f540ff72579244dd5c062c8a431ff1b09b85184c421f9ed8048
diff --git a/dev-ada/aunit/aunit-2016.ebuild b/dev-ada/aunit/aunit-2016.ebuild
new file mode 100644
index 000000000000..931da83606ac
--- /dev/null
+++ b/dev-ada/aunit/aunit-2016.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multiprocessing
+
+MYP=${PN}-gpl-${PV}-src
+
+DESCRIPTION="Ada unit testing framework"
+HOMEPAGE="http://libre.adacore.com/tools/aunit/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/573990c6c7a447658d00e1cb -> ${MYP}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017"
+
+RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )"
+DEPEND="${RDEPEND}
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+
+S="${WORKDIR}"/${MYP}
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_compile() {
+ emake GPRBUILD="gprbuild -j$(makeopts_jobs)"
+}
+
+src_install() {
+ emake INSTALL="${D}"usr install
+ einstalldocs
+ mv "${D}"usr/share/doc/${PN}/* "${D}"usr/share/doc/${PF}/ || die
+ rmdir "${D}"usr/share/doc/${PN} || die
+ mv "${D}"usr/share/examples/${PN} "${D}"usr/share/doc/${PF}/examples || die
+ rmdir "${D}"usr/share/examples || die
+ dodoc features-* known-problems-*
+}
diff --git a/dev-ada/aunit/aunit-2017.ebuild b/dev-ada/aunit/aunit-2017.ebuild
new file mode 100644
index 000000000000..5ddb2617c4e7
--- /dev/null
+++ b/dev-ada/aunit/aunit-2017.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multiprocessing
+
+MYP=${PN}-gpl-${PV}-src
+
+DESCRIPTION="Ada unit testing framework"
+HOMEPAGE="http://libre.adacore.com/tools/aunit/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/591c45e2c7a447af2deed000
+ -> ${MYP}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017"
+
+RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )"
+DEPEND="${RDEPEND}
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+
+S="${WORKDIR}"/${MYP}
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_compile() {
+ emake GPRBUILD="gprbuild -j$(makeopts_jobs)"
+}
+
+src_install() {
+ emake INSTALL="${D}"usr install
+ einstalldocs
+ mv "${D}"usr/share/doc/${PN}/* "${D}"usr/share/doc/${PF}/ || die
+ rmdir "${D}"usr/share/doc/${PN} || die
+ mv "${D}"usr/share/examples/${PN} "${D}"usr/share/doc/${PF}/examples || die
+ rmdir "${D}"usr/share/examples || die
+}
diff --git a/dev-ada/aunit/files/aunit-2016-gentoo.patch b/dev-ada/aunit/files/aunit-2016-gentoo.patch
new file mode 100644
index 000000000000..eeace666b45e
--- /dev/null
+++ b/dev-ada/aunit/files/aunit-2016-gentoo.patch
@@ -0,0 +1,11 @@
+--- aunit-3.8.0w-src/Makefile.old 2017-01-04 18:13:29.634899987 +0100
++++ aunit-3.8.0w-src/Makefile 2017-01-04 18:15:59.013219503 +0100
+@@ -29,7 +29,7 @@
+ .PHONY: all clean targets install_clean install
+
+ all:
+- $(GPRBUILD) -p $(GPROPTS) lib/gnat/aunit.gpr
++ $(GPRBUILD) -p $(GPROPTS) lib/gnat/aunit.gpr -cargs $(ADAFLAGS)
+
+ clean-lib:
+ $(RM) -fr lib/aunit lib/aunit-obj
diff --git a/dev-ada/aunit/files/aunit-2017-gentoo.patch b/dev-ada/aunit/files/aunit-2017-gentoo.patch
new file mode 100644
index 000000000000..eeace666b45e
--- /dev/null
+++ b/dev-ada/aunit/files/aunit-2017-gentoo.patch
@@ -0,0 +1,11 @@
+--- aunit-3.8.0w-src/Makefile.old 2017-01-04 18:13:29.634899987 +0100
++++ aunit-3.8.0w-src/Makefile 2017-01-04 18:15:59.013219503 +0100
+@@ -29,7 +29,7 @@
+ .PHONY: all clean targets install_clean install
+
+ all:
+- $(GPRBUILD) -p $(GPROPTS) lib/gnat/aunit.gpr
++ $(GPRBUILD) -p $(GPROPTS) lib/gnat/aunit.gpr -cargs $(ADAFLAGS)
+
+ clean-lib:
+ $(RM) -fr lib/aunit lib/aunit-obj
diff --git a/dev-ada/aunit/metadata.xml b/dev-ada/aunit/metadata.xml
new file mode 100644
index 000000000000..8e0def15bbcb
--- /dev/null
+++ b/dev-ada/aunit/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <use>
+ <flag name="gnat_2016">Compile with dev-lang/gnat-gpl-2016</flag>
+ <flag name="gnat_2017">Compile with dev-lang/gnat-gpl-2017</flag>
+ </use>
+ <longdescription lang="en">
+ AUnit is a set of Ada packages based on the xUnit family of unit test frameworks. It’s intended as a developer’s tool to facilitate confident writing and evolution of Ada software. It is purposely lightweight, as one of its main goals is to make it easy to develop and run unit tests, rather than to generate artifacts for process management. The framework supports easy composition of sets of unit tests to provide flexibility in determining what tests to run for a given purpose.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-ada/aws/Manifest b/dev-ada/aws/Manifest
new file mode 100644
index 000000000000..63e76bc63a06
--- /dev/null
+++ b/dev-ada/aws/Manifest
@@ -0,0 +1,7 @@
+AUX aws-2016-gentoo.patch 1510 SHA256 df5fa816a111175aabf77632daca0089b159d47b14278a0db2b1499cf5a0912b SHA512 29f121d22f1dd21a1228a96c15ba28a61da1e07bdb57ae5f0ba2babb2c8d0b38bab21edeb44fb8480fcb4c9bdf55b1f20f7d6b3668943a1814a5564dd168c92d WHIRLPOOL 0526ba4602560245ae6c1e3dc839101d5b27b6ab8c3d4871e33c4dc841101901917f251ee01c24300b79aa24e2ad746ea3f8a5608fe5c968ccef2de295156965
+AUX aws-2017-gentoo.patch 1510 SHA256 df5fa816a111175aabf77632daca0089b159d47b14278a0db2b1499cf5a0912b SHA512 29f121d22f1dd21a1228a96c15ba28a61da1e07bdb57ae5f0ba2babb2c8d0b38bab21edeb44fb8480fcb4c9bdf55b1f20f7d6b3668943a1814a5564dd168c92d WHIRLPOOL 0526ba4602560245ae6c1e3dc839101d5b27b6ab8c3d4871e33c4dc841101901917f251ee01c24300b79aa24e2ad746ea3f8a5608fe5c968ccef2de295156965
+DIST aws-gpl-2016-src.tar.gz 15054562 SHA256 310d7a79fba1cf622f6c8d53103226422c788126198911efef09e372d559db32 SHA512 296825e4683bbf4701a42d52cb0b58ebed8d3715972d0c5f83765987d1e96ab4d6d22835c37c043f49ae106fedf5d61ef22cbe348384c2de388519637e26df0b WHIRLPOOL 48428b840149064f96a1656074cfb2f308abdc546ece87d939ab2f95f05e668caafbe9969ab99770909739fe8a4013337cd1ea8b56a7ed06291114c5d812c62f
+DIST aws-gpl-2017-src.tar.gz 12298806 SHA256 f7b2720f31c21c46bf4bca79e0921a4e796e6a4108be1bada1775eb2ba7fd935 SHA512 a7ddd332cbf3e699fdb7f734fba7dfabed2a92745bbc7fbd4ae5ea5da6a5e98c5434d7a9a3d7071d57b8294cc5c0c2a3802ded607e9402a1cf5e5bed8f5a8c35 WHIRLPOOL 41081537d1d017bb19d665c6b134b54b56d4841a98f713a94367c6e57915185f8ed7fe983ef641d79ce0cece09211fbd34220df81953dfee393d70824c5728d0
+EBUILD aws-2016.ebuild 1062 SHA256 d5d67451d4d45faa012d8ee510c3696e407a0718352e88e4e4be7f238eccbfe3 SHA512 fe58623d1d1f86c84d9f79f9c2fd5a98b50637296b0898db633a74726628100a4b5fd6d12019f04718e8b26d1d8593a5ea41c2c1dc15fccf02b078b65e670d2b WHIRLPOOL e583137a45f960af64cca66cff134f44d0f1b7161587320c44b2c75f458d482fdc0a861e2766f003e6fd18ed47682fbfed51d828ae72007bce7f61a8adb43cd8
+EBUILD aws-2017.ebuild 1063 SHA256 c4565496cb859311d4493a7862d12097c1237a8b64b0a4c684e0d3202be71e42 SHA512 eaf0879a32e26dbc58abd5a8a36991a616a14222c3dd6f46661d72f5bed26ead08010a8071c868afd783ce41cc666583e8ceb2c0050e1d341cc7f5179274be7a WHIRLPOOL 9614693f548f7a30be9a65a5b6182391502907a37553819c33dfdc8b15469469b5b7a9ba6bc1a2536897519f54370a541289c4147bbb2948eeebee653c35d8d0
+MISC metadata.xml 842 SHA256 69b8eb5bef931f533a223288a7b68eb9d8667d2b9fd6727ccb3d9f562372631c SHA512 3d9c37dea2923f66efbb4a66ca226ac7874b216683cf54adacef577593d267f3ffd61799626b347c0d78e87a1165bc4518586e7852e38c02fb335847667a48a4 WHIRLPOOL b41a890d8d1b12f918a7c46bb4b4edd126170ca2d0d04dd053b483f53fe41f411b920da6ed7553dde128abf60abcdd680ab66e0730b24ecb3ba80cdfbb6fbdd4
diff --git a/dev-ada/aws/aws-2016.ebuild b/dev-ada/aws/aws-2016.ebuild
new file mode 100644
index 000000000000..90711d2b8ec5
--- /dev/null
+++ b/dev-ada/aws/aws-2016.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multiprocessing
+
+MY_P=${PN}-gpl-${PV}-src
+
+DESCRIPTION="A complete Web development framework"
+HOMEPAGE="http://libre.adacore.com/tools/aws/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/57399112c7a447658d00e1cd -> ${MY_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017"
+
+RDEPEND="dev-ada/xmlada[gnat_2016=,gnat_2017=,static]"
+DEPEND="${RDEPEND}
+ dev-ada/gnat_util[gnat_2016=,gnat_2017=,static]
+ dev-ada/asis[gnat_2016=,gnat_2017=]
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+REQUIRED_USE="^^ ( gnat_2016 gnat_2017 )"
+
+S="${WORKDIR}"/${MY_P}
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_configure() {
+ emake -j1 setup prefix=/usr
+}
+
+src_compile() {
+ if use gnat_2016; then
+ GCC_PV=4.9.4
+ else
+ GCC_PV=6.3.0
+ fi
+ emake GCC=${CHOST}-gcc-${GCC_PV} \
+ PROCESSORS=$(makeopts_jobs) \
+ DEBUG=true \
+ GPRBUILD="/usr/bin/gprbuild -v"
+}
+
+src_install() {
+ emake DESTDIR="${D}" DEBUG=true install
+ einstalldocs
+}
diff --git a/dev-ada/aws/aws-2017.ebuild b/dev-ada/aws/aws-2017.ebuild
new file mode 100644
index 000000000000..c6f097ad1dce
--- /dev/null
+++ b/dev-ada/aws/aws-2017.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multiprocessing
+
+MY_P=${PN}-gpl-${PV}-src
+
+DESCRIPTION="A complete Web development framework"
+HOMEPAGE="http://libre.adacore.com/tools/aws/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/591c45e2c7a447af2deed001
+ -> ${MY_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017"
+
+RDEPEND="dev-ada/xmlada[gnat_2016=,gnat_2017=,static]"
+DEPEND="${RDEPEND}
+ dev-ada/gnat_util[gnat_2016=,gnat_2017=,static]
+ dev-ada/asis[gnat_2016=,gnat_2017=]
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+REQUIRED_USE="^^ ( gnat_2016 gnat_2017 )"
+
+S="${WORKDIR}"/${MY_P}
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_configure() {
+ emake -j1 setup prefix=/usr
+}
+
+src_compile() {
+ if use gnat_2016; then
+ GCC_PV=4.9.4
+ else
+ GCC_PV=6.3.0
+ fi
+ emake GCC=${CHOST}-gcc-${GCC_PV} \
+ PROCESSORS=$(makeopts_jobs) \
+ DEBUG=true \
+ GPRBUILD="/usr/bin/gprbuild -v"
+}
+
+src_install() {
+ emake DESTDIR="${D}" DEBUG=true install
+ einstalldocs
+}
diff --git a/dev-ada/aws/files/aws-2016-gentoo.patch b/dev-ada/aws/files/aws-2016-gentoo.patch
new file mode 100644
index 000000000000..b33073afa443
--- /dev/null
+++ b/dev-ada/aws/files/aws-2016-gentoo.patch
@@ -0,0 +1,36 @@
+--- aws-gpl-2016-src/shared.gpr.old 2017-01-30 20:00:39.022743691 +0100
++++ aws-gpl-2016-src/shared.gpr 2017-01-30 20:01:20.524985069 +0100
+@@ -130,6 +130,7 @@
+ package Compiler is
+
+ for Driver ("Makefile") use "";
++ for Driver ("C") use External ("GCC", "gcc");
+
+ case Build is
+ when "Debug" =>
+@@ -151,11 +151,11 @@
+ end case;
+
+ for Switches ("aws-attachments.adb")
+- use Common_Options & Debug_Options & ("-gnatVn");
++ use Common_Options & Debug_Options & ("-gnatVn") & Adaflags;
+ for Switches ("aws-session.adb")
+- use Common_Options & Debug_Options & ("-gnatVn");
++ use Common_Options & Debug_Options & ("-gnatVn") & Adaflags;
+ for Switches ("templates_parser.adb")
+- use Common_Options & Debug_Options & ("-gnatVn");
++ use Common_Options & Debug_Options & ("-gnatVn") & Adaflags;
+ -- Disable validity check on this unit to work-around N728-028
+
+ -- ADAFLAGS and CFLAGS should come last so that command line
+--- aws-gpl-2016-src/include/include.gpr.old 2017-02-17 22:09:14.361695926 +0100
++++ aws-gpl-2016-src/include/include.gpr 2017-02-17 22:11:36.497215517 +0100
+@@ -54,7 +54,7 @@
+
+ when "Release" =>
+ for Default_Switches ("Ada") use
+- ("-gnat2012", "-O2", "-gnatws", "-gnatn") & Shared.Global_Options;
++ ("-gnat2012", "-O2", "-gnatws", "-gnatn") & Shared.Adaflags & Shared.Global_Options;
+ end case;
+
+ case Shared.S_Target is
diff --git a/dev-ada/aws/files/aws-2017-gentoo.patch b/dev-ada/aws/files/aws-2017-gentoo.patch
new file mode 100644
index 000000000000..b33073afa443
--- /dev/null
+++ b/dev-ada/aws/files/aws-2017-gentoo.patch
@@ -0,0 +1,36 @@
+--- aws-gpl-2016-src/shared.gpr.old 2017-01-30 20:00:39.022743691 +0100
++++ aws-gpl-2016-src/shared.gpr 2017-01-30 20:01:20.524985069 +0100
+@@ -130,6 +130,7 @@
+ package Compiler is
+
+ for Driver ("Makefile") use "";
++ for Driver ("C") use External ("GCC", "gcc");
+
+ case Build is
+ when "Debug" =>
+@@ -151,11 +151,11 @@
+ end case;
+
+ for Switches ("aws-attachments.adb")
+- use Common_Options & Debug_Options & ("-gnatVn");
++ use Common_Options & Debug_Options & ("-gnatVn") & Adaflags;
+ for Switches ("aws-session.adb")
+- use Common_Options & Debug_Options & ("-gnatVn");
++ use Common_Options & Debug_Options & ("-gnatVn") & Adaflags;
+ for Switches ("templates_parser.adb")
+- use Common_Options & Debug_Options & ("-gnatVn");
++ use Common_Options & Debug_Options & ("-gnatVn") & Adaflags;
+ -- Disable validity check on this unit to work-around N728-028
+
+ -- ADAFLAGS and CFLAGS should come last so that command line
+--- aws-gpl-2016-src/include/include.gpr.old 2017-02-17 22:09:14.361695926 +0100
++++ aws-gpl-2016-src/include/include.gpr 2017-02-17 22:11:36.497215517 +0100
+@@ -54,7 +54,7 @@
+
+ when "Release" =>
+ for Default_Switches ("Ada") use
+- ("-gnat2012", "-O2", "-gnatws", "-gnatn") & Shared.Global_Options;
++ ("-gnat2012", "-O2", "-gnatws", "-gnatn") & Shared.Adaflags & Shared.Global_Options;
+ end case;
+
+ case Shared.S_Target is
diff --git a/dev-ada/aws/metadata.xml b/dev-ada/aws/metadata.xml
new file mode 100644
index 000000000000..7662c41c5d1c
--- /dev/null
+++ b/dev-ada/aws/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <use>
+ <flag name="gnat_2016">Compile with dev-lang/gnat-gpl-2016</flag>
+ <flag name="gnat_2017">Compile with dev-lang/gnat-gpl-2017</flag>
+ </use>
+ <longdescription lang="en">
+ AWS is a complete framework to develop Web based applications. The main part
+ of the framework is the embedded Web server. This small yet powerful Web
+ server can be embedded into your application so your application will be
+ able to talk with a standard Web browser like Microsoft Internet Explorer or
+ Firefox for example. Around this Web server a lot of services have been
+ developed.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-ada/gnat_util/Manifest b/dev-ada/gnat_util/Manifest
new file mode 100644
index 000000000000..3028bce2d91e
--- /dev/null
+++ b/dev-ada/gnat_util/Manifest
@@ -0,0 +1,7 @@
+AUX gnat_util-2016-gentoo.patch 3197 SHA256 ec877b5d0e1a752ec24d7388781203469447e905a9d30f952b5ac8c3dae98f6e SHA512 599d3c2cb1d22513c9ef2200d100a80b55d2efe8d8bf7b541cfb845da2a40d1a8d24234208b92a3fcfeba305cb0157b01576d16129e3979e8869ab4b098bb9f7 WHIRLPOOL 6578cefe98a8a78d24fef87536e9097bed70b19a64f42fdd37bd6050a471ad02db4a07b502658bb53e54f46fd299af95f3413743e11378082888c58d99976263
+AUX gnat_util-2017-gentoo.patch 2840 SHA256 7ffe6b6539da328a659dc85ece5a5722dece27f5fd9b456db72be1616be27a0d SHA512 6fb7c9fd3ac282fd0571aec55acfcafc5a72e8814dd9c158751f36f6bab29d682da9b6e89eca774f424831c2985776b07f6749c97bff4ee1baa423a9ed142846 WHIRLPOOL 51dabc47a2f98c0baaf87323e2d5140df02e944386521045d3dea0275582fe72f32ef0eb1fe23b99ce6e2014d42ca013e20af48ffb3f21092c49d05eefe65dce
+DIST gnat_util-gpl-2016-src.tar.gz 1126296 SHA256 8e76d7eb1cbae1d3040b9e4196ab07d6e0dd5d4eeb3f5e0fbeb267b1a3470af5 SHA512 1edb67e762637e9e951356c7be402d7b2b903a05abdc93eadaf5ba98bc7bfa936b4fa2a2ae7eb986200dec755020e53d312d42769512fba2e290099f6030bbd0 WHIRLPOOL c2218ba14f669aa2412be4e0a42b1ffb475c720e608e73bca3bbe42dcaefe2dc4410c4632e0e900a8c72ed92c3ec670bd35935783f43c1eb0eb2cdb7afc4f63e
+DIST gnat_util-gpl-2017-src.tar.gz 868496 SHA256 46910f4248ebbb6cae5e576cae766768d376fdbf459c55f7efca9ea10d4ea8ad SHA512 d5e48c6fafc870f36094d2dfd5f45f2d5b5729c97596afff7475b7838c1c7c029ef57395ca1011ee74d8a4195597ea1f502732e654a02561a7abc72c8a7d3a6a WHIRLPOOL 9db8569a56e5ca61ba9cc76276838bb82b07bd1cf9357540d2716136df85a85144eb4f93c2d8336a67b071cf07dfb7b3c0197a0010442b9d1b65471c057cd0b9
+EBUILD gnat_util-2016.ebuild 1307 SHA256 57d1b143a0b8f8d1f2043f760094619a159817bcf6a8576d92ba5eeaae520fea SHA512 14beff76e4dfa5322e86d26be022d0111db1bcace518752d33d19f06ac42085d462a24172a36d387f0060ddce4fb7f623d973ad925f781500696bba93eba8f5d WHIRLPOOL 8e01ff461cc8eff12d696548d8504362548a4c9920b77bf6c81e2ede04c74c0669e54c4da258a74b6a590096ae5a1ad7ec8d572c83b32f62aafb2765db5d1244
+EBUILD gnat_util-2017.ebuild 1301 SHA256 5d59ce0411e132ebb87b0322350046a42ee78aa05b90c7e1d0c12343f73c19fd SHA512 9e7da34419a6aa471ad45f7faea79bdb264d33ae0d7a2809777beaf897bb476f67f5f1c1679de9cb95895628cc46f874ff76b7c14bc7615c9b0368587878075b WHIRLPOOL 794ab6edaf2bccf17d0602b0fcbfe8c871c99d3af1d0047545f83e02535a4a5d746d6980ee098362b6b66376a7f38824d331c05b901993464250db0adf0f4892
+MISC metadata.xml 1149 SHA256 7caeeaad6896e163a48738d2968dcaab33d9d0c516851ccf83e130faedf2e597 SHA512 d433f228882662e5b896d0ade071d502cee9c260fad096fe2556a5e7c4eb9ce82287edfb0240f96716538160d5403db010712633248bd6c53097951bb899313c WHIRLPOOL cbd35e8cc60e27d4a155072dd2e2e24e12b17839cd65e0ef637d3b0fe7d9365bddbe52fe3c791730c56471bc1422459f172139d4802f7f05ca0885b7800a4ffb
diff --git a/dev-ada/gnat_util/files/gnat_util-2016-gentoo.patch b/dev-ada/gnat_util/files/gnat_util-2016-gentoo.patch
new file mode 100644
index 000000000000..7559894c6d00
--- /dev/null
+++ b/dev-ada/gnat_util/files/gnat_util-2016-gentoo.patch
@@ -0,0 +1,100 @@
+--- gnat_util-gpl-2014-src/Makefile.old 2016-12-28 09:56:49.378950217 +0100
++++ gnat_util-gpl-2014-src/Makefile 2016-12-28 09:57:12.301562519 +0100
+@@ -19,17 +19,26 @@
+ MKDIR=mkdir -p
+ SRC=gen_src
+
+-.PHONY: all
+-all: generate_sources
++build-static:
+ ${BUILDER} -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+- -XLIBRARY_TYPE=static -Pgnat_util -p
++ -XLIBRARY_TYPE=static -Pgnat_util -p \
++ -cargs:ada $(ADAFLAGS) -cargs:C $(CFLAGS)
+-ifeq ($(ENABLE_SHARED), yes)
++build-shared:
+ ${BUILDER} -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+- -XLIBRARY_TYPE=relocatable -Pgnat_util -p
++ -XLIBRARY_TYPE=relocatable -Pgnat_util -p \
++ -cargs:ada $(ADAFLAGS) -cargs:C $(CFLAGS)
+-endif
+-ifeq ($(ENABLE_PIC), yes)
++build-static-pic:
+ ${BUILDER} -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+- -XLIBRARY_TYPE=static-pic -Pgnat_util -p
++ -XLIBRARY_TYPE=static-pic -Pgnat_util -p \
++ -cargs:ada $(ADAFLAGS) -cargs:C $(CFLAGS)
++.PHONY: all
++all: generate_sources
++ $(MAKE) build-static
++ifeq ($(ENABLE_SHARED), yes)
++ $(MAKE) build-shared
++endif
++ifeq ($(ENABLE_PIC), yes)
++ $(MAKE) build-static-pic
+ endif
+
+ .PHONY: generate_sources
+@@ -48,7 +48,7 @@
+ $(MKDIR) $(SRC)
+ $(CP) xsnamest.adb xutil.* snames.adb-tmpl snames.ads-tmpl snames.h-tmpl $(SRC)
+ (cd $(SRC) && \
+- gnatmake -gnatf -gnatwae -gnatyg -gnatyS xsnamest && \
++ ${GNATMAKE} -gnatf -gnatwae -gnatyg -gnatyS xsnamest && \
+ ./xsnamest && mv snames.ns snames.ads && mv snames.nb snames.adb)
+ $(CP) sdefault_adb.gnat_util $(SRC)/sdefault.adb
+
+@@ -58,8 +58,7 @@
+ --prefix=$(prefix) --project-subdir=lib/gnat gnat_util
+ endif
+
+-.PHONY: install
+-install: install-clean
++install-static:
+ ${INSTALLER} -p -f -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+ -XLIBRARY_TYPE=static \
+ --prefix=$(prefix) \
+@@ -67,7 +66,7 @@
+ --lib-subdir=lib/gnat_util/static \
+ --project-subdir=lib/gnat \
+ --build-var=LIBRARY_TYPE --build-name=static -Pgnat_util
+-ifeq ($(ENABLE_SHARED), yes)
++install-shared:
+ ${INSTALLER} -p -f -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+ -XLIBRARY_TYPE=relocatable \
+ --prefix=$(prefix) \
+@@ -75,8 +74,7 @@
+ --lib-subdir=lib/gnat_util/relocatable \
+ --project-subdir=lib/gnat \
+ --build-var=LIBRARY_TYPE --build-name=relocatable -Pgnat_util
+-endif
+-ifeq ($(ENABLE_PIC), yes)
++install-static-pic:
+ ${INSTALLER} -p -f -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+ -XLIBRARY_TYPE=static-pic \
+ --prefix=$(prefix) \
+@@ -84,6 +82,14 @@
+ --lib-subdir=lib/gnat_util/static-pic \
+ --project-subdir=lib/gnat \
+ --build-var=LIBRARY_TYPE --build-name=static-pic -Pgnat_util
++.PHONY: install
++install: install-clean
++ $(MAKE) install-static
++ifeq ($(ENABLE_SHARED), yes)
++ $(MAKE) install-shared
++endif
++ifeq ($(ENABLE_PIC), yes)
++ $(MAKE) install-static-pic
+ endif
+
+ .PHONY: clean
+--- gnat_util-gpl-2016-src/gnat_util.gpr.old 2017-02-09 22:15:27.153827164 +0100
++++ gnat_util-gpl-2016-src/gnat_util.gpr 2017-02-09 22:15:38.307627480 +0100
+@@ -31,6 +31,7 @@
+ for Default_Switches ("Ada") use ("-O0", "-gnato", "-g", "-gnata");
+ for Default_Switches ("C") use ("-g");
+ end case;
++ for Driver ("C") use External ("CC", "gcc");
+ end Compiler;
+
+ package Builder is
diff --git a/dev-ada/gnat_util/files/gnat_util-2017-gentoo.patch b/dev-ada/gnat_util/files/gnat_util-2017-gentoo.patch
new file mode 100644
index 000000000000..50f74d3a1381
--- /dev/null
+++ b/dev-ada/gnat_util/files/gnat_util-2017-gentoo.patch
@@ -0,0 +1,80 @@
+--- gnat_util-gpl-2014-src/Makefile.old 2016-12-28 09:56:49.378950217 +0100
++++ gnat_util-gpl-2014-src/Makefile 2016-12-28 09:57:12.301562519 +0100
+@@ -21,21 +21,30 @@
+
+ .PHONY: all
+ all: generate_sources
+- ${BUILDER} -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+- -XLIBRARY_TYPE=static -Pgnat_util -p
++ $(MAKE) build-static
+ ifeq ($(ENABLE_SHARED), yes)
+- ${BUILDER} -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+- -XLIBRARY_TYPE=relocatable -Pgnat_util -p
++ $(MAKE) build-shared
+ endif
++ $(MAKE) build-static-pic
++build-static:
++ ${BUILDER} -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
++ -XLIBRARY_TYPE=static -Pgnat_util -p -XCC=${CC} \
++ -cargs:ada $(ADAFLAGS) -cargs:C $(CFLAGS)
++build-shared:
++ ${BUILDER} -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
++ -XLIBRARY_TYPE=relocatable -Pgnat_util -p -XCC=${CC} \
++ -cargs:ada $(ADAFLAGS) -cargs:C $(CFLAGS)
++build-static-pic:
+ ${BUILDER} -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+- -XLIBRARY_TYPE=static-pic -Pgnat_util -p
++ -XLIBRARY_TYPE=static-pic -Pgnat_util -p -XCC=${CC} \
++ -cargs:ada $(ADAFLAGS) -cargs:C $(CFLAGS)
+
+ .PHONY: generate_sources
+ generate_sources:
+ $(MKDIR) $(SRC)
+ $(CP) xsnamest.adb xutil.* snames.adb-tmpl snames.ads-tmpl snames.h-tmpl $(SRC)
+ (cd $(SRC) && \
+- gnatmake -gnatf -gnatwae -gnatyg -gnatyS xsnamest && \
++ ${GNATMAKE} -gnatf -gnatwae -gnatyg -gnatyS xsnamest && \
+ ./xsnamest && mv snames.ns snames.ads && mv snames.nb snames.adb)
+ $(CP) sdefault_adb.gnat_util $(SRC)/sdefault.adb
+
+@@ -47,6 +56,12 @@
+
+ .PHONY: install
+ install: install-clean
++ ${MAKE} install-static
++ifeq ($(ENABLE_SHARED), yes)
++ ${MAKE} install-shared
++endif
++ ${MAKE} install-static-pic
++install-static:
+ ${INSTALLER} -p -f -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+ -XLIBRARY_TYPE=static \
+ --prefix=$(prefix) \
+@@ -54,7 +69,7 @@
+ --lib-subdir=lib/gnat_util/static \
+ --project-subdir=lib/gnat \
+ --build-var=LIBRARY_TYPE --build-name=static -Pgnat_util
+-ifeq ($(ENABLE_SHARED), yes)
++install-shared:
+ ${INSTALLER} -p -f -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+ -XLIBRARY_TYPE=relocatable \
+ --prefix=$(prefix) \
+@@ -62,7 +77,7 @@
+ --lib-subdir=lib/gnat_util/relocatable \
+ --project-subdir=lib/gnat \
+ --build-var=LIBRARY_TYPE --build-name=relocatable -Pgnat_util
+-endif
++install-static-pic:
+ ${INSTALLER} -p -f -m -XOS=$(OS_TYPE) -XBUILD=$(BUILD_TYPE) \
+ -XLIBRARY_TYPE=static-pic \
+ --prefix=$(prefix) \
+--- gnat_util-gpl-2016-src/gnat_util.gpr.old 2017-02-09 22:15:27.153827164 +0100
++++ gnat_util-gpl-2016-src/gnat_util.gpr 2017-02-09 22:15:38.307627480 +0100
+@@ -31,6 +31,7 @@
+ for Default_Switches ("Ada") use ("-O0", "-gnato", "-g", "-gnata");
+ for Default_Switches ("C") use ("-g");
+ end case;
++ for Driver ("C") use External ("CC", "gcc");
+ end Compiler;
+
+ package Builder is
diff --git a/dev-ada/gnat_util/gnat_util-2016.ebuild b/dev-ada/gnat_util/gnat_util-2016.ebuild
new file mode 100644
index 000000000000..81f44021d41e
--- /dev/null
+++ b/dev-ada/gnat_util/gnat_util-2016.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs multiprocessing
+
+MYP=${PN}-gpl-${PV}
+
+DESCRIPTION="Provides access to GNAT compiler internals for AdaCore utilities"
+HOMEPAGE="http://libre.adacore.com"
+SRC_URI="http://mirrors.cdn.adacore.com/art/57399637c7a447658e0affa6
+ -> ${MYP}-src.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017 +shared static static-pic"
+
+RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )"
+DEPEND="${RDEPEND}
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+REQUIRED_USE="^^ ( gnat_2016 gnat_2017 )"
+
+S="${WORKDIR}"/${MYP}-src
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_compile() {
+ if use gnat_2016; then
+ GCC_PV=4.9.4
+ else
+ GCC_PV=6.3.0
+ fi
+ GCC=${CHOST}-gcc-${GCC_PV}
+ GNATMAKE=${CHOST}-gnatmake-${GCC_PV}
+ emake GNATMAKE="${GNATMAKE} ${ADAFLAGS}" \
+ BUILDER="gprbuild -j$(makeopts_jobs)" generate_sources
+ for kind in shared static static-pic; do
+ if use ${kind}; then
+ emake CC="${GCC}" BUILDER="gprbuild -v -j$(makeopts_jobs)" \
+ build-${kind}
+ fi
+ done
+}
+
+src_install() {
+ for kind in shared static static-pic; do
+ if use ${kind}; then
+ emake prefix="${D}"/usr install-${kind}
+ fi
+ done
+ einstalldocs
+}
diff --git a/dev-ada/gnat_util/gnat_util-2017.ebuild b/dev-ada/gnat_util/gnat_util-2017.ebuild
new file mode 100644
index 000000000000..afceac741060
--- /dev/null
+++ b/dev-ada/gnat_util/gnat_util-2017.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs multiprocessing
+
+MYP=${PN}-gpl-${PV}
+
+DESCRIPTION="Provides access to GNAT compiler internals for AdaCore utilities"
+HOMEPAGE="http://libre.adacore.com"
+SRC_URI="http://mirrors.cdn.adacore.com/art/591c45e2c7a447af2deed037
+ -> ${MYP}-src.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017 +shared static static-pic"
+
+RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )"
+DEPEND="${RDEPEND}
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+REQUIRED_USE="!gnat_2016 gnat_2017"
+
+S="${WORKDIR}"/${MYP}-src
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_compile() {
+ if use gnat_2016; then
+ GCC_PV=4.9.4
+ else
+ GCC_PV=6.3.0
+ fi
+ GCC=${CHOST}-gcc-${GCC_PV}
+ GNATMAKE=${CHOST}-gnatmake-${GCC_PV}
+ emake GNATMAKE="${GNATMAKE} ${ADAFLAGS}" \
+ BUILDER="gprbuild -j$(makeopts_jobs)" generate_sources
+ for kind in shared static static-pic; do
+ if use ${kind}; then
+ emake CC="${GCC}" BUILDER="gprbuild -v -j$(makeopts_jobs)" \
+ build-${kind}
+ fi
+ done
+}
+
+src_install() {
+ for kind in shared static static-pic; do
+ if use ${kind}; then
+ emake prefix="${D}"/usr install-${kind}
+ fi
+ done
+ einstalldocs
+}
diff --git a/dev-ada/gnat_util/metadata.xml b/dev-ada/gnat_util/metadata.xml
new file mode 100644
index 000000000000..22a3c1f31fe6
--- /dev/null
+++ b/dev-ada/gnat_util/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <use>
+ <flag name="gnat_2016">Compile with dev-lang/gnat-gpl-2016</flag>
+ <flag name="gnat_2017">Compile with dev-lang/gnat-gpl-2017</flag>
+ <flag name="shared">Build gnat_util shared library</flag>
+ <flag name="static">Build gnat_util static library</flag>
+ <flag name="static-pic">Build gnat_util static library with pic code</flag>
+ </use>
+ <longdescription lang="en">
+ Gnat_Util is a library uniting a number of GNAT sources that are used by
+ different tools. At the moment Gnat_Util provides GNAT sources needed by ASIS,
+ GNATCOLL and Gprbuild. Its main purpose is allowing to simultaneously use
+ tools like ASIS and GNATCOLL (and other ones based on GNAT sources, if they
+ are to come), which would normally cause name conflicts between the same GNAT
+ sources that they use. Building both of them using same set of sources that
+ is Gnat_Util solves this problem.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-ada/gnatcoll/Manifest b/dev-ada/gnatcoll/Manifest
new file mode 100644
index 000000000000..b11552018ad0
--- /dev/null
+++ b/dev-ada/gnatcoll/Manifest
@@ -0,0 +1,7 @@
+AUX gnatcoll-2016-gentoo.patch 14137 SHA256 3d23eaca78f1a5c0ea4d63572d8649264dec0de5a906cf708df8c5f53b0fceb8 SHA512 641da348023eedb141e555148056e591af09ef31954178c128a4627bff80777e3e274663bdc4ea712afc10cd902efb186a0bba9b03b7f67f6655944af83ff8d0 WHIRLPOOL 52d1c1c3ba809c06f804e1fd77b7c1c28b42e747530295d7f00885d70dff7d543c669901b1d45318ff3d6fbeb2609708a0378f9561b9615644ca69c3b9326107
+AUX gnatcoll-2017-gentoo.patch 9485 SHA256 78dd92e685a430b6e5e12e2a833c7d22fefde25804ca19c13d252d55b3686910 SHA512 76a18ca8fb8fb61c5bd5ef4626428ed29b493d86638a278f2ddf673bc27793cf4b3778faf892f530ab1ea67915362802660640309a315166854aac67e7c243b4 WHIRLPOOL 277667b15a019d7552e315d3485ff713b562a98c7818de3d930f9f2c469349301a9135a9a2c0b9e1b6d1676b781dd40666d057fd7f368aed8449212879d4aacb
+DIST gnatcoll-gpl-2016-src.tar.gz 5687584 SHA256 8cc7cc01db548447a78e3d6d35a35867514beb625009abbcd3be124c1e259b3b SHA512 8cf06e7c5d58d3b159855534791e7969882e04856ba9d03982a63dcfc630f5b5910c6cad57fec9b00c3d04008b0cb0a1fb238e349766348fa4548868238ede8a WHIRLPOOL d37c12bb6242d92104e89b7c1d9a9cd94d802137ee32faa58687700a822db69e2739372376d12032228843c2a5356f8085d6072715b8bc1bda411039d20b55f5
+DIST gnatcoll-gpl-2017-src.tar.gz 5785988 SHA256 66168ee795a67dde3b8a8d0fe6663a776d1bdf50091e6cdd47f3837d89afd434 SHA512 e8b7f2c00816597f33496168bf8928841a2037e517908810761849e23633b2c229d47e4bfaa808e5a619da52bc165f17b8aefa5dee39ecf1a6773b3b1db80363 WHIRLPOOL a0fbda792b282ecb184057efa98332f0b790c9412ba6fec541fbcb8c57cab48f64df6ff81017c283e599cda858d668f5f8fcf5b7bd771c23f34a84a6d16f4c79
+EBUILD gnatcoll-2016.ebuild 2959 SHA256 b5604dd3eec5a40186b48a7d82e6d1346e01d8ab7729ab1860d7911b283ef739 SHA512 2ef7e10aa95aa7a5496af2c758ebd8073e6a13713789b0420a39f5a0cb4a72bdd5ec1f7ff51e63d42ff283ea928796d6185a448801e7afad09ea21a13380f6c7 WHIRLPOOL 642bb23492ddfadc6f1b45fc879c2a9c6a34214889c5b8d29c8c8b59ac997eb26b5ff92d2a2c9bce6b9920f1e3f83750ea96fd5f9ae2f3db1e9da4fc57bbaa32
+EBUILD gnatcoll-2017.ebuild 3101 SHA256 df3479f391b8894e0e08f463bee318974ee2c8094814eaa42aa14e758ffd46d6 SHA512 b52ba1385ca6aaa11661c12934b2c92907d32bc905437199d1150c3878a200f1d7a36fb974ad45c0cfaba820122ed930ceb6d42fd1984d9db35dd9069a892e57 WHIRLPOOL d15dcb2c09ab7a7917caf2567a1aaf5f2a1f395f333fd2b4ca2e02e4f3c06955d56459974b713d987a3eb3c7c1aecdf84ae4b464dd23ca33fad605ec18a13ea4
+MISC metadata.xml 1473 SHA256 896d6ea1ef7786244d3388b9ef64e98ce4b3590fb5897b2b7e6efa0e16809060 SHA512 43c44b85940e585406e90e856f83af23a605d69c3e52af16b17e22eb49de170422a4981c366f19f7554c68a67d4633da117c19eceb8824fa33a7f8e21316ddaa WHIRLPOOL fff7e879571f1770164bf6a8764c5d359d5bcb1293267fa4a2a29089b989ba1e521c618e16cab5683e082f785d654fac6617237be76b523969868b6110fa8b6d
diff --git a/dev-ada/gnatcoll/files/gnatcoll-2016-gentoo.patch b/dev-ada/gnatcoll/files/gnatcoll-2016-gentoo.patch
new file mode 100644
index 000000000000..1a1d4d14eec2
--- /dev/null
+++ b/dev-ada/gnatcoll/files/gnatcoll-2016-gentoo.patch
@@ -0,0 +1,333 @@
+--- gnatcoll-gpl-2016-src/Makefile.old 2017-01-20 19:39:07.131398270 +0100
++++ gnatcoll-gpl-2016-src/Makefile 2017-01-20 19:42:30.088728844 +0100
+@@ -34,19 +36,19 @@
+ @${RM} src/gnatcoll-atomic.adb
+
+ @echo "====== Building $(@F) libraries ======"
+- ${GPRBUILD} ${GPRBLD_OPTS} -Pgnatcoll_full
++ ${GPRBUILD} ${GPRBLD_OPTS} -Pgnatcoll_full -cargs ${ADAFLAGS}
+
+ @# Need to build libgnatcoll_gtk separately, because its project files
+ @# requires gtkada.gpr, which might not exist on the machine.
+ ifeq (${WITH_GTK},yes)
+- ${GPRBUILD} ${GPRBLD_OPTS} -Psrc/gnatcoll_gtk
++ ${GPRBUILD} ${GPRBLD_OPTS} -Psrc/gnatcoll_gtk -cargs ${ADAFLAGS}
+ endif
+
+ @# Build the tools (the list is the project\'s Main attribute)
+ @# They are not build as part of the above because only the Main from
+ @# gnatcoll_full.gpr are build. We could use aggregate projects to
+ @# speed things up.
+- ${GPRBUILD} ${GPRBLD_OPTS} -q -Psrc/gnatcoll_tools
++ ${GPRBUILD} ${GPRBLD_OPTS} -q -Psrc/gnatcoll_tools -cargs ${ADAFLAGS}
+
+ #######################################################################
+ # install
+--- gnatcoll-gpl-2015-src/src/gnatcoll_gmp.gpr.in.old 2017-01-07 08:52:14.921110195 +0100
++++ gnatcoll-gpl-2015-src/src/gnatcoll_gmp.gpr.in 2017-01-07 08:55:35.718946607 +0100
+@@ -24,6 +24,7 @@
+
+ package Compiler is
+ for Switches ("Ada") use Gnatcoll_Shared.Compiler'Switches ("Ada");
++ for Driver ("C") use External ("CC", "gcc");
+ for Switches ("C") use Gnatcoll_Shared.Compiler'Switches ("C")
+ & (@GMP_CFLAGS_GPR@);
+ end Compiler;
+--- gnatcoll-gpl-2015-src/src/gnatcoll_iconv.gpr.old 2017-01-07 08:58:01.361112843 +0100
++++ gnatcoll-gpl-2015-src/src/gnatcoll_iconv.gpr 2017-01-07 08:58:23.653687385 +0100
+@@ -26,6 +26,7 @@
+
+ package Compiler is
+ for Switches ("Ada") use GnatColl_Shared.Compiler'Switches ("Ada");
++ for Driver ("C") use External ("CC", "gcc");
+ for Switches ("C") use GnatColl_Shared.Compiler'Switches ("C")
+ & GnatColl_Shared.Iconv_Include;
+ end Compiler;
+--- gnatcoll-gpl-2015-src/src/gnatcoll_sqlite.gpr.old 2017-01-07 09:00:17.146448202 +0100
++++ gnatcoll-gpl-2015-src/src/gnatcoll_sqlite.gpr 2017-01-07 09:00:44.884885281 +0100
+@@ -60,8 +60,9 @@
+
+ -- force full optimization for sqlite, we do not debug it
+ -- in any case.
+- "-O3") & Gnatcoll_Shared.Sqlite_Switches;
++ "-O3", "-fPIC") & Gnatcoll_Shared.Sqlite_Switches;
+ end case;
++ for Driver ("C") use External ("CC", "gcc");
+ end Compiler;
+
+ package Linker is
+--- gnatcoll-gpl-2015-src/src/gnatcoll_postgres.gpr.old 2017-01-07 09:05:09.177756146 +0100
++++ gnatcoll-gpl-2015-src/src/gnatcoll_postgres.gpr 2017-01-07 09:05:34.282279733 +0100
+@@ -38,6 +38,7 @@
+ for Switches ("C") use
+ GnatColl_Shared.Compiler'Switches ("C");
+ end case;
++ for Driver ("C") use External ("CC", "gcc");
+ end Compiler;
+
+ package Linker is
+--- gnatcoll-gpl-2015-src/src/gnatcoll_python.gpr.in.old 2017-01-07 09:12:30.490399897 +0100
++++ gnatcoll-gpl-2015-src/src/gnatcoll_python.gpr.in 2017-01-07 09:12:53.111976591 +0100
+@@ -30,7 +30,8 @@
+ GnatColl_Shared.Compiler'Switches ("Ada");
+
+ for Switches ("C") use
+- ("-g", "-O2") & GnatColl_Shared.Python_Cflags;
++ ("-g", "-O2", "-fPIC") & GnatColl_Shared.Python_Cflags;
++ for Driver ("C") use External ("CC", "gcc");
+ end Compiler;
+
+ package Linker is
+--- gnatcoll-gpl-2016-src/gnatcoll_shared.gpr.in.old 2017-01-20 19:50:03.222808656 +0100
++++ gnatcoll-gpl-2016-src/gnatcoll_shared.gpr.in 2017-01-20 19:50:28.200399274 +0100
+@@ -13,7 +13,7 @@
+
+ type Yes_No is ("yes", "no");
+ Gtk : Yes_No := External ("GTK", "@WITH_GTK@");
+- Python : Yes_No := External ("PYTHON", "@WITH_PYTHON@");
++ Python : Yes_No := "@WITH_PYTHON@";
+ Syslog : Yes_No := External ("SYSLOG", "@WITH_SYSLOG@");
+ Postgres : Yes_No := External ("POSTGRES", "@WITH_POSTGRES@");
+ type Sqlite_Inclusion is ("yes", "no", "embedded");
+@@ -67,7 +67,7 @@
+
+ when "Production" =>
+ for Switches ("Ada") use ("-O2", "-gnatn", "-gnatws");
+- for Switches ("C") use ("-O2", "-Wunreachable-code");
++ for Switches ("C") use ("-O2", "-Wunreachable-code", "-fPIC");
+ end case;
+
+ case Syslog is
+--- gnatcoll-gpl-2016-src/src/gnatcoll_gtk.gpr.in.old 2017-01-20 19:53:16.647607400 +0100
++++ gnatcoll-gpl-2016-src/src/gnatcoll_gtk.gpr.in 2017-01-20 19:53:57.302925708 +0100
+@@ -63,11 +63,12 @@
+ for Switches ("Ada") use GnatColl_Shared.Compiler'Switches ("Ada");
+
+ for Switches ("C") use
+- ("-g", "-O2")
++ ("-g", "-O2", "-fPIC")
+ & GnatColl_Shared.Python_Cflags
+ & GnatColl_Shared.Pygtk_Include
+ & GnatColl_Shared.PyGobject_Include
+ & Gtk_Include;
++ for Driver ("C") use External ("CC", "gcc");
+ end Compiler;
+
+ package Linker is
+--- gnatcoll-gpl-2016-src/src/gnatcoll__libgpr.gpr.old 2017-02-04 15:56:11.685079607 +0100
++++ gnatcoll-gpl-2016-src/src/gnatcoll__libgpr.gpr 2017-02-04 15:57:00.383221978 +0100
+@@ -49,6 +49,8 @@
+ package Builder renames GnatColl_Shared.Builder;
+
+ package Compiler is
++ for Driver ("C") use External ("CC", "gcc");
++
+ for Switches ("Ada") use GnatColl_Shared.Compiler'Switches ("Ada");
+ for Switches ("C") use GnatColl_Shared.Compiler'Switches ("C");
+ for Switches ("sinfo.adb") use Compiler'Switches ("Ada") & ("-gnatg");
+--- gnatcoll-gpl-2016-src/src/gnatcoll__nogpr.gpr.old 2017-02-04 15:58:41.008450044 +0100
++++ gnatcoll-gpl-2016-src/src/gnatcoll__nogpr.gpr 2017-02-04 15:59:02.815066080 +0100
+@@ -64,6 +64,7 @@
+ for Switches ("Ada") use GnatColl_Shared.Compiler'Switches ("Ada");
+ for Switches ("C") use GnatColl_Shared.Compiler'Switches ("C");
+ for Switches ("sinfo.adb") use Compiler'Switches ("Ada") & ("-gnatg");
++ for Driver ("C") use External ("CC", "gcc");
+
+ case GnatColl_Shared.Atomics is
+ when "intrinsic" =>
+--- gnatcoll-gpl-2016-src/aclocal.m4.old 2017-04-06 08:25:14.796699365 +0200
++++ gnatcoll-gpl-2016-src/aclocal.m4 2017-04-06 08:25:36.622318016 +0200
+@@ -45,7 +45,7 @@
+ cat > conftest.ada <<EOF
+ [$3]
+ EOF
+- if AC_TRY_COMMAND([gnatchop -q conftest.ada && $1 $2 >/dev/null 2>conftest.out])
++ if AC_TRY_COMMAND([${GNATCHOP} -q conftest.ada && $1 $2 >/dev/null 2>conftest.out])
+ then
+ : Success
+ $4
+@@ -68,7 +68,7 @@
+ AC_DEFUN(AM_HAS_INTRINSIC_SYNC_COUNTERS,
+ [
+ AC_MSG_CHECKING([whether platform supports atomic inc/dec])
+- AM_TRY_ADA([gnatmake], [check.adb],
++ AM_TRY_ADA([${GNATMAKE}], [check.adb],
+ [
+ with Interfaces; use Interfaces;
+ procedure Check is
+--- gnatcoll-gpl-2016-src/testsuite/json/__init__.py.old 2017-04-24 17:52:34.158513249 +0200
++++ gnatcoll-gpl-2016-src/testsuite/json/__init__.py 2017-04-24 17:52:52.636207017 +0200
+@@ -21,7 +21,7 @@
+ @requires_not_aix # Storage_Error on that machine
+ @chdir("MB28-001")
+ def test_MB28_001(self):
+- self.runexec(["python", "make_json.py"])
++ self.runexec(["python2.7", "make_json.py"])
+ self.gprbuild()
+ self.runexec("json_stack_test", "test.out")
+
+--- gnatcoll-gpl-2016-src/testsuite/projects/aggregate_create/c1/c.gpr.old 2017-04-24 18:00:21.652975475 +0200
++++ gnatcoll-gpl-2016-src/testsuite/projects/aggregate_create/c1/c.gpr 2017-04-24 18:01:23.035983670 +0200
+@@ -15,6 +15,7 @@
+ for Default_Switches ("ada") use
+ ("-g", "-gnatQ", "-O1", "-gnatf", "-gnato", "-gnatwa.Xe", "-gnaty");
+ for Switches ("c") use ("-fdump-xref");
++ for Driver ("c") use External ("CC", "gcc");
+ end Compiler;
+
+ end c;
+--- gnatcoll-gpl-2016-src/testsuite/projects/aggregate_create/c2/c.gpr.old 2017-04-24 18:01:28.394896928 +0200
++++ gnatcoll-gpl-2016-src/testsuite/projects/aggregate_create/c2/c.gpr 2017-04-24 18:01:44.343638682 +0200
+@@ -15,6 +15,7 @@
+ for Default_Switches ("ada") use
+ ("-g", "-gnatQ", "-O1", "-gnatf", "-gnato", "-gnatwa.Xe", "-gnaty");
+ for Switches ("C") use ("-fdump-xref");
++ for Driver ("C") use External ("CC", "gcc");
+ end Compiler;
+
+ end c;
+--- gnatcoll-gpl-2016-src/testsuite/projects/__init__.py.old 2017-04-24 19:10:30.465246199 +0200
++++ gnatcoll-gpl-2016-src/testsuite/projects/__init__.py 2017-04-24 19:10:42.768035080 +0200
+@@ -105,25 +105,6 @@
+ self.gprbuild("default.gpr")
+ self.runexec("main", "")
+
+- @support.requires_not_windows
+- @chdir("N918-040")
+- def test_bareboard(self):
+- self.create_fake_bb_compiler('install', 'arm-eabi', '6.1.0w', '3.4.6')
+-
+- # Make sure auto.cgpr is not deleted on exit
+- try:
+- os.unlink('auto.cgpr')
+- except:
+- pass
+- self.gprbuild('main_prj', switches=['--autoconf=auto.cgpr'])
+- m = re.search('for Target use "(.*?)"', open('auto.cgpr').read())
+- target = m.group(1)
+-
+- def customFilter(actual):
+- return actual.replace(target, "<native>")
+-
+- self.runexec(['sh', 'test.sh'], 'test.out', customFilter=customFilter)
+-
+ @chdir("NB12-045")
+ def test_NB12_045(self):
+ # Test registering attribute in unknown package
+--- gnatcoll-gpl-2016-src/testsuite/xref/tabs/default.gpr.old 2017-04-24 20:01:55.535913959 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/tabs/default.gpr 2017-04-24 20:02:51.740950192 +0200
+@@ -1,3 +1,6 @@
+ project Default is
+ for Languages use ("Ada", "C");
++ package Compiler is
++ for Driver ("C") use External ("CC", "gcc");
++ end Compiler;
+ end Default;
+--- gnatcoll-gpl-2016-src/testsuite/xref/doc1/dummy.gpr.old 2017-04-24 20:04:12.012574064 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/doc1/dummy.gpr 2017-04-24 20:04:54.025853974 +0200
+@@ -6,4 +6,7 @@
+ for Body_Suffix ("c++") use ".cc";
+ end Naming;
+
++ package Compiler is
++ for Driver ("C") use External ("CC", "gcc");
++ end Compiler;
+ end Dummy;
+--- gnatcoll-gpl-2016-src/testsuite/xref/cpp_ref3/default.gpr.old 2017-04-24 20:08:06.018564544 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/cpp_ref3/default.gpr 2017-04-24 20:08:53.682748215 +0200
+@@ -1,3 +1,7 @@
+ project Default is
+ for Languages use ("C");
++
++ package Compiler is
++ for Driver ("C") use External ("CC", "gcc");
++ end Compiler;
+ end Default;
+--- gnatcoll-gpl-2016-src/testsuite/xref/cpp_ref2/default.gpr.old 2017-04-24 20:10:00.146610101 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/cpp_ref2/default.gpr 2017-04-24 20:10:40.512919251 +0200
+@@ -1,3 +1,7 @@
+ project Default is
+ for Languages use ("C");
++
++ package Compiler is
++ for Driver ("C") use External ("CC", "gcc");
++ end COmpiler;
+ end Default;
+--- gnatcoll-gpl-2016-src/testsuite/xref/cpp_ref1/default.gpr.old 2017-04-24 20:13:28.543059408 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/cpp_ref1/default.gpr 2017-04-24 20:14:05.513430176 +0200
+@@ -1,3 +1,7 @@
+ project Default is
+ for Languages use ("C");
++
++ package Compiler is
++ for Driver ("C") use External ("CC", "gcc");
++ end Compiler;
+ end Default;
+--- gnatcoll-gpl-2016-src/testsuite/xref/cpp_expr1/default.gpr.old 2017-04-24 20:15:26.420053157 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/cpp_expr1/default.gpr 2017-04-24 20:16:12.695265558 +0200
+@@ -1,3 +1,6 @@
+ project Default is
+ for Languages use ("C");
++ package Compiler is
++ for Driver ("C") use External ("CC", "gcc");
++ end Compiler;
+ end Default;
+--- gnatcoll-gpl-2016-src/testsuite/xref/cpp_enum/dummy.gpr.old 2017-04-24 20:16:53.562570024 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/cpp_enum/dummy.gpr 2017-04-24 20:17:32.086914323 +0200
+@@ -4,4 +4,7 @@
+ for Spec_Suffix ("c++") use ".h";
+ for Body_Suffix ("c++") use ".cc";
+ end Naming;
++ package Compiler is
++ for Driver ("c") use External ("CC", "gcc");
++ end Compiler;
+ end Dummy;
+--- gnatcoll-gpl-2016-src/testsuite/xref/cpp_dbi_error/dummy.gpr.old 2017-04-24 20:18:03.688376474 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/cpp_dbi_error/dummy.gpr 2017-04-24 20:18:52.761541251 +0200
+@@ -1,3 +1,6 @@
+ project Dummy is
+ for Languages use ("c");
++ package Compiler is
++ for Driver ("c") use External ("CC", "gcc");
++ end Compiler;
+ end Dummy;
+--- gnatcoll-gpl-2016-src/testsuite/xref/L821-017-import/default.gpr.old 2017-04-24 20:19:40.401730504 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/L821-017-import/default.gpr 2017-04-24 20:22:52.303465944 +0200
+@@ -4,5 +4,6 @@
+ package Compiler is
+ for Switches ("C") use ("-fsyntax-only", "-fdump-xref");
+ for Switches ("C++") use ("-fsyntax-only", "-fdump-xref");
++ for Driver ("C") use External ("CC", "gcc");
+ end Compiler;
+ end Default;
+--- gnatcoll-gpl-2016-src/testsuite/xref/E224-007-change_obj_dir-c/default.gpr.old 2017-04-24 20:31:02.679123516 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/E224-007-change_obj_dir-c/default.gpr 2017-04-24 20:31:42.515445784 +0200
+@@ -8,4 +8,7 @@
+ when "release" => for Object_Dir use "obj1";
+ when "debug" => for Object_Dir use "obj2";
+ end case;
++ package Compiler is
++ for Driver ("C") use External ("CC", "gcc");
++ end Compiler;
+ end Default;
+--- gnatcoll-gpl-2016-src/testsuite/xref/I401-027/default.gpr.old 2017-04-24 20:32:45.175379776 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/I401-027/default.gpr 2017-04-24 20:33:16.130853112 +0200
+@@ -7,6 +7,7 @@
+ package Compiler is
+ for Default_Switches ("Ada") use ("-gnatws");
+ for Default_Switches ("C") use ("-fdump-xref");
++ for Driver ("C") use External ("CC", "gcc");
+ end Compiler;
+
+ end Default;
+--- gnatcoll-gpl-2016-src/src/tools/gnatcoll_db2ada.adb.old 2017-04-24 21:36:09.193973179 +0200
++++ gnatcoll-gpl-2016-src/src/tools/gnatcoll_db2ada.adb 2017-04-24 21:36:16.029858932 +0200
+@@ -211,7 +211,7 @@
+
+ declare
+ Output : constant String := Get_Command_Output
+- (Command => "python",
++ (Command => "python2.7",
+ Arguments => Args,
+ Input => "",
+ Status => Status'Access,
diff --git a/dev-ada/gnatcoll/files/gnatcoll-2017-gentoo.patch b/dev-ada/gnatcoll/files/gnatcoll-2017-gentoo.patch
new file mode 100644
index 000000000000..2c3efd2c29f0
--- /dev/null
+++ b/dev-ada/gnatcoll/files/gnatcoll-2017-gentoo.patch
@@ -0,0 +1,224 @@
+--- gnatcoll-gpl-2016-src/Makefile.old 2017-01-20 19:39:07.131398270 +0100
++++ gnatcoll-gpl-2016-src/Makefile 2017-01-20 19:42:30.088728844 +0100
+@@ -49,12 +49,12 @@
+ @${RM} src/gnatcoll-atomic.adb
+
+ @echo "====== Building $(@F) libraries ======"
+- ${GPRBUILD} ${GPRBLD_OPTS} -Pgnatcoll_full
++ ${GPRBUILD} ${GPRBLD_OPTS} -Pgnatcoll_full -cargs ${ADAFLAGS}
+
+ @# Need to build libgnatcoll_gtk separately, because its project files
+ @# requires gtkada.gpr, which might not exist on the machine.
+ ifeq (${WITH_GTK},yes)
+- ${GPRBUILD} ${GPRBLD_OPTS} -Psrc/gnatcoll_gtk
++ ${GPRBUILD} ${GPRBLD_OPTS} -Psrc/gnatcoll_gtk -cargs ${ADAFLAGS}
+ endif
+
+ build_tools/%: build_library_type/%
+@@ -63,7 +63,7 @@
+ @# They are not build as part of the above because only the Main from
+ @# gnatcoll_full.gpr are build. We could use aggregate projects to
+ @# speed things up.
+- ${GPRBUILD} ${GPRBLD_OPTS} -q -Psrc/gnatcoll_tools
++ ${GPRBUILD} ${GPRBLD_OPTS} -q -Psrc/gnatcoll_tools -cargs ${ADAFLAGS}
+
+ #######################################################################
+ # install
+--- gnatcoll-gpl-2015-src/src/gnatcoll_iconv.gpr.old 2017-01-07 08:58:01.361112843 +0100
++++ gnatcoll-gpl-2015-src/src/gnatcoll_iconv.gpr 2017-01-07 08:58:23.653687385 +0100
+@@ -26,6 +26,7 @@
+
+ package Compiler is
+ for Switches ("Ada") use GnatColl_Shared.Compiler'Switches ("Ada");
++ for Driver ("C") use External ("GCC", "gcc");
+ for Switches ("C") use GnatColl_Shared.Compiler'Switches ("C")
+ & GnatColl_Shared.Iconv_Include;
+ end Compiler;
+--- gnatcoll-gpl-2015-src/src/gnatcoll_sqlite.gpr.old 2017-01-07 09:00:17.146448202 +0100
++++ gnatcoll-gpl-2015-src/src/gnatcoll_sqlite.gpr 2017-01-07 09:00:44.884885281 +0100
+@@ -60,8 +60,9 @@
+
+ -- force full optimization for sqlite, we do not debug it
+ -- in any case.
+ "-O3") & Gnatcoll_Shared.Sqlite_Switches;
+ end case;
++ for Driver ("C") use External ("GCC", "gcc");
+ end Compiler;
+
+ package Linker is
+--- gnatcoll-gpl-2015-src/src/gnatcoll_postgres.gpr.old 2017-01-07 09:05:09.177756146 +0100
++++ gnatcoll-gpl-2015-src/src/gnatcoll_postgres.gpr 2017-01-07 09:05:34.282279733 +0100
+@@ -38,6 +38,7 @@
+ for Switches ("C") use
+ GnatColl_Shared.Compiler'Switches ("C");
+ end case;
++ for Driver ("C") use External ("GCC", "gcc");
+ end Compiler;
+
+ package Linker is
+--- gnatcoll-gpl-2016-src/gnatcoll_shared.gpr.in.old 2017-01-20 19:50:03.222808656 +0100
++++ gnatcoll-gpl-2016-src/gnatcoll_shared.gpr.in 2017-01-20 19:50:28.200399274 +0100
+@@ -13,7 +13,7 @@
+
+ type Yes_No is ("yes", "no");
+ Gtk : Yes_No := External ("GTK", "@WITH_GTK@");
+- Python : Yes_No := External ("PYTHON", "@WITH_PYTHON@");
++ Python : Yes_No := "@WITH_PYTHON@";
+ Syslog : Yes_No := External ("SYSLOG", "@WITH_SYSLOG@");
+ Postgres : Yes_No := External ("POSTGRES", "@WITH_POSTGRES@");
+ type Sqlite_Inclusion is ("yes", "no", "embedded");
+--- gnatcoll-gpl-2016-src/src/gnatcoll__libgpr.gpr.old 2017-02-04 15:56:11.685079607 +0100
++++ gnatcoll-gpl-2016-src/src/gnatcoll__libgpr.gpr 2017-02-04 15:57:00.383221978 +0100
+@@ -49,6 +49,8 @@
+ package Builder renames GnatColl_Shared.Builder;
+
+ package Compiler is
++ for Driver ("C") use External ("GCC", "gcc");
++
+ for Switches ("Ada") use GnatColl_Shared.Compiler'Switches ("Ada");
+ for Switches ("C") use GnatColl_Shared.Compiler'Switches ("C");
+ for Switches ("sinfo.adb") use Compiler'Switches ("Ada") & ("-gnatg");
+--- gnatcoll-gpl-2016-src/src/gnatcoll__nogpr.gpr.old 2017-02-04 15:58:41.008450044 +0100
++++ gnatcoll-gpl-2016-src/src/gnatcoll__nogpr.gpr 2017-02-04 15:59:02.815066080 +0100
+@@ -64,6 +64,7 @@
+ for Switches ("Ada") use GnatColl_Shared.Compiler'Switches ("Ada");
+ for Switches ("C") use GnatColl_Shared.Compiler'Switches ("C");
+ for Switches ("sinfo.adb") use Compiler'Switches ("Ada") & ("-gnatg");
++ for Driver ("C") use External ("GCC", "gcc");
+
+ case GnatColl_Shared.Atomics is
+ when "intrinsic" =>
+--- gnatcoll-gpl-2016-src/aclocal.m4.old 2017-04-06 08:25:14.796699365 +0200
++++ gnatcoll-gpl-2016-src/aclocal.m4 2017-04-06 08:25:36.622318016 +0200
+@@ -45,7 +45,7 @@
+ cat > conftest.ada <<EOF
+ [$3]
+ EOF
+- if AC_TRY_COMMAND([gnatchop -q conftest.ada && $1 $2 >/dev/null 2>conftest.out])
++ if AC_TRY_COMMAND([${GNATCHOP} -q conftest.ada && $1 $2 >/dev/null 2>conftest.out])
+ then
+ : Success
+ $4
+@@ -68,7 +68,7 @@
+ AC_DEFUN(AM_HAS_INTRINSIC_SYNC_COUNTERS,
+ [
+ AC_MSG_CHECKING([whether platform supports atomic inc/dec])
+- AM_TRY_ADA([gnatmake], [check.adb],
++ AM_TRY_ADA([${GNATMAKE}], [check.adb],
+ [
+ with Interfaces; use Interfaces;
+ procedure Check is
+--- gnatcoll-gpl-2016-src/testsuite/json/__init__.py.old 2017-04-24 17:52:34.158513249 +0200
++++ gnatcoll-gpl-2016-src/testsuite/json/__init__.py 2017-04-24 17:52:52.636207017 +0200
+@@ -21,7 +21,7 @@
+ @requires_not_aix # Storage_Error on that machine
+ @chdir("MB28-001")
+ def test_MB28_001(self):
+- self.runexec(["python", "make_json.py"])
++ self.runexec(["python2.7", "make_json.py"])
+ self.gprbuild()
+ self.runexec("json_stack_test", "test.out")
+
+--- gnatcoll-gpl-2016-src/testsuite/projects/aggregate_create/c1/c.gpr.old 2017-04-24 18:00:21.652975475 +0200
++++ gnatcoll-gpl-2016-src/testsuite/projects/aggregate_create/c1/c.gpr 2017-04-24 18:01:23.035983670 +0200
+@@ -15,5 +15,6 @@
+ for Default_Switches ("ada") use
+ ("-g", "-gnatQ", "-O1", "-gnatf", "-gnato", "-gnatwa.Xe", "-gnaty");
++ for Driver ("c") use External ("GCC", "gcc");
+ end Compiler;
+
+ end c;
+--- gnatcoll-gpl-2016-src/testsuite/projects/aggregate_create/c2/c.gpr.old 2017-04-24 18:01:28.394896928 +0200
++++ gnatcoll-gpl-2016-src/testsuite/projects/aggregate_create/c2/c.gpr 2017-04-24 18:01:44.343638682 +0200
+@@ -15,5 +15,6 @@
+ for Default_Switches ("ada") use
+ ("-g", "-gnatQ", "-O1", "-gnatf", "-gnato", "-gnatwa.Xe", "-gnaty");
++ for Driver ("C") use External ("GCC", "gcc");
+ end Compiler;
+
+ end c;
+--- gnatcoll-gpl-2016-src/testsuite/projects/__init__.py.old 2017-04-24 19:10:30.465246199 +0200
++++ gnatcoll-gpl-2016-src/testsuite/projects/__init__.py 2017-04-24 19:10:42.768035080 +0200
+@@ -105,25 +105,6 @@
+ self.gprbuild("default.gpr")
+ self.runexec("main", "")
+
+- @support.requires_not_windows
+- @chdir("N918-040")
+- def test_bareboard(self):
+- self.create_fake_bb_compiler('install', 'arm-eabi', '6.1.0w', '3.4.6')
+-
+- # Make sure auto.cgpr is not deleted on exit
+- try:
+- os.unlink('auto.cgpr')
+- except:
+- pass
+- self.gprbuild('main_prj', switches=['--autoconf=auto.cgpr'])
+- m = re.search('for Target use "(.*?)"', open('auto.cgpr').read())
+- target = m.group(1)
+-
+- def customFilter(actual):
+- return actual.replace(target, "<native>")
+-
+- self.runexec(['sh', 'test.sh'], 'test.out', customFilter=customFilter)
+-
+ @chdir("NB12-045")
+ def test_NB12_045(self):
+ # Test registering attribute in unknown package
+--- gnatcoll-gpl-2016-src/testsuite/xref/tabs/default.gpr.old 2017-04-24 20:01:55.535913959 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/tabs/default.gpr 2017-04-24 20:02:51.740950192 +0200
+@@ -1,3 +1,6 @@
+ project Default is
+ for Languages use ("Ada", "C");
++ package Compiler is
++ for Driver ("C") use External ("GCC", "gcc");
++ end Compiler;
+ end Default;
+--- gnatcoll-gpl-2016-src/testsuite/xref/doc1/dummy.gpr.old 2017-04-24 20:04:12.012574064 +0200
++++ gnatcoll-gpl-2016-src/testsuite/xref/doc1/dummy.gpr 2017-04-24 20:04:54.025853974 +0200
+@@ -6,4 +6,7 @@
+ for Body_Suffix ("c++") use ".cc";
+ end Naming;
+
++ package Compiler is
++ for Driver ("C") use External ("GCC", "gcc");
++ end Compiler;
+ end Dummy;
+--- gnatcoll-gpl-2016-src/src/tools/gnatcoll_db2ada.adb.old 2017-04-24 21:36:09.193973179 +0200
++++ gnatcoll-gpl-2016-src/src/tools/gnatcoll_db2ada.adb 2017-04-24 21:36:16.029858932 +0200
+@@ -211,7 +211,7 @@
+
+ declare
+ Output : constant String := Get_Command_Output
+- (Command => "python",
++ (Command => "python2.7",
+ Arguments => Args,
+ Input => "",
+ Status => Status'Access,
+--- gnatcoll-gpl-2017-src/src/gnatcoll_python.gpr.old 2017-06-24 18:06:19.702063079 +0200
++++ gnatcoll-gpl-2017-src/src/gnatcoll_python.gpr 2017-06-24 18:05:04.276103652 +0200
+@@ -60,6 +60,7 @@
+
+ for Switches ("C") use
+- ("-g", "-O2") & GnatColl_Shared.Python_Cflags;
++ ("-g", "-O2", "-fPIC") & GnatColl_Shared.Python_Cflags;
++ for Driver ("C") use External ("GCC", "gcc");
+ end Compiler;
+
+ package Linker is
+--- gnatcoll-gpl-2017-src/src/gnatcoll_gtk.gpr.old 2017-06-24 18:37:22.164631219 +0200
++++ gnatcoll-gpl-2017-src/src/gnatcoll_gtk.gpr 2017-06-24 18:37:55.763186201 +0200
+@@ -71,11 +71,12 @@
+ for Switches ("Ada") use GnatColl_Shared.Compiler'Switches ("Ada");
+
+ for Switches ("C") use
+- ("-g", "-O2")
++ ("-g", "-O2", "-fPIC")
+ & GnatColl_Shared.Python_Cflags
+ & GnatColl_Shared.Pygtk_Include
+ & GnatColl_Shared.PyGobject_Include
+ & Gtk_Include;
++ for Driver ("C") use External ("GCC", "gcc");
+ end Compiler;
+
+ package Linker is
diff --git a/dev-ada/gnatcoll/gnatcoll-2016.ebuild b/dev-ada/gnatcoll/gnatcoll-2016.ebuild
new file mode 100644
index 000000000000..b4e04558bddd
--- /dev/null
+++ b/dev-ada/gnatcoll/gnatcoll-2016.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+inherit multilib multiprocessing autotools python-single-r1
+
+MYP=${PN}-gpl-${PV}
+
+DESCRIPTION="GNAT Component Collection"
+HOMEPAGE="http://libre.adacore.com"
+SRC_URI="http://mirrors.cdn.adacore.com/art/5739942ac7a447658d00e1e7
+ -> ${MYP}-src.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gmp gnat_2016 gnat_2017 gtk iconv postgresql pygobject projects readline
+ +shared sqlite static syslog tools"
+
+RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )
+ ${PYTHON_DEPS}
+ gmp? ( dev-libs/gmp:* )
+ gtk? (
+ dev-ada/gtkada[gnat_2016=,gnat_2017=,shared?,static?]
+ dev-libs/atk
+ dev-libs/glib
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf
+ x11-libs/gtk+:3
+ x11-libs/pango
+ )
+ pygobject? ( dev-python/pygobject:3[${PYTHON_USEDEP}] )
+ postgresql? ( dev-db/postgresql:* )
+ sqlite? ( dev-db/sqlite )
+ projects? (
+ =dev-ada/gprbuild-2016[gnat_2016=,gnat_2017=,shared?,static?]
+ )"
+DEPEND="${RDEPEND}
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ pygobject? ( gtk )
+ ^^ ( gnat_2016 gnat_2017 )"
+
+S="${WORKDIR}"/${MYP}-src
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_prepare() {
+ default
+ mv configure.{in,ac} || die
+ eautoreconf
+}
+
+src_configure() {
+ if use gnat_2016; then
+ GCC_PV=4.9.4
+ else
+ GCC_PV=6.3.0
+ fi
+ GCC=${CHOST}-gcc-${GCC_PV}
+ GNATMAKE=${CHOST}-gnatmake-${GCC_PV}
+ GNATCHOP=${CHOST}-gnatchop-${GCC_PV}
+ if use sqlite; then
+ myConf="--with-sqlite=$(get_libdir)"
+ else
+ myConf="--without-sqlite"
+ fi
+ if use gtk ; then
+ myConf="$myConf --with-gtk=3.0"
+ else
+ myConf="$myConf --with-gtk=no"
+ fi
+ econf \
+ GNATCHOP="${GNATCHOP}" \
+ GNATMAKE="${GNATMAKE}" \
+ --with-python \
+ $(use_with gmp) \
+ $(use_with iconv) \
+ $(use_with postgresql) \
+ $(use_enable projects) \
+ $(use_enable pygobject) \
+ $(use_enable readline gpl) \
+ $(use_enable readline) \
+ $(use_enable syslog) \
+ --with-python-exec=${EPYTHON} \
+ --enable-shared-python \
+ --disable-pygtk \
+ CC=${GCC} \
+ $myConf
+}
+
+src_compile() {
+ if use shared; then
+ emake PROCESSORS=$(makeopts_jobs) GPRBUILD_OPTIONS=-v GCC=${GCC} \
+ build_library_type/relocatable
+ fi
+ if use static; then
+ emake PROCESSORS=$(makeopts_jobs) GPRBUILD_OPTIONS=-v GCC=${GCC} \
+ build_library_type/static
+ fi
+ python_fix_shebang .
+}
+
+src_install() {
+ if use shared; then
+ emake prefix="${D}usr" install_library_type/relocatable
+ fi
+ if use static; then
+ emake prefix="${D}usr" install_library_type/static
+ fi
+ emake prefix="${D}usr" install_gps_plugin
+ einstalldocs
+ dodoc -r features-* known-problems-*
+}
+
+src_test() {
+ # The test suite is in
+ # To run you need to have the ada compiler available as gcc
+ # Even in this case there are still some problem
+ # Going into the testsuite directory and running
+ # ./run.py -v -v
+ # run here (having enabled most USE flags)
+ true
+}
diff --git a/dev-ada/gnatcoll/gnatcoll-2017.ebuild b/dev-ada/gnatcoll/gnatcoll-2017.ebuild
new file mode 100644
index 000000000000..1be618293414
--- /dev/null
+++ b/dev-ada/gnatcoll/gnatcoll-2017.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+inherit multilib multiprocessing autotools python-single-r1
+
+MYP=${PN}-gpl-${PV}
+
+DESCRIPTION="GNAT Component Collection"
+HOMEPAGE="http://libre.adacore.com"
+SRC_URI="http://mirrors.cdn.adacore.com/art/591c45e2c7a447af2deed016
+ -> ${MYP}-src.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gmp gnat_2016 gnat_2017 gtk iconv postgresql pygobject projects readline
+ +shared sqlite static syslog tools"
+
+RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )
+ ${PYTHON_DEPS}
+ gmp? ( dev-libs/gmp:* )
+ gtk? (
+ dev-ada/gtkada[gnat_2016=,gnat_2017=,shared?,static?]
+ dev-libs/atk
+ dev-libs/glib
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf
+ x11-libs/gtk+:3
+ x11-libs/pango
+ )
+ pygobject? ( dev-python/pygobject:3[${PYTHON_USEDEP}] )
+ postgresql? ( dev-db/postgresql:* )
+ sqlite? ( dev-db/sqlite )
+ projects? (
+ >=dev-ada/gprbuild-2017[gnat_2016=,gnat_2017=,shared?,static?]
+ )"
+DEPEND="${RDEPEND}
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ pygobject? ( gtk )
+ !gnat_2016 gnat_2017"
+
+S="${WORKDIR}"/${MYP}-src
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_prepare() {
+ default
+ mv configure.{in,ac} || die
+ eautoreconf
+}
+
+src_configure() {
+ if use gnat_2016; then
+ GCC_PV=4.9.4
+ else
+ GCC_PV=6.3.0
+ fi
+ GCC=${CHOST}-gcc-${GCC_PV}
+ GNATMAKE=${CHOST}-gnatmake-${GCC_PV}
+ GNATCHOP=${CHOST}-gnatchop-${GCC_PV}
+ if use sqlite; then
+ myConf="--with-sqlite=$(get_libdir)"
+ else
+ myConf="--without-sqlite"
+ fi
+ if use gtk ; then
+ myConf="$myConf --with-gtk=3.0"
+ else
+ myConf="$myConf --with-gtk=no"
+ fi
+ econf \
+ GNATCHOP="${GNATCHOP}" \
+ GNATMAKE="${GNATMAKE}" \
+ --with-python \
+ $(use_with gmp) \
+ $(use_with iconv) \
+ $(use_with postgresql) \
+ $(use_enable projects) \
+ $(use_enable pygobject) \
+ $(use_enable readline gpl) \
+ $(use_enable readline) \
+ $(use_enable syslog) \
+ --with-python-exec=${EPYTHON} \
+ --enable-shared-python \
+ --disable-pygtk \
+ CC=${GCC} \
+ $myConf
+}
+
+src_compile() {
+ if use shared; then
+ emake PROCESSORS=$(makeopts_jobs) GPRBUILD_OPTIONS=-v GCC=${GCC} \
+ build_library_type/relocatable
+ fi
+ if use static; then
+ emake PROCESSORS=$(makeopts_jobs) GPRBUILD_OPTIONS=-v GCC=${GCC} \
+ build_library_type/static
+ fi
+ if use tools; then
+ emake PROCESSORS=$(makeopts_jobs) GPRBUILD_OPTIONS=-v GCC=${GCC} \
+ build_tools/static
+ fi
+ python_fix_shebang .
+}
+
+src_install() {
+ if use shared; then
+ emake prefix="${D}usr" install_library_type/relocatable
+ fi
+ if use static; then
+ emake prefix="${D}usr" install_library_type/static
+ fi
+ if use tools; then
+ emake prefix="${D}usr" install_tools/static
+ fi
+ emake prefix="${D}usr" install_gps_plugin
+ einstalldocs
+}
+
+src_test() {
+ # The test suite is in
+ # To run you need to have the ada compiler available as gcc
+ # Even in this case there are still some problem
+ # Going into the testsuite directory and running
+ # ./run.py -v -v
+ # run here (having enabled most USE flags)
+ true
+}
diff --git a/dev-ada/gnatcoll/metadata.xml b/dev-ada/gnatcoll/metadata.xml
new file mode 100644
index 000000000000..cca8442f43b8
--- /dev/null
+++ b/dev-ada/gnatcoll/metadata.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <use>
+ <flag name="gnat_2016">Compile with dev-lang/gnat-gpl-2016</flag>
+ <flag name="gnat_2017">Compile with dev-lang/gnat-gpl-2017</flag>
+ <flag name="postgresql">Adds support for postgresql</flag>
+ <flag name="projects">Adds support for projects</flag>
+ <flag name="pygobject">Adds support for pygobject</flag>
+ <flag name="shared">Build shared library</flag>
+ <flag name="static">Build static library</flag>
+ <flag name="tools">Build associated tools</flag>
+ </use>
+ <longdescription lang="en">
+ The reusable library known as the GNAT Component Collection (GNATColl)
+ is based on one main principle: general-purpose packages that are part
+ of the GNAT technology should also be available to GNAT user
+ application code. The compiler front end, the GNAT Programming Studio
+ (GPS) Interactive Development Environment, and the GNAT Tracker
+ web-based interface all served as sources for the components.
+
+ The GNATColl components complement the predefined Ada and GNAT
+ libraries and deal with a range of common programming issues including
+ string and text processing, memory management, and file handling.
+ Several of the components are especially useful in enterprise
+ applications.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-ada/gnatmem/Manifest b/dev-ada/gnatmem/Manifest
new file mode 100644
index 000000000000..5d64fe414ef4
--- /dev/null
+++ b/dev-ada/gnatmem/Manifest
@@ -0,0 +1,7 @@
+AUX gnatmem-2016-gentoo.patch 3139 SHA256 42fc3485cd7282945101d85f37cfbaabaa0387554c879c0c6f2dfa876bcd16b3 SHA512 6be363642a5b5244050b275c436eed25948a2b8eea936b0b41ecd9c312441281d325ae9b41b84affd30eae1172cb31ed719935e96b9adc21707b20b88dabc84e WHIRLPOOL cf71a1498b64c418d7385cf9f797de5ed5affeda9f65407a99a73283ce9b4f834c8afe32c7c1892d7a6356365913108a6e87f5d5aae5dc02119133599ec19101
+AUX gnatmem-2017-gentoo.patch 3139 SHA256 42fc3485cd7282945101d85f37cfbaabaa0387554c879c0c6f2dfa876bcd16b3 SHA512 6be363642a5b5244050b275c436eed25948a2b8eea936b0b41ecd9c312441281d325ae9b41b84affd30eae1172cb31ed719935e96b9adc21707b20b88dabc84e WHIRLPOOL cf71a1498b64c418d7385cf9f797de5ed5affeda9f65407a99a73283ce9b4f834c8afe32c7c1892d7a6356365913108a6e87f5d5aae5dc02119133599ec19101
+DIST gnatmem-gpl-2016-src.tar.gz 80104 SHA256 bd39c7b18e4f52fdd029b999f7e1af52d01c975063c28ae1ef6875e4fc5e224f SHA512 bc711af9eda55e89a22fee9dbe506a60fbdd718a9f47141a8d13ad4b97c4520c3988e3a55b6c85bb53098e542f655de9572aeefc99d88c41a2645d9f01b2828b WHIRLPOOL 8aee794c18efcbdbb50a4d58b9f247de30dea8d5b0a41034b1e20ad7786eefab5dfd14bf99994340a993d67989eab939ba78097d46933d841686d1bbc68fce0b
+DIST gnatmem-gpl-2017-src.tar.gz 80106 SHA256 11a27a66030b1a074875ccdaa0ffb06e86d687e1904ab0f5922e08bb488e5e7c SHA512 52ba2cfb24314f481ec07e351ff6d8883753dcfe5d0489a78536bf0b841d931055be02271a5d93b2ec15c52fd775d4b177a17de52f9472cc8f352bf044b28897 WHIRLPOOL 6599c8b77e89d7bc1f6b1eea459009aa2626173a7ebe47b65ead3ba76a109699ff8d0f27cfe1cea9fb0a8cb90cf9a897f70cf8af4647f21feec87b422e544c1b
+EBUILD gnatmem-2016.ebuild 798 SHA256 de4cf0d26fcd20f2594664ba9cfccb9d5311fef4d7659b7e93a5faac975b1195 SHA512 aa134d61620fac8b91ab2548f632ab35657c07cf73aa8a4cb93471a2907ea8efaa030f4a5e91b135d5df2ea922587bbc749488db52e08a543d4bc68a747d2e9e WHIRLPOOL 8af40f8a17495f68545896210db96bf9c6ee3bc680edf00cf8bc8e160707d51fc7e7000f2d3194f2d5f65db64cac520cae281ea6663b1562f4650b5988237a0f
+EBUILD gnatmem-2017.ebuild 798 SHA256 a791cc19d04062b5bfc424cd5e2a62bc1dd3d3804d40c5277a936e0466ec12dc SHA512 f1549b01ac1d8a23562e741cc2e1ac4034f49f60c72d247b6a9432d7903b442ad51f1a6bb72c35aa636820388b9c2696323fcd08ff48a92f941bd11906ee169c WHIRLPOOL dabfe74ee24119908b91e2a904f3ec97553eff03f22240df11aef97da37979365b30d7d39400934371e3a9183c6d9ffadce20549e8e536df6dead4aabf86b970
+MISC metadata.xml 1138 SHA256 506f95084c058ea226e7ecb151da5f3ccd7b653b26254004dc668e509c672550 SHA512 1b4794806992a99021a8c8c0d8c49374ca2ca676b5ac0dd60fd2e433d8f91225033255a59ab5e5adea2ed0fea20ce704ad7b7f2aa2c7538f8d504ba3df122b7b WHIRLPOOL 3bd9c99a5e490585aabe20668a17b1689a7800d2ae1f49b148dd2688e3d854e8c80c90c83cf24ca0760cf18eb0bf32a1daa7a655cc5ef9e329166c4ce2155132
diff --git a/dev-ada/gnatmem/files/gnatmem-2016-gentoo.patch b/dev-ada/gnatmem/files/gnatmem-2016-gentoo.patch
new file mode 100644
index 000000000000..69530dd24b23
--- /dev/null
+++ b/dev-ada/gnatmem/files/gnatmem-2016-gentoo.patch
@@ -0,0 +1,89 @@
+--- 1/configure.in.old 2016-12-08 20:57:53.942004080 +0100
++++ 1/configure.in 2016-12-08 21:00:10.393677257 +0100
+@@ -2,23 +2,14 @@
+ AC_INIT(gnatmem.gpr.in)
+ AC_CANONICAL_SYSTEM
+ AC_PROG_CC(gcc)
+-AC_CHECK_TOOL(GNATBIND,gnatbind,"no")
+-if test ${GNATBIND} = "no"; then
+- AC_MSG_ERROR(Ada compiler needed,1)
+-fi
++AC_CONFIG_HEADERS(config.h:config.in)
++AC_DEFINE_UNQUOTED(TARGET, "${target}", [Configured target name.])
+ AC_ARG_WITH(binutils-buildtree,
+ [AC_HELP_STRING(
+ [--with-binutils-buildtree=<dir>],
+ [Specifify location of binutils build tree])],
+ BINUTILS_OBJDIR=$withval,
+ BINUTILS_OBJDIR=no)
+-AC_MSG_CHECKING([for binutils build tree validity])
+-if test -f "$BINUTILS_OBJDIR/bfd/libbfd.a"; then
+- AC_MSG_RESULT(yes)
+-else
+- AC_MSG_RESULT(no)
+- AC_MSG_FAILURE([need valid binutils build tree directory (got $BINUTILS_OBJDIR)])
+-fi
+
+ AC_ARG_WITH(binutils-sources,
+ [AC_HELP_STRING(
+@@ -26,21 +21,6 @@
+ [Specifify location of binutils sources])],
+ BINUTILS_SRCDIR=$withval,
+ BINUTILS_SRCDIR=auto)
+-if test "$BINUTILS_SRCDIR" = "auto"; then
+- BINUTILS_SRCDIR=`cat "$BINUTILS_OBJDIR/Makefile" | sed -n -e "/^ *srcdir *=/ s/^ *srcdir *= *// p"`
+- case "$BINUTILS_SRC_DIR" in
+- /*) ;;
+- *) # assume we have relative path
+- BINUTILS_SRCDIR="$BINUTILS_OBJDIR/$BINUTILS_SRCDIR";;
+- esac
+-fi
+-AC_MSG_CHECKING([for binutils source dir validity])
+-if test -f "$BINUTILS_SRCDIR/bfd/Makefile.in"; then
+- AC_MSG_RESULT(yes)
+-else
+- AC_MSG_RESULT(no)
+- AC_MSG_FAILURE([need valid binutils sources directory])
+-fi
+
+ AC_SUBST(BINUTILS_OBJDIR)
+ AC_SUBST(BINUTILS_SRCDIR)
+--- gnatmem-gpl-2016-src/gnatmem.gpr.in.old 2017-02-02 22:15:30.247906007 +0100
++++ gnatmem-gpl-2016-src/gnatmem.gpr.in 2017-02-02 22:17:22.604974363 +0100
+@@ -10,8 +10,10 @@
+ for Languages use ("ada", "c");
+
+ package Compiler is
++ for Driver ("C") use External ("CC", "gcc");
+ for Default_Switches ("ada") use ("-O2", "-W", "-Wall", "-gnatpg");
+ for Default_Switches ("c") use ("-O2",
++ "-I..",
+ "-I" & BINUTILS_OBJDIR & "/binutils",
+ "-I" & BINUTILS_OBJDIR & "/bfd",
+ "-I" & BINUTILS_SRCDIR & "/include");
+@@ -19,8 +21,8 @@
+
+ package Linker is
+ for Default_Switches ("ada") use
+- (BINUTILS_OBJDIR & "/bfd/libbfd.a",
+- BINUTILS_OBJDIR & "/libiberty/libiberty.a",
++ ("-lbfd",
++ "-liberty",
+ "@LIBDL@",
+ "@LIBZ@");
+ end Linker;
+--- gnatmem-gpl-2015-src/src/libaddr2line.c.old 2017-01-04 21:03:36.185233702 +0100
++++ gnatmem-gpl-2015-src/src/libaddr2line.c 2017-01-04 21:04:17.680455390 +0100
+@@ -23,9 +23,9 @@
+ #include <string.h>
+ #include <stdlib.h>
+
+-#include "bfd.h"
+-#include "libiberty.h"
+-#include "demangle.h"
++#include <bfd.h>
++#include <libiberty/libiberty.h>
++#include <libiberty/demangle.h>
+
+ static asymbol **cur_syms; /* Symbol table. */
+ static bfd *cur_bfd;
diff --git a/dev-ada/gnatmem/files/gnatmem-2017-gentoo.patch b/dev-ada/gnatmem/files/gnatmem-2017-gentoo.patch
new file mode 100644
index 000000000000..69530dd24b23
--- /dev/null
+++ b/dev-ada/gnatmem/files/gnatmem-2017-gentoo.patch
@@ -0,0 +1,89 @@
+--- 1/configure.in.old 2016-12-08 20:57:53.942004080 +0100
++++ 1/configure.in 2016-12-08 21:00:10.393677257 +0100
+@@ -2,23 +2,14 @@
+ AC_INIT(gnatmem.gpr.in)
+ AC_CANONICAL_SYSTEM
+ AC_PROG_CC(gcc)
+-AC_CHECK_TOOL(GNATBIND,gnatbind,"no")
+-if test ${GNATBIND} = "no"; then
+- AC_MSG_ERROR(Ada compiler needed,1)
+-fi
++AC_CONFIG_HEADERS(config.h:config.in)
++AC_DEFINE_UNQUOTED(TARGET, "${target}", [Configured target name.])
+ AC_ARG_WITH(binutils-buildtree,
+ [AC_HELP_STRING(
+ [--with-binutils-buildtree=<dir>],
+ [Specifify location of binutils build tree])],
+ BINUTILS_OBJDIR=$withval,
+ BINUTILS_OBJDIR=no)
+-AC_MSG_CHECKING([for binutils build tree validity])
+-if test -f "$BINUTILS_OBJDIR/bfd/libbfd.a"; then
+- AC_MSG_RESULT(yes)
+-else
+- AC_MSG_RESULT(no)
+- AC_MSG_FAILURE([need valid binutils build tree directory (got $BINUTILS_OBJDIR)])
+-fi
+
+ AC_ARG_WITH(binutils-sources,
+ [AC_HELP_STRING(
+@@ -26,21 +21,6 @@
+ [Specifify location of binutils sources])],
+ BINUTILS_SRCDIR=$withval,
+ BINUTILS_SRCDIR=auto)
+-if test "$BINUTILS_SRCDIR" = "auto"; then
+- BINUTILS_SRCDIR=`cat "$BINUTILS_OBJDIR/Makefile" | sed -n -e "/^ *srcdir *=/ s/^ *srcdir *= *// p"`
+- case "$BINUTILS_SRC_DIR" in
+- /*) ;;
+- *) # assume we have relative path
+- BINUTILS_SRCDIR="$BINUTILS_OBJDIR/$BINUTILS_SRCDIR";;
+- esac
+-fi
+-AC_MSG_CHECKING([for binutils source dir validity])
+-if test -f "$BINUTILS_SRCDIR/bfd/Makefile.in"; then
+- AC_MSG_RESULT(yes)
+-else
+- AC_MSG_RESULT(no)
+- AC_MSG_FAILURE([need valid binutils sources directory])
+-fi
+
+ AC_SUBST(BINUTILS_OBJDIR)
+ AC_SUBST(BINUTILS_SRCDIR)
+--- gnatmem-gpl-2016-src/gnatmem.gpr.in.old 2017-02-02 22:15:30.247906007 +0100
++++ gnatmem-gpl-2016-src/gnatmem.gpr.in 2017-02-02 22:17:22.604974363 +0100
+@@ -10,8 +10,10 @@
+ for Languages use ("ada", "c");
+
+ package Compiler is
++ for Driver ("C") use External ("CC", "gcc");
+ for Default_Switches ("ada") use ("-O2", "-W", "-Wall", "-gnatpg");
+ for Default_Switches ("c") use ("-O2",
++ "-I..",
+ "-I" & BINUTILS_OBJDIR & "/binutils",
+ "-I" & BINUTILS_OBJDIR & "/bfd",
+ "-I" & BINUTILS_SRCDIR & "/include");
+@@ -19,8 +21,8 @@
+
+ package Linker is
+ for Default_Switches ("ada") use
+- (BINUTILS_OBJDIR & "/bfd/libbfd.a",
+- BINUTILS_OBJDIR & "/libiberty/libiberty.a",
++ ("-lbfd",
++ "-liberty",
+ "@LIBDL@",
+ "@LIBZ@");
+ end Linker;
+--- gnatmem-gpl-2015-src/src/libaddr2line.c.old 2017-01-04 21:03:36.185233702 +0100
++++ gnatmem-gpl-2015-src/src/libaddr2line.c 2017-01-04 21:04:17.680455390 +0100
+@@ -23,9 +23,9 @@
+ #include <string.h>
+ #include <stdlib.h>
+
+-#include "bfd.h"
+-#include "libiberty.h"
+-#include "demangle.h"
++#include <bfd.h>
++#include <libiberty/libiberty.h>
++#include <libiberty/demangle.h>
+
+ static asymbol **cur_syms; /* Symbol table. */
+ static bfd *cur_bfd;
diff --git a/dev-ada/gnatmem/gnatmem-2016.ebuild b/dev-ada/gnatmem/gnatmem-2016.ebuild
new file mode 100644
index 000000000000..5875024baefd
--- /dev/null
+++ b/dev-ada/gnatmem/gnatmem-2016.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multiprocessing autotools
+
+MYP=${PN}-gpl-${PV}-src
+
+DESCRIPTION="Monitors dynamic allocation and deallocation activity in a program"
+HOMEPAGE="http://libre.adacore.com/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/573995c8c7a447658e0affa2 -> ${MYP}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017"
+
+RDEPEND=""
+DEPEND="dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+
+S="${WORKDIR}"/${MYP}
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_prepare() {
+ default
+ mv configure.in configure.ac
+ eautoreconf
+}
+
+src_compile() {
+ gprbuild -Pgnatmem.gpr -j$(makeopts_jobs) \
+ -cargs:C ${CFLAGS} -cargs:Ada ${ADAFLAGS}
+}
+
+src_install() {
+ dobin obj/gnatmem
+}
diff --git a/dev-ada/gnatmem/gnatmem-2017.ebuild b/dev-ada/gnatmem/gnatmem-2017.ebuild
new file mode 100644
index 000000000000..ee97065ed89f
--- /dev/null
+++ b/dev-ada/gnatmem/gnatmem-2017.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multiprocessing autotools
+
+MYP=${PN}-gpl-${PV}-src
+
+DESCRIPTION="Monitors dynamic allocation and deallocation activity in a program"
+HOMEPAGE="http://libre.adacore.com/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/591c45e2c7a447af2deed033 -> ${MYP}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017"
+
+RDEPEND=""
+DEPEND="dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+
+S="${WORKDIR}"/${MYP}
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_prepare() {
+ default
+ mv configure.in configure.ac
+ eautoreconf
+}
+
+src_compile() {
+ gprbuild -Pgnatmem.gpr -j$(makeopts_jobs) \
+ -cargs:C ${CFLAGS} -cargs:Ada ${ADAFLAGS}
+}
+
+src_install() {
+ dobin obj/gnatmem
+}
diff --git a/dev-ada/gnatmem/metadata.xml b/dev-ada/gnatmem/metadata.xml
new file mode 100644
index 000000000000..0119f73e16b5
--- /dev/null
+++ b/dev-ada/gnatmem/metadata.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <use>
+ <flag name="gnat_2016">Compile with dev-lang/gnat-gpl-2016</flag>
+ <flag name="gnat_2017">Compile with dev-lang/gnat-gpl-2017</flag>
+ </use>
+ <longdescription lang="en">
+ The gnatmem utility monitors dynamic allocation and deallocation
+ activity in a program, and displays information about incorrect
+ deallocations and possible sources of memory leaks. It provides three
+ type of information:
+
+ General information concerning memory management, such as the total
+ number of allocations and deallocations, the amount of allocated memory
+ and the high water mark, i.e. the largest amount of allocated memory in
+ the course of program execution.
+ Backtraces for all incorrect deallocations, that is to say
+ deallocations which do not correspond to a valid allocation.
+ Information on each allocation that is potentially the origin of a
+ memory leak.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-ada/gprbuild/Manifest b/dev-ada/gprbuild/Manifest
new file mode 100644
index 000000000000..5d43c523123c
--- /dev/null
+++ b/dev-ada/gprbuild/Manifest
@@ -0,0 +1,11 @@
+AUX gprbuild-2016-gentoo.patch 8822 SHA256 c7edfa33c5ca2dec9730911164f2faf1c8bb70d128ea7055189e9a9956b779d6 SHA512 25e5819bd6763ccf85c24eb492d5d871b2ca6f807132f6a52d90abb9a60f9c70e31d1c988bd972ba842ed2b11dce31a53bff5c6e0254489a742381fbc42a3f43 WHIRLPOOL 000c6df1d7afe023d12b70d4081172916b3d74eabb7dd34e199c6f4a56272ad399ac2ddf058f8c7ae60efc2496dd85b77bb8668268bd642bc34423b4dacd5c79
+AUX gprbuild-2016.xml 4083 SHA256 6c7030e461260862e6de77dbfc9e3f9d8f951b0e8abb4dd31bda4119d47e3a4c SHA512 f6416039c980e7482f8fd45690a68cf190101ebf408bc253332d8a9557ede8d3da5af004fe7f6f2f416e74b6411232c2e17744d20e36cbe50a51d5b21b816b79 WHIRLPOOL f7994e95f9f4f7691026cb355c86eebd4db966de8f4738b42435f73f14c239653f11195c4d4f24eac8400936f7aebe7e1845fac2834fefea02327d5600996e7d
+AUX gprbuild-2017-gentoo.patch 1730 SHA256 f21a2731be486f0c70f10e48e3b4182d8eca8801efa00d8bf6cdc9961b36995b SHA512 452be15b98253266eb6564833df69478c507ce4d5f1ccd191909046b159c5e9fcc8d4b565d9fcffc757b54ec69eb695c4690f9944cd3ae60861afcded2178fb7 WHIRLPOOL 2d8dbcf21bd94c7c58b7387eae4231b4cb13467de645267b04bd2ec1706cf4fe5f362b47a24bf69dafe958eb711edd99fdc07094dac7ae0468d03717dc9d3ba8
+AUX gprbuild-2017.xml 3844 SHA256 fe319a46c96c1c15281e9d75a1e41048fe4ab798f8c4620b3663b6a8446d3d6e SHA512 13ba2efec9fa9fa0023d052163e186e9ccad1e8c80acff972568323b7e614dd9953f7c2a8f3a5d2f95eaee17072b1c50a2da5c3c2daafa81f5d2ab17fb95bf89 WHIRLPOOL fba1b030959fb1f8d18ea5ea05e982c26349fd972c01afb519421cbc1d562816ee0542e8d4525934e4866e362ca88fb11aa5d5c3c6d7948bb84169dc5bc38f26
+DIST gprbuild-gpl-2016-src.tar.gz 2142261 SHA256 d51659454bc0aaf1a9a9f1d05aab469a1f3d900065a4542123d3a59ab067275d SHA512 6b9e00248aaee90f3c00e7ce442c2b551b8532ec4d94a4471858d117feb27e91fd6d218995d4b71ee3f1f0677e9547d562fc2cda9ba80c3f6eb8d840ed56eb7e WHIRLPOOL 2afb9d3188f9498cf9cf9a6605081e27a843a15e4c4d5541616b8818757c6f8d458e8d6fbe97bcfc0607ac98d58ec2e4830d17aefd26458b3adcf1489a646945
+DIST gprbuild-gpl-2017-src.tar.gz 2454957 SHA256 0d0a48b8744e4f7230a85008d8213b583459046395704e8ab8c5cabedbf7c616 SHA512 12f3682d64ce0718de4940c1e71a4380b20021805d88543842dbf3b5ce5d518c23a6b2d868565579baf81efa1d8cf05c7778253162f0df5d7adc0eb1865c9f88 WHIRLPOOL 905b3a6d64a7f8a6970586b5d1c010badcc24c42e4b406ed7508e0470920b86d0992e80dc2326b10a314cb27519944f5199a7f0d75e72dae8fb096180c22a781
+DIST xmlada-gpl-2016-src.tar.gz 1440671 SHA256 ea64d8da2c5fb01a257fc5bf474b8d4ec40b01dc15b320b9fe260ff2db668ba4 SHA512 d1d7c3d91731394235aed4b80c91b1babe30d5f184282fae8087ee556318475e3923ed628b805693fc89a4d9bb219b0fb0937bc5024a742226da0245d36ed652 WHIRLPOOL b6ebb927d801394ad0b62d9538142c420ab33627582059466d4f64b12c3a45b1b5b489019aef715a59101370220a78507fe03d97c9e67233dfcc4f3aad1f16d7
+DIST xmlada-gpl-2017-src.tar.gz 1578393 SHA256 9b103157eb3ecd697b597ad4e60f56f39028bc2d6ea513d2dce8a3b0e65ac54b SHA512 371f6adc01550a4bb13204ec0404dc1165438db595f4346813e5a23a155de74c857c40c55adde173919c2fe35b3b91d78b235c9718ee86bc848e62ddfd7fa2b4 WHIRLPOOL 4b2da3fb799f8def6eb6383a9483258340368cc80e96e8ffab207c3c8849c1279a80cf68ca47c8a20ce91c084041bdfa95128a14321454055534d804272ef4dd
+EBUILD gprbuild-2016.ebuild 2506 SHA256 2d71f4bf08204d2350f92bc550e9fd89411ea133cab1cb36efc07a27f82b5ec1 SHA512 4334181f60b48a90f03795eccff460a658c1268a2d3576e0d68894adaf042f6f107d905cac4534958f837b5d60f46fc606aca1243b72a3c2b4491d9f95c44799 WHIRLPOOL 972c304f064a025bc8f347b2c3437da21e8dc51bac5c34878ff50cc7561260beb1db212273e7fac61eb67a53a6fb37bff405dbdcda0f27688806e866e599f45c
+EBUILD gprbuild-2017.ebuild 2993 SHA256 104f406b22eb36289f3168ffa21bbfe6f9569ea90a40c221154456aae3606f35 SHA512 6b31d85097144a6cfcb990ad4153ba090802c0c5cb31b52355c0efc2570bd7f425dcd9da5b5b583584d3995daeecbbacee0bf7f2ed3cd404d219d57013bbabf0 WHIRLPOOL 26eef355a8ba2e4dda92bcdc49e9f8c4701a21514171b8438471d483aa7696f65fe73422e44dd422ac6e98c24ef88775126350dcf7eabb663271b5975735cb96
+MISC metadata.xml 1157 SHA256 99e5595d4691fa5124ba42e93e8c8443396161d34854a27cc2943daf7bceb6d8 SHA512 47a7793368b83f9f9101df74a87214ae6615c163a6ffbb24644b102b427ca8559f39f16075b6b5048b8dade368f540f2b8e9b19b376905996b0915c74faff580 WHIRLPOOL b785a432b02183ec7d8ad88675d41ab35147bee3b6fc5892800bce680d346e8335b877c3bdf037642da7e42ff0cee043450c6af33380d429255368ef6b1db390
diff --git a/dev-ada/gprbuild/files/gprbuild-2016-gentoo.patch b/dev-ada/gprbuild/files/gprbuild-2016-gentoo.patch
new file mode 100644
index 000000000000..94973bfceac7
--- /dev/null
+++ b/dev-ada/gprbuild/files/gprbuild-2016-gentoo.patch
@@ -0,0 +1,235 @@
+diff -Naur gprbuild-gpl-2016-src.old/src/gprbuild-main.adb gprbuild-gpl-2016-src/src/gprbuild-main.adb
+--- gprbuild-gpl-2016-src.old/src/gprbuild-main.adb 2017-03-28 09:12:24.205058242 +0200
++++ gprbuild-gpl-2016-src/src/gprbuild-main.adb 2017-03-28 09:21:20.495344963 +0200
+@@ -52,7 +52,8 @@
+ with GPR.Tempdir; use GPR.Tempdir;
+ with GPR.Tree; use GPR.Tree;
+ with GPR.Util; use GPR.Util;
++with Gprbuild.Sigint_Intercepted;
+
+ procedure Gprbuild.Main is
+
+ use Stamps;
+@@ -124,11 +124,6 @@
+ 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.
+-
+ No_Object_Check_Switch : constant String := "--no-object-check";
+ Direct_Import_Only_Switch : constant String := "--direct-import-only";
+ Indirect_Imports_Switch : constant String := "--indirect-imports";
+@@ -1616,22 +1611,6 @@
+ end if;
+ end Scan_Arg;
+
+- ------------------------
+- -- Sigint_Intercepted --
+- ------------------------
+-
+- procedure Sigint_Intercepted is
+- begin
+- Put_Line ("*** Interrupted ***");
+- Delete_All_Temp_Files (Project_Tree.Shared);
+-
+- if Distributed_Mode then
+- Compilation.Slave.Unregister_Remote_Slaves (From_Signal => True);
+- end if;
+-
+- OS_Exit (1);
+- end Sigint_Intercepted;
+-
+ ----------------
+ -- Initialize --
+ ----------------
+@@ -2293,7 +2272,7 @@
+
+ -- And install Ctrl-C handler
+
+- Install_Int_Handler (Sigint_Intercepted'Unrestricted_Access);
++ Install_Int_Handler (Gprbuild.Sigint_Intercepted'Unrestricted_Access);
+
+ -- Check command line arguments. These will be overridden when looking
+ -- for the configuration file
+diff -Naur gprbuild-gpl-2016-src.old/src/gprbuild-sigint_intercepted.adb gprbuild-gpl-2016-src/src/gprbuild-sigint_intercepted.adb
+--- gprbuild-gpl-2016-src.old/src/gprbuild-sigint_intercepted.adb 1970-01-01 01:00:00.000000000 +0100
++++ gprbuild-gpl-2016-src/src/gprbuild-sigint_intercepted.adb 2017-03-28 09:20:00.661792854 +0200
+@@ -0,0 +1,20 @@
++------------------------
++-- Sigint_Intercepted --
++------------------------
++
++with Ada.Text_IO; use Ada.Text_IO;
++with Gpr_Util; use Gpr_Util;
++with Gprbuild.Compile;
++with Gprbuild.Compilation.Slave;
++
++procedure Gprbuild.Sigint_Intercepted is
++begin
++ Put_Line ("*** Interrupted ***");
++ Delete_All_Temp_Files (Project_Tree.Shared);
++
++ if Distributed_Mode then
++ Compilation.Slave.Unregister_Remote_Slaves (From_Signal => True);
++ end if;
++
++ OS_Exit (1);
++end Gprbuild.Sigint_Intercepted;
+diff -Naur gprbuild-gpl-2016-src.old/src/gprbuild-sigint_intercepted.ads gprbuild-gpl-2016-src/src/gprbuild-sigint_intercepted.ads
+--- gprbuild-gpl-2016-src.old/src/gprbuild-sigint_intercepted.ads 1970-01-01 01:00:00.000000000 +0100
++++ gprbuild-gpl-2016-src/src/gprbuild-sigint_intercepted.ads 2017-03-28 09:15:35.275616543 +0200
+@@ -0,0 +1,4 @@
++procedure Gprbuild.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.
+diff -Naur gprbuild-gpl-2016-src.old/src/gprinstall-main.adb gprbuild-gpl-2016-src/src/gprinstall-main.adb
+--- gprbuild-gpl-2016-src.old/src/gprinstall-main.adb 2017-03-28 09:12:24.205058242 +0200
++++ gprbuild-gpl-2016-src/src/gprinstall-main.adb 2017-03-28 09:25:36.515709886 +0200
+@@ -42,6 +42,7 @@
+ with Gprinstall.DB;
+ with Gprinstall.Install;
+ with Gprinstall.Uninstall;
++with Gprinstall.Sigint_Intercepted;
+
+ procedure Gprinstall.Main is
+
+@@ -94,11 +94,6 @@
+ 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.
+-
+ ---------------
+ -- Copyright --
+ ---------------
+@@ -514,17 +509,6 @@
+ end if;
+ end Scan_Arg;
+
+- ------------------------
+- -- Sigint_Intercepted --
+- ------------------------
+-
+- procedure Sigint_Intercepted is
+- begin
+- Put_Line ("*** Interrupted ***");
+- Delete_All_Temp_Files (Project_Tree.Shared);
+- OS_Exit (1);
+- end Sigint_Intercepted;
+-
+ ----------------
+ -- Initialize --
+ ----------------
+@@ -862,7 +846,7 @@
+
+ -- And install Ctrl-C handler
+
+- Install_Int_Handler (Sigint_Intercepted'Unrestricted_Access);
++ Install_Int_Handler (Gprinstall.Sigint_Intercepted'Unrestricted_Access);
+
+ -- Check command line arguments. These will be overridden when looking
+ -- for the configuration file
+diff -Naur gprbuild-gpl-2016-src.old/src/gprinstall-sigint_intercepted.adb gprbuild-gpl-2016-src/src/gprinstall-sigint_intercepted.adb
+--- gprbuild-gpl-2016-src.old/src/gprinstall-sigint_intercepted.adb 1970-01-01 01:00:00.000000000 +0100
++++ gprbuild-gpl-2016-src/src/gprinstall-sigint_intercepted.adb 2017-03-28 09:24:50.307545617 +0200
+@@ -0,0 +1,12 @@
++------------------------
++-- Sigint_Intercepted --
++------------------------
++
++with Ada.Text_IO; use Ada.Text_IO;
++
++procedure Gprinstall.Sigint_Intercepted is
++begin
++ Put_Line ("*** Interrupted ***");
++ Delete_All_Temp_Files (Project_Tree.Shared);
++ OS_Exit (1);
++end Gprinstall.Sigint_Intercepted;
+diff -Naur gprbuild-gpl-2016-src.old/src/gprinstall-sigint_intercepted.ads gprbuild-gpl-2016-src/src/gprinstall-sigint_intercepted.ads
+--- gprbuild-gpl-2016-src.old/src/gprinstall-sigint_intercepted.ads 1970-01-01 01:00:00.000000000 +0100
++++ gprbuild-gpl-2016-src/src/gprinstall-sigint_intercepted.ads 2017-03-28 09:22:18.462294461 +0200
+@@ -0,0 +1,4 @@
++procedure Gprinstall.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.
+--- gprbuild-gpl-2016-src/Makefile.in.old 2017-01-19 19:52:41.242907252 +0100
++++ gprbuild-gpl-2016-src/Makefile.in 2017-01-19 19:54:45.822646333 +0100
+@@ -25,12 +25,12 @@
+ host=@host@
+ target=@target@
+ build=@build@
+-prefix=@prefix@
++prefix=$(DESTDIR)@prefix@
+ srcdir=@srcdir@
+ objdir=@objdir@
+ exec_prefix=@exec_prefix@
+ datarootdir=@datarootdir@
+-datadir=@datadir@
++datadir=$(DESTDIR)@datadir@
+ bindir=@bindir@
+ libdir=@libdir@
+ libexecdir=@libexecdir@
+@@ -66,7 +66,7 @@
+ .PHONY: all distall gprbuild gprconfig gprclean gprinstall gprname gprls
+
+ all:
+- $(GPRBUILD_BUILDER)
++ $(GPRBUILD_BUILDER) -cargs:C $(CFLAGS) -cargs:Ada $(ADAFLAGS)
+
+ distall: all install install.dist
+
+@@ -173,13 +173,13 @@
+ libgpr.build: $(foreach t, $(LIBGPR_TYPES), libgpr.build.$(t))
+
+ libgpr.build.shared:
+- ${BUILDER} -XLIBRARY_TYPE=relocatable -P$(srcdir)/gpr/gpr.gpr
++ ${BUILDER} -XLIBRARY_TYPE=relocatable -P$(srcdir)/gpr/gpr.gpr -cargs:Ada $(ADAFLAGS)
+
+ libgpr.build.static:
+- ${BUILDER} -XLIBRARY_TYPE=static -P$(srcdir)/gpr/gpr.gpr
++ ${BUILDER} -XLIBRARY_TYPE=static -P$(srcdir)/gpr/gpr.gpr -cargs:Ada $(ADAFLAGS)
+
+ libgpr.build.static-pic:
+- ${BUILDER} -XLIBRARY_TYPE=static-pic -P$(srcdir)/gpr/gpr.gpr
++ ${BUILDER} -XLIBRARY_TYPE=static-pic -P$(srcdir)/gpr/gpr.gpr -cargs:Ada $(ADAFLAGS)
+
+ libgpr.install: $(foreach t, $(LIBGPR_TYPES), libgpr.install.$(t))
+
+--- gprbuild-gpl-2015-src/gprbuild.gpr.old 2017-01-11 21:44:59.795997896 +0100
++++ gprbuild-gpl-2015-src/gprbuild.gpr 2017-01-11 21:45:07.971998651 +0100
+@@ -66,6 +66,7 @@
+ for Switches ("gpr*.ad?") use
+ Compiler'Default_Switches ("Ada") & ("-g1");
+ end case;
++ for Driver ("C") use External ("CC", "gcc");
+ end Compiler;
+
+ package Binder is
+ make BUILDER="$(BUILDER)" BUILD="$(BUILD)"
+--- gprbuild-gpl-2016-src/gpr/src/gpr-conf.adb.old 2017-09-12 21:29:25.945747949 +0200
++++ gprbuild-gpl-2016-src/gpr/src/gpr-conf.adb 2017-09-12 21:35:16.299101715 +0200
+@@ -1839,6 +1839,16 @@
+ end;
+ end if;
+
++ Compiler_Root := First_Compiler_Root;
++ while Compiler_Root.Next /= null loop
++ Compiler_Root := Compiler_Root.Next;
++ end loop;
++ Compiler_Root.Next :=
++ new Compiler_Root_Data'
++ (Root => new String'("/usr"),
++ Runtimes => null,
++ Next => null);
++
+ -- Now that the compiler roots are in a correct order, add the
+ -- directories corresponding to these compiler roots in the
+ -- project path.
diff --git a/dev-ada/gprbuild/files/gprbuild-2016.xml b/dev-ada/gprbuild/files/gprbuild-2016.xml
new file mode 100644
index 000000000000..7d321e03b6a1
--- /dev/null
+++ b/dev-ada/gprbuild/files/gprbuild-2016.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" ?>
+<gprconfig>
+ <compiler_description>
+ <name>GNAT-@VER@</name>
+ <executable prefix="1">gnatmake-@VER@</executable>
+ <version>
+ <external>${PREFIX}gnatls-@VER@ -v --version</external>
+ <grep regexp="^GNATLS.+?(\d+(\.\d+)?)" group="1"></grep>
+ </version>
+ <languages>Ada</languages>
+ <variable name="gcc_version">
+ <external>${PREFIX}gcc-@VER@ -v</external>
+ <grep regexp="^[-\w]*gcc \S+ (\S+)" group="1"></grep>
+ </variable>
+ <runtimes default="default,kernel,native">
+ <directory group="default" >\.\./lib/gcc(-lib)?/$TARGET/$gcc_version/adalib/</directory>
+ <directory group="default" contents="^rts-">\.\./lib/gcc(-lib)?/$TARGET/$gcc_version/ada_object_path</directory>
+ <directory group="2" >\.\./lib/gcc(-lib)?/$TARGET/$gcc_version/rts-(.*)/adalib/</directory>
+ <directory group="1" >\.\./$TARGET/lib/gnat/(.*)/adalib/</directory>
+ </runtimes>
+ <target>
+ <external>${PREFIX}gcc-@VER@ -dumpmachine</external>
+ <grep regexp="[^\r\n]+"></grep>
+ </target>
+ </compiler_description>
+
+ <configuration>
+ <compilers>
+ <compiler name="GNAT-@VER@" />
+ </compilers>
+ <config>
+ package Naming is
+ for Spec_Suffix ("Ada") use ".ads";
+ for Body_Suffix ("Ada") use ".adb";
+ for Casing use "lowercase";
+ for Dot_Replacement use "-";
+ end Naming;
+
+ package Compiler is
+ for Driver ("Ada") use "${PATH(ada)}${PREFIX(ada)}gcc-@VER@";
+ for Language_Kind ("Ada") use "unit_based";
+ for Dependency_Kind ("Ada") use "ALI_File";
+ for Leading_Required_Switches ("Ada") use
+ ("-c", "-x", "ada", "-gnatA")
+ &amp; Compiler'Leading_Required_Switches ("Ada");
+ for Mapping_File_Switches ("Ada") use ("-gnatem=");
+ for Mapping_Spec_Suffix ("Ada") use "%s";
+ for Mapping_Body_Suffix ("Ada") use "%b";
+ for Config_File_Switches ("Ada") use ("-gnatec=");
+ for Include_Path_File ("Ada") use "ADA_PRJ_INCLUDE_FILE";
+ for Multi_Unit_Switches ("Ada") use ("-gnateI");
+ for Multi_Unit_Object_Separator ("Ada") use "~";
+ for Config_Body_File_Name ("Ada") use
+ "pragma Source_File_Name_Project (%u, Body_File_Name => ""%f"");";
+ for Config_Spec_File_Name ("Ada") use
+ "pragma Source_File_Name_Project (%u, Spec_File_Name => ""%f"");";
+ for Config_Body_File_Name_Index ("Ada") use
+ "pragma Source_File_Name_Project (%u, Body_File_Name => ""%f"", Index => %i);";
+ for Config_Spec_File_Name_Index ("Ada") use
+ "pragma Source_File_Name_Project (%u, Spec_File_Name => ""%f"", Index => %i);";
+ for Config_Body_File_Name_Pattern ("Ada") use
+ "pragma Source_File_Name_Project " &amp;
+ " (Body_File_Name => ""*%b""," &amp;
+ " Casing => %c," &amp;
+ " Dot_Replacement => ""%d"");";
+ for Config_Spec_File_Name_Pattern ("Ada") use
+ "pragma Source_File_Name_Project " &amp;
+ " (Spec_File_Name => ""*%s""," &amp;
+ " Casing => %c," &amp;
+ " Dot_Replacement => ""%d"");";
+ for Config_File_Unique ("Ada") use "False";
+ for PIC_Option ("Ada") use ("-fPIC");
+ end Compiler;
+
+ package Binder is
+ for Objects_Path_File ("Ada") use "ADA_PRJ_OBJECTS_FILE";
+ for Driver ("Ada") use
+ "${GPRCONFIG_PREFIX}libexec/gprbuild/gprbind";
+ for Switches ("Ada") use ("--gnatbind_path=gnatbind-@VER@");
+ end Binder;
+
+ package Clean is
+ for Source_Artifact_Extensions ("Ada")
+ use (".dg", ".rep", ".stdout", ".stderr");
+ for Object_Artifact_Extensions ("Ada") use (".s", ".ci", ".gcno");
+ end Clean;
+
+ for Toolchain_Version ("Ada") use "GNAT ${VERSION(ada)}";
+ for Runtime_Library_Dir ("Ada") use "${RUNTIME_DIR(ada)}/adalib/";
+ for Runtime_Source_Dirs ("Ada") use ("${RUNTIME_DIR(ada)}/adainclude/");
+ for Library_Encapsulated_Supported use "true";
+ </config>
+ </configuration>
+</gprconfig>
diff --git a/dev-ada/gprbuild/files/gprbuild-2017-gentoo.patch b/dev-ada/gprbuild/files/gprbuild-2017-gentoo.patch
new file mode 100644
index 000000000000..c784920eaf3b
--- /dev/null
+++ b/dev-ada/gprbuild/files/gprbuild-2017-gentoo.patch
@@ -0,0 +1,42 @@
+--- gprbuild-2017/gpr/gpr.gpr.old 2017-05-27 20:59:07.061135892 +0200
++++ gprbuild-2017/gpr/gpr.gpr 2017-05-27 20:59:38.022638398 +0200
+@@ -67,6 +67,7 @@
+ for Switches ("gpr*.ad?") use
+ Compiler'Default_Switches ("Ada") & ("-g1");
+ end case;
++ for Driver ("C") use External ("CC", "gcc");
+ end Compiler;
+
+ end GPR;
+--- gprbuild-17.0/src/gprbuild-post_compile.adb.old 2017-05-18 14:17:06.114797015 +0200
++++ gprbuild-17.0/src/gprbuild-post_compile.adb 2017-05-18 14:18:55.466956852 +0200
+@@ -4744,7 +4744,9 @@
+ No_Create => Proj.Is_Aggregated);
+ end if;
+
+- Shared_Libs := not Is_Static (Proj.Proj);
++ if not Is_Static (Proj.Proj) then
++ Shared_Libs := True;
++ end if;
+
+ end if;
+ end if;
+--- gprbuild-gpl-2016-src/gpr/src/gpr-conf.adb.old 2017-09-12 21:29:25.945747949 +0200
++++ gprbuild-gpl-2016-src/gpr/src/gpr-conf.adb 2017-09-12 21:35:16.299101715 +0200
+@@ -1839,6 +1839,16 @@
+ end;
+ end if;
+
++ Compiler_Root := First_Compiler_Root;
++ while Compiler_Root.Next /= null loop
++ Compiler_Root := Compiler_Root.Next;
++ end loop;
++ Compiler_Root.Next :=
++ new Compiler_Root_Data'
++ (Root => new String'("/usr"),
++ Runtimes => null,
++ Next => null);
++
+ -- Now that the compiler roots are in a correct order, add the
+ -- directories corresponding to these compiler roots in the
+ -- project path.
diff --git a/dev-ada/gprbuild/files/gprbuild-2017.xml b/dev-ada/gprbuild/files/gprbuild-2017.xml
new file mode 100644
index 000000000000..9e1e47b512ef
--- /dev/null
+++ b/dev-ada/gprbuild/files/gprbuild-2017.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" ?>
+<gprconfig>
+ <compiler_description>
+ <name>GNAT-@VER@</name>
+ <executable prefix="1">gnatls-@VER@</executable>
+ <version>
+ <external>${PREFIX}gnatls-@VER@ -v --version</external>
+ <grep regexp="^GNATLS.+?(\d+(\.\d+)?)" group="1"></grep>
+ </version>
+ <languages>Ada</languages>
+ <variable name="gcc_version">
+ <external>${PREFIX}gcc-@VER@ -v</external>
+ <grep regexp="^[-\w]*gcc \S+ (\S+)" group="1"></grep>
+ </variable>
+ <runtimes default="default,kernel,native">
+ <directory group="default" >\.\./lib/gcc(-lib)?/$TARGET/$gcc_version/adalib/</directory>
+ <directory group="default" contents="^rts-">\.\./lib/gcc(-lib)?/$TARGET/$gcc_version/ada_object_path</directory>
+ <directory group="2" >\.\./lib/gcc(-lib)?/$TARGET/$gcc_version/rts-(.*)/adalib/</directory>
+ <directory group="1" >\.\./$TARGET/lib/gnat/(.*)/adalib/</directory>
+ </runtimes>
+ <target>
+ <external>${PREFIX}gcc-@VER@ -dumpmachine</external>
+ <grep regexp="[^\r\n]+"></grep>
+ </target>
+ </compiler_description>
+
+ <configuration>
+ <compilers>
+ <compiler name="GNAT-@VER@" />
+ </compilers>
+ <config>
+ package Compiler is
+ for Driver ("Ada") use "${PATH(ada)}${PREFIX(ada)}gcc-@VER@";
+ for Language_Kind ("Ada") use "unit_based";
+ for Dependency_Kind ("Ada") use "ALI_File";
+ for Leading_Required_Switches ("Ada") use
+ ("-c", "-x", "ada", "-gnatA")
+ &amp; Compiler'Leading_Required_Switches ("Ada");
+ for Mapping_File_Switches ("Ada") use ("-gnatem=");
+ for Mapping_Spec_Suffix ("Ada") use "%s";
+ for Mapping_Body_Suffix ("Ada") use "%b";
+ for Config_File_Switches ("Ada") use ("-gnatec=");
+ for Include_Path_File ("Ada") use "ADA_PRJ_INCLUDE_FILE";
+ for Multi_Unit_Switches ("Ada") use ("-gnateI");
+ for Multi_Unit_Object_Separator ("Ada") use "~";
+ for Config_Body_File_Name ("Ada") use
+ "pragma Source_File_Name_Project (%u, Body_File_Name => ""%f"");";
+ for Config_Spec_File_Name ("Ada") use
+ "pragma Source_File_Name_Project (%u, Spec_File_Name => ""%f"");";
+ for Config_Body_File_Name_Index ("Ada") use
+ "pragma Source_File_Name_Project (%u, Body_File_Name => ""%f"", Index => %i);";
+ for Config_Spec_File_Name_Index ("Ada") use
+ "pragma Source_File_Name_Project (%u, Spec_File_Name => ""%f"", Index => %i);";
+ for Config_Body_File_Name_Pattern ("Ada") use
+ "pragma Source_File_Name_Project " &amp;
+ " (Body_File_Name => ""*%b""," &amp;
+ " Casing => %c," &amp;
+ " Dot_Replacement => ""%d"");";
+ for Config_Spec_File_Name_Pattern ("Ada") use
+ "pragma Source_File_Name_Project " &amp;
+ " (Spec_File_Name => ""*%s""," &amp;
+ " Casing => %c," &amp;
+ " Dot_Replacement => ""%d"");";
+ for Config_File_Unique ("Ada") use "False";
+ for PIC_Option ("Ada") use ("-fPIC");
+ for Leading_Required_Switches ("Ada") use
+ Compiler'Leading_Required_Switches ("Ada") &amp; ("--RTS=${RUNTIME_DIR(ada)}");
+ end Compiler;
+
+ package Binder is
+ for Objects_Path_File ("Ada") use "ADA_PRJ_OBJECTS_FILE";
+ for Driver ("Ada") use
+ "${GPRCONFIG_PREFIX}libexec/gprbuild/gprbind";
+ for Switches ("Ada") use ("--gnatbind_path=gnatbind-@VER@");
+ for Required_Switches ("Ada") use
+ Binder'Required_Switches ("Ada") &amp; ("--RTS=${RUNTIME_DIR(ada)}");
+ end Binder;
+
+ for Toolchain_Version ("Ada") use "GNAT ${VERSION(ada)}";
+
+for Runtime_Dir ("Ada") use "${RUNTIME_DIR(ada)}";
+ for Library_Encapsulated_Supported use "true";
+ </config>
+ </configuration>
+</gprconfig>
diff --git a/dev-ada/gprbuild/gprbuild-2016.ebuild b/dev-ada/gprbuild/gprbuild-2016.ebuild
new file mode 100644
index 000000000000..60d1b029292a
--- /dev/null
+++ b/dev-ada/gprbuild/gprbuild-2016.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs multiprocessing
+
+MYP=${PN}-gpl-${PV}
+
+DESCRIPTION="Multi-Language Management"
+HOMEPAGE="http://libre.adacore.com/"
+SRC_URI="
+ http://mirrors.cdn.adacore.com/art/57399662c7a447658e0affa8
+ -> ${MYP}-src.tar.gz
+ bootstrap? (
+ http://mirrors.cdn.adacore.com/art/57399978c7a447658e0affc0
+ -> xmlada-gpl-${PV}-src.tar.gz )"
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="bootstrap gnat_2016 gnat_2017 +shared static static-pic"
+
+DEPEND="!bootstrap? ( dev-ada/xmlada[static,gnat_2016=,gnat_2017=] )
+ gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"/${MYP}-src
+
+REQUIRED_USE="bootstrap? ( !shared !static !static-pic )
+ ^^ ( gnat_2016 gnat_2017 )"
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_prepare() {
+ if use gnat_2016; then
+ GCC_PV=4.9.4
+ else
+ GCC_PV=6.3.0
+ fi
+ sed -e "s:@VER@:${GCC_PV}:g" "${FILESDIR}"/${P}.xml > gnat-${GCC_PV}.xml
+ default
+}
+
+src_configure() {
+ if ! use bootstrap ; then
+ default
+ fi
+}
+
+bin_progs="gprbuild gprconfig gprclean gprinstall gprname gprls"
+lib_progs="gprlib gprbind"
+
+src_compile() {
+ GCC=${CHOST}-gcc-${GCC_PV}
+ if use bootstrap; then
+ GNATMAKE=${CHOST}-gnatmake-${GCC_PV}
+ local xmlada_src="../xmlada-gpl-${PV}-src"
+ incflags="-Isrc -Igpr/src -I${xmlada_src}/sax -I${xmlada_src}/dom \
+ -I${xmlada_src}/schema -I${xmlada_src}/unicode \
+ -I${xmlada_src}/input_sources"
+ ${GCC} -c ${CFLAGS} src/gpr_imports.c -o gpr_imports.o || die
+ for bin in ${bin_progs}; do
+ ${GNATMAKE} -j$(makeopts_jobs) ${incflags} $ADAFLAGS ${bin}-main \
+ -o ${bin} -largs gpr_imports.o || die
+ done
+ for lib in $lib_progs; do
+ ${GNATMAKE} -j$(makeopts_jobs) ${incflags} ${lib} $ADAFLAGS \
+ -largs gpr_imports.o || die
+ done
+ else
+ emake PROCESSORS=$(makeopts_jobs) all
+ for kind in shared static static-pic; do
+ if use ${kind}; then
+ emake PROCESSORS=$(makeopts_jobs) libgpr.build.${kind}
+ fi
+ done
+ fi
+}
+
+src_install() {
+ if use bootstrap; then
+ dobin ${bin_progs}
+ exeinto /usr/libexec/gprbuild
+ doexe ${lib_progs}
+ insinto /usr/share/gprconfig
+ doins share/gprconfig/*
+ insinto /usr/share/gpr
+ doins share/_default.gpr
+ else
+ default
+ for kind in shared static static-pic; do
+ if use ${kind}; then
+ emake DESTDIR="${D}" libgpr.install.${kind}
+ fi
+ done
+ fi
+ insinto /usr/share/gprconfig
+ doins gnat-${GCC_PV}.xml
+ einstalldocs
+}
diff --git a/dev-ada/gprbuild/gprbuild-2017.ebuild b/dev-ada/gprbuild/gprbuild-2017.ebuild
new file mode 100644
index 000000000000..a6101175e17e
--- /dev/null
+++ b/dev-ada/gprbuild/gprbuild-2017.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs multiprocessing
+
+MYP=${PN}-gpl-${PV}
+
+DESCRIPTION="Multi-Language Management"
+HOMEPAGE="http://libre.adacore.com/"
+SRC_URI="
+ http://mirrors.cdn.adacore.com/art/591c45e2c7a447af2deecff7
+ -> ${MYP}-src.tar.gz
+ bootstrap? (
+ http://mirrors.cdn.adacore.com/art/591aeb88c7a4473fcbb154f8
+ -> xmlada-gpl-${PV}-src.tar.gz )"
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="bootstrap gnat_2016 gnat_2017 +shared static static-pic"
+
+DEPEND="!bootstrap? ( dev-ada/xmlada[static,gnat_2016=,gnat_2017=] )
+ gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"/${MYP}-src
+
+REQUIRED_USE="bootstrap? ( !shared !static !static-pic )
+ ^^ ( gnat_2016 gnat_2017 )"
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_prepare() {
+ if use gnat_2016; then
+ GCC_PV=4.9.4
+ else
+ GCC_PV=6.3.0
+ fi
+ sed -e "s:@VER@:${GCC_PV}:g" "${FILESDIR}"/${P}.xml > gnat-${GCC_PV}.xml
+ default
+}
+
+src_configure() {
+ emake prefix="${D}"usr setup
+}
+
+bin_progs="gprbuild gprconfig gprclean gprinstall gprname gprls"
+lib_progs="gprlib gprbind"
+
+src_compile() {
+ GCC=${CHOST}-gcc-${GCC_PV}
+ if use bootstrap; then
+ GNATMAKE=${CHOST}-gnatmake-${GCC_PV}
+ local xmlada_src="../xmlada-gpl-${PV}-src"
+ incflags="-Isrc -Igpr/src -I${xmlada_src}/sax -I${xmlada_src}/dom \
+ -I${xmlada_src}/schema -I${xmlada_src}/unicode \
+ -I${xmlada_src}/input_sources"
+ ${GCC} -c ${CFLAGS} gpr/src/gpr_imports.c -o gpr_imports.o || die
+ for bin in ${bin_progs}; do
+ ${GNATMAKE} -j$(makeopts_jobs) ${incflags} $ADAFLAGS ${bin}-main \
+ -o ${bin} -largs gpr_imports.o || die
+ done
+ for lib in $lib_progs; do
+ ${GNATMAKE} -j$(makeopts_jobs) ${incflags} ${lib} $ADAFLAGS \
+ -largs gpr_imports.o || die
+ done
+ else
+ gprbuild -p -m -j$(makeopts_jobs) -XBUILD=production -v \
+ gprbuild.gpr -XLIBRARY_TYPE=static -XXMLADA_BUILD=static \
+ -cargs:C ${CFLAGS} -cargs:Ada ${ADAFLAGS} || die
+ if use shared; then
+ gprbuild -p -m -j$(makeopts_jobs) -XBUILD=production -v \
+ -XLIBRARY_TYPE=relocatable -XXMLADA_BUILD=relocatable \
+ gpr/gpr.gpr -cargs:C ${CFLAGS} -cargs:Ada ${ADAFLAGS} || die
+ fi
+ for kind in static static-pic; do
+ if use ${kind}; then
+ gprbuild -p -m -j$(makeopts_jobs) -XBUILD=production -v \
+ -XLIBRARY_TYPE=${kind} -XXMLADA_BUILD=${kind} gpr/gpr.gpr \
+ -cargs:C ${CFLAGS} -cargs:Ada ${ADAFLAGS} || die
+ fi
+ done
+ fi
+}
+
+src_install() {
+ if use bootstrap; then
+ dobin ${bin_progs}
+ exeinto /usr/libexec/gprbuild
+ doexe ${lib_progs}
+ insinto /usr/share/gprconfig
+ doins share/gprconfig/*
+ insinto /usr/share/gpr
+ doins share/_default.gpr
+ else
+ default
+ for kind in shared static static-pic; do
+ if use ${kind}; then
+ emake DESTDIR="${D}" libgpr.install.${kind}
+ fi
+ done
+ rm "${D}"usr/doinstall || die
+ fi
+ insinto /usr/share/gprconfig
+ doins gnat-${GCC_PV}.xml
+ einstalldocs
+}
diff --git a/dev-ada/gprbuild/metadata.xml b/dev-ada/gprbuild/metadata.xml
new file mode 100644
index 000000000000..4cf88165a988
--- /dev/null
+++ b/dev-ada/gprbuild/metadata.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <use>
+ <flag name="gnat_2016">Compile with dev-lang/gnat-gpl-2016</flag>
+ <flag name="gnat_2017">Compile with dev-lang/gnat-gpl-2017</flag>
+ <flag name="shared">Build shared library</flag>
+ <flag name="static">Build static library</flag>
+ <flag name="static-pic">Build static library with pic code</flag>
+ </use>
+ <longdescription lang="en">
+ GPRbuild is an advanced software tool designed to help automate the
+ construction of multi-language systems. It removes complexity from
+ multi-language development by allowing developers to quickly and easily
+ compile and link software written in a combination of languages
+ including Ada, Assembler, C, C++, and Fortran. Easily extendable by
+ users to cover new toolchains and languages it is primarily aimed at
+ projects of all sizes organized into subsystems and libraries and is
+ particularly well-suited for compiled languages.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-ada/gps-bin/Manifest b/dev-ada/gps-bin/Manifest
new file mode 100644
index 000000000000..30df2a9a83e9
--- /dev/null
+++ b/dev-ada/gps-bin/Manifest
@@ -0,0 +1,3 @@
+DIST gnat-gpl-2016-x86_64-linux-bin.tar.gz 372813330 SHA256 d083c01e054d0aeda7c67967306cfa5a8df12268664f9098a2d9b331aa24dfe7 SHA512 5115ac3be0badc5125ee048a98230f18363d72107da3325ce602c0e618cee2e3646a0decc00a2388f14bc61bfed51dd0622f365f5f7ee8b0cec2187ebcf8e075 WHIRLPOOL 7802a81533e5faad9c6913a2feae4e57fa4ce54ad7b561b23fbb64fdd9fa4bf3753e3c89e8d8fe15dce7a1294def8a5a4252f6aa66b4aef98d5669c2d08e0dd5
+EBUILD gps-bin-2016.ebuild 1833 SHA256 5a1dbbf2b5aaae1794a732562ee6bef9886c9b92c42e94851f03ac59ed409160 SHA512 4b5c41fa1755570920e91bb2224ce9007656f55b46df3b425dcefd8ffbebdab9ef0814a0214a6d9b197984b5649b30c8858ea69ca66e678cf588544090aeab17 WHIRLPOOL ebc506466f19597f212aa67a7f22f9ecee65a0d9426dcf1b61d3dc9c3eeaaada7739653aedacad2a52a58515b78255d385a4b3dfcc67edd8669a7e31f22a4a02
+MISC metadata.xml 1001 SHA256 75c363fd37ab0a74106e9bbbc284f8d291589736b8a843259965d1fcba9df329 SHA512 5dbed34739c5dd8d3900285af76acf0c0029ace65789be6e94ccee6f67514f8de1c21dfcb7a0ee2990bd9427f5360672367ca865d572363147cf8f586fa25499 WHIRLPOOL d2e359dbe47d55826148e2971a5794807c34cc75992451a23fe09543bf285eb381d00bc732f593f6775a4d4433c3308a6ebaf664b5fe7c6663c2c4aac60ab338
diff --git a/dev-ada/gps-bin/gps-bin-2016.ebuild b/dev-ada/gps-bin/gps-bin-2016.ebuild
new file mode 100644
index 000000000000..25fd9b696789
--- /dev/null
+++ b/dev-ada/gps-bin/gps-bin-2016.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit toolchain-funcs
+
+MY_P=gnat-gpl-2016-x86_64-linux-bin
+
+DESCRIPTION="The GNAT Programming Studio"
+HOMEPAGE="http://libre.adacore.com/tools/gps/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/5739cefdc7a447658e0b016b -> ${MY_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}
+ dev-ada/gnatcoll[iconv,postgresql,projects,readline,sqlite]
+ dev-ada/gprbuild[shared]
+ dev-db/sqlite
+ dev-lang/gnat-gpl
+ dev-libs/atk
+ dev-libs/glib
+ dev-libs/gobject-introspection
+ dev-libs/libffi
+ media-libs/fontconfig
+ media-libs/freetype
+ sys-devel/llvm
+ sys-devel/clang
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf
+ x11-libs/gtk+
+ x11-libs/pango
+ x11-themes/adwaita-icon-theme
+ x11-themes/hicolor-icon-theme"
+
+S="${WORKDIR}"/${MY_P}
+
+pkg_setup() {
+ GCC=${ADA:-$(tc-getCC)}
+ GNATLS="${GCC/gcc/gnatls}"
+ GNAT="${GCC/gcc/gnat}"
+ GNATMAKE="${GCC/gcc/gnatmake}"
+ if [[ -z "$(type ${GNATLS} 2>/dev/null)" ]] ; then
+ eerror "You need a gcc compiler that provides the Ada Compiler:"
+ eerror "1) use gcc-config to select the right compiler or"
+ eerror "2) set ADA=gcc-4.9.4 in make.conf"
+ die "ada compiler not available"
+ fi
+}
+
+src_compile() {
+ :
+}
+
+src_install() {
+ into /opt/${P}
+ dobin bin/gps_exe
+ dobin bin/gps_cli
+ insinto /opt/${P}/share
+ doins -r share/doc
+ doins -r share/examples
+ doins -r share/gpr
+ doins -r share/gprconfig
+ doins -r share/gps
+ doins -r share/themes
+ insinto /opt/${P}/lib/
+ doins -r lib/python2.7
+ dosym ../../../usr/bin/gnatinspect /opt/${P}/bin/gnatinspect
+ dosym ../../../usr/bin/${GNATLS} /opt/${P}/bin/gnatls
+ dosym ../../../usr/bin/${GNATMAKE} /opt/${P}/bin/gnatmake
+ dosym ../../../usr/bin/${GNAT} /opt/${P}/bin/gnat
+ dosym ../../opt/${P}/bin/gps_exe /usr/bin/gps
+}
diff --git a/dev-ada/gps-bin/metadata.xml b/dev-ada/gps-bin/metadata.xml
new file mode 100644
index 000000000000..ebe9a3559c56
--- /dev/null
+++ b/dev-ada/gps-bin/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <longdescription lang="en">
+ GPS, the GNAT Programming Studio, is a cutting-edge Free Software IDE that streamlines the interaction between developers and their software. With its intuitive interface, GPS is easy to use, simplifying source navigation and highlighting the fundamental ideas in the program.
+
+By displaying core application structures, such as call graphs, program entity graphs, and project dependencies, GPS facilitates the development of systems. GPS helps construct reliable code while providing the same interface and behavior across a variety of platforms. Designed by programmers for programmers, GPS is a new kind of IDE that offers the experience of designing software in a uniquely comfortable environment.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-ada/gtkada/Manifest b/dev-ada/gtkada/Manifest
new file mode 100644
index 000000000000..8646e7c6f82f
--- /dev/null
+++ b/dev-ada/gtkada/Manifest
@@ -0,0 +1,7 @@
+AUX gtkada-2016-gentoo.patch 3728 SHA256 3646ea25757ada2eb7e631b1c411c42d3c4e656d12d512ce828a53e4255559f4 SHA512 8e8815173496f7ebc795e8b20e19f88f50a726cca3657b5798cd7cd613c0196aea4c63daa2874c36d5a039e5b6cc26c67d0003c47ddcf8ca6e9c28dd8a58bf4b WHIRLPOOL fdb302898aee47976904cc764d523e6594959bda33a1b19e2a6ef4314b68bf6cbdd3c2bd6b8fe13d69dd8fdc332d5b74f503aa23d705838ef932ef6283c8b8c5
+AUX gtkada-2017-gentoo.patch 2777 SHA256 166a96a1d9d68a916eb2211b5cc78e3a673776242a83e216ec835450b06e1ce6 SHA512 0027d42e41ee1e754bf54982c5bd31b6fc5a113e9a5e7aed95868ac956097f3226b073721d4a5ccb9dc8d82600089720a72162b02910d6c8afcdfb2ea8ec4b13 WHIRLPOOL d5079e6a54157b363aba4b8b082b9644303e4da33fdbf07119063336d1bc181c4c135fbf5a5c4e3a93c59241bac1d857f796ddfbf885c6a1535d3e92ab04eef7
+DIST gtkada-gpl-2016-src.tgz 11944697 SHA256 263cc8323e726ae22946508792dd719ff266a9e847a4f7c95e27bd13d3fb4d8f SHA512 90912e15d9e22574a3d86e8bd052d4ce0a0d8018386f699dc1ce3c345978e9b3ddc7bdd3e4247a264496c5da7cff6ae68589a02f43193fc957c418e2a8ef63c7 WHIRLPOOL fc12f151c65ccef5d23b520cfc0625606ece06e56ed2d5b28e39bd65e51850d9b5c40e7382207f1d9186f93ce9232f6024bec977af6973163eb6603178dc1a30
+DIST gtkada-gpl-2017-src.tgz 11952333 SHA256 545a125dd41cce2a5e4aeeefbd9538e9e8c7aecbe39c106d27078eb5a649b5f0 SHA512 f5bbb9ebdd966e70b3edcaaf359cb9e75edba3c3f4f8febfa7de9f634f8e96cd0dd1482fb16ad852b1c9f9b0e2c16eb3a437120d37f0638d90af666620f09f3f WHIRLPOOL 69a05d9e8cd956681951a7adeb5eedd5b13f8d403f5fd0f2473e1f2f4579676314cfa7aac81631fe0e8f68362cdb09dde685b8b2bf30801c38f82ae7ba484b88
+EBUILD gtkada-2016.ebuild 1269 SHA256 52b96911b13c45a29a35b8cfe5194ed7af240e2b46c494398ea8e5ea5b5059be SHA512 32a327fa14ec2f7a4e658356d8af7cff460cd7faa6b2dd8d20ae593be5689f9bd8824047b0d034b32833fc978b66290cb2b584730828615f87ee9af18116f689 WHIRLPOOL 6168e9bb16534669f1da403e01449df23d4e398f364c48245f53f6210e00bc54a698e5d18d3204ca265c3127e769c983949eaefe0cf495da8737428d7832d720
+EBUILD gtkada-2017.ebuild 1269 SHA256 fde1117d68c78aa8b48827bbf22fbe9a59d5e825bc28c8ac6df70f4ceccae268 SHA512 c82beb455477b41b485a6c8b1dfa34f50d94112f649f205f0c8b3411c637caa9dd9fc84d90d68fce61e95febdf9a504cbda57999739a6cbebcfc84f99f908d78 WHIRLPOOL 9f15671bf4b42d64d80845b0cf2c38cff8fd990604d3c707def0bc61b32c353743164a6c6c32420cc304bbb9fa478396078b59ad741e6aa4408bf04a9f1e4505
+MISC metadata.xml 765 SHA256 dd15cc8fb534952a5a1ff1d3a5b1cdc777afa89f088b8bfd56419c01f5a5fd56 SHA512 f1f6999e5458ffb19a0d2a99a674f67af4a8839eed7c6a50c31c2d839f0f09abb6a2d1ad05bcf5b4c809a04a5d6b6959d9f27c7a3aca6c94bf50f8044201c59a WHIRLPOOL 6f376028c6c91a2dce783efb12383f2dbb14fdd9f2d9cbfe708c6a239df4ce0ee34b72cc193e55f7ded968c73a22db862690a20fd82846a8cd161961f386cae8
diff --git a/dev-ada/gtkada/files/gtkada-2016-gentoo.patch b/dev-ada/gtkada/files/gtkada-2016-gentoo.patch
new file mode 100644
index 000000000000..808b07dfdfaf
--- /dev/null
+++ b/dev-ada/gtkada/files/gtkada-2016-gentoo.patch
@@ -0,0 +1,93 @@
+--- gtkada-gpl-2015-src/shared.gpr.in.old 2017-01-05 23:28:35.838073270 +0100
++++ gtkada-gpl-2015-src/shared.gpr.in 2017-01-05 23:30:17.752255709 +0100
+@@ -44,6 +44,8 @@
+ for Switches ("C") use ("-O2");
+ end case;
+
++ for Driver ("C") use External ("GCC", "gcc");
++ for PIC_Option ("C") use ("-fPIC");
+ for Switches ("C") use Compiler'Switches ("C") & Gtk_Include;
+ for Switches ("Objective-C") use Compiler'Switches ("Objective-C") & Gtk_Include;
+ end Compiler;
+--- gtkada-gpl-2016-src/Makefile.in.old 2017-01-21 22:42:18.319969095 +0100
++++ gtkada-gpl-2016-src/Makefile.in 2017-01-21 22:42:33.989700236 +0100
+@@ -60,30 +60,33 @@
+ LIBRARY_TYPE_FOR_TOOLS=static
+ endif
+
+-all: tools tests
++all: tools
+ static: build_library_type/static
+ relocatable: build_library_type/relocatable
+
+ tools:
+ @echo "====== Building tools ====="
+- ${GPRBUILD_FULL} -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) -Psrc/tools/tools.gpr
++ ${GPRBUILD_FULL} -v -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) \
++ -Psrc/tools/tools.gpr -cargs:Ada $(ADAFLAGS)
+
+ build_library_type/%: src/gtkada-intl.adb
+ @echo "====== Building $(@F) libraries ====="
+- ${GPRBUILD_FULL} -XLIBRARY_TYPE=$(@F) -Psrc/gtkada.gpr
++ ${GPRBUILD_FULL} -v -XLIBRARY_TYPE=$(@F) -Psrc/gtkada.gpr \
++ -cargs:Ada $(ADAFLAGS) -cargs:C $(CFLAGS)
+ ifeq (${HAVE_OPENGL}, True)
+ ${GPRBUILD_FULL} -XLIBRARY_TYPE=$(@F) -Psrc/opengl/gtkada_gl.gpr
+ endif
+
+ src/gtkada-intl.adb: src/gtkada-intl.gpb Makefile
+- gnatprep -DGETTEXT_INTL=$(GETTEXT_INTL) -DHAVE_GETTEXT=$(HAVE_GETTEXT) src/gtkada-intl.gpb $@
++ $(GNATPREP) -DGETTEXT_INTL=$(GETTEXT_INTL) -DHAVE_GETTEXT=$(HAVE_GETTEXT) src/gtkada-intl.gpb $@
+
+ testgtk/opengl/view_gl.adb: testgtk/opengl/view_gl.gpb Makefile
+- gnatprep -r -c -DHAVE_GL=${HAVE_OPENGL} -DWIN32=False testgtk/opengl/view_gl.gpb $@
++ $(GNATPREP) -r -c -DHAVE_GL=${HAVE_OPENGL} -DWIN32=False testgtk/opengl/view_gl.gpb $@
+
+ tests: testgtk/opengl/view_gl.adb
+ @echo "====== Building tests ====="
+- cd testgtk; ${GPRBUILD_FULL} -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) -Ptestgtk.gpr -aP ../src
++ cd testgtk; ${GPRBUILD_FULL} -v -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) \
++ -Ptestgtk.gpr -aP ../src -cargs:Ada $(ADAFLAGS)
+
+ install/%: force
+ ${GPRINSTALL_FULL} -XLIBRARY_TYPE=$(@F) --build-name=$(@F) \
+@@ -96,7 +96,7 @@
+ ifeq (${HAVE_OPENGL}, True)
+ ${GPRINSTALL_FULL} -XLIBRARY_TYPE=$(@F) --build-name=$(@F) \
+ --sources-subdir=include/gtkada/gtkada_gl.$(@F) \
+- --lib-subdir=${libdir}/gtkada/gtkada_gl.$(@F) \
++ --lib-subdir=lib/gtkada/gtkada_gl.$(@F) \
+ -Psrc/opengl/gtkada_gl.gpr
+ endif
+
+@@ -106,12 +106,9 @@
+ --project-subdir=lib/gnat gtkada
+ endif
+
+-install: install-clean
++install:
+ ${GPRINSTALL_FULL} -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) \
+ --mode=usage -Psrc/tools/tools.gpr
+- cd testgtk; ${GPRINSTALL_FULL} -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) \
+- --mode=usage --exec-subdir=${exampledir} \
+- -Ptestgtk.gpr -aP ../src
+
+ @echo '-----------------------------------------------------------------------'
+ @echo '-- GtkAda has now been installed. --'
+--- gtkada-gpl-2016-src/src/gtkada.gpr.old 2017-05-31 14:21:35.007965274 +0200
++++ gtkada-gpl-2016-src/src/gtkada.gpr 2017-05-31 14:23:16.597315577 +0200
+@@ -41,7 +41,13 @@
+ for Library_Name use "gtkada";
+ for Library_Version use
+ "lib" & Project'Library_Name & Shared.So_Ext & "." & Version;
+- for Library_Options use Shared.Gtk_Libs;
++
++ case Shared.Library_Kind is
++ when "relocatable" =>
++ for Library_Options use Shared.Gtk_Libs;
++ when others =>
++ null;
++ end case;
+
+ package Builder renames Shared.Builder;
+ package Naming renames Shared.Naming;
diff --git a/dev-ada/gtkada/files/gtkada-2017-gentoo.patch b/dev-ada/gtkada/files/gtkada-2017-gentoo.patch
new file mode 100644
index 000000000000..ec8ebdf8f601
--- /dev/null
+++ b/dev-ada/gtkada/files/gtkada-2017-gentoo.patch
@@ -0,0 +1,63 @@
+--- gtkada-gpl-2015-src/shared.gpr.in.old 2017-01-05 23:28:35.838073270 +0100
++++ gtkada-gpl-2015-src/shared.gpr.in 2017-01-05 23:30:17.752255709 +0100
+@@ -44,6 +44,8 @@
+ for Switches ("C") use ("-O2");
+ end case;
+
++ for Driver ("C") use External ("GCC", "gcc");
++ for PIC_Option ("C") use ("-fPIC");
+ for Switches ("C") use Compiler'Switches ("C") & Gtk_Include;
+ for Switches ("Objective-C") use Compiler'Switches ("Objective-C") & Gtk_Include;
+ end Compiler;
+--- gtkada-gpl-2016-src/Makefile.in.old 2017-01-21 22:42:18.319969095 +0100
++++ gtkada-gpl-2016-src/Makefile.in 2017-01-21 22:42:33.989700236 +0100
+@@ -60,30 +60,33 @@
+ LIBRARY_TYPE_FOR_TOOLS=static
+ endif
+
+-all: tools tests
++all: tools
+ static: build_library_type/static
+ relocatable: build_library_type/relocatable
+
+ tools:
+ @echo "====== Building tools ====="
+- ${GPRBUILD_FULL} -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) -Psrc/tools/tools.gpr
++ ${GPRBUILD_FULL} -v -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) \
++ -Psrc/tools/tools.gpr -cargs:Ada $(ADAFLAGS)
+
+ build_library_type/%: src/gtkada-intl.adb
+ @echo "====== Building $(@F) libraries ====="
+- ${GPRBUILD_FULL} -XLIBRARY_TYPE=$(@F) -Psrc/gtkada.gpr
++ ${GPRBUILD_FULL} -v -XLIBRARY_TYPE=$(@F) -Psrc/gtkada.gpr \
++ -cargs:Ada $(ADAFLAGS) -cargs:C $(CFLAGS)
+ ifeq (${HAVE_OPENGL}, True)
+ ${GPRBUILD_FULL} -XLIBRARY_TYPE=$(@F) -Psrc/opengl/gtkada_gl.gpr
+ endif
+
+ src/gtkada-intl.adb: src/gtkada-intl.gpb Makefile
+- gnatprep -DGETTEXT_INTL=$(GETTEXT_INTL) -DHAVE_GETTEXT=$(HAVE_GETTEXT) src/gtkada-intl.gpb $@
++ $(GNATPREP) -DGETTEXT_INTL=$(GETTEXT_INTL) -DHAVE_GETTEXT=$(HAVE_GETTEXT) src/gtkada-intl.gpb $@
+
+ testgtk/opengl/view_gl.adb: testgtk/opengl/view_gl.gpb Makefile
+- gnatprep -r -c -DHAVE_GL=${HAVE_OPENGL} -DWIN32=False testgtk/opengl/view_gl.gpb $@
++ $(GNATPREP) -r -c -DHAVE_GL=${HAVE_OPENGL} -DWIN32=False testgtk/opengl/view_gl.gpb $@
+
+ tests: testgtk/opengl/view_gl.adb
+ @echo "====== Building tests ====="
+- cd testgtk; ${GPRBUILD_FULL} -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) -Ptestgtk.gpr -aP ../src
++ cd testgtk; ${GPRBUILD_FULL} -v -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) \
++ -Ptestgtk.gpr -aP ../src -cargs:Ada $(ADAFLAGS)
+
+ install/%: force
+ ${GPRINSTALL_FULL} -XLIBRARY_TYPE=$(@F) --build-name=$(@F) \
+@@ -121,9 +121,6 @@
+ install: install-clean
+ ${GPRINSTALL_FULL} -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) \
+ --mode=usage -Psrc/tools/tools.gpr
+- cd testgtk; ${GPRINSTALL_FULL} -XLIBRARY_TYPE=$(LIBRARY_TYPE_FOR_TOOLS) \
+- --mode=usage --exec-subdir=${DESTDIR}${exampledir} \
+- -Ptestgtk.gpr -aP ../src
+
+ @echo '-----------------------------------------------------------------------'
+ @echo '-- GtkAda has now been installed. --'
diff --git a/dev-ada/gtkada/gtkada-2016.ebuild b/dev-ada/gtkada/gtkada-2016.ebuild
new file mode 100644
index 000000000000..6ca105eb3655
--- /dev/null
+++ b/dev-ada/gtkada/gtkada-2016.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools multiprocessing
+
+MYP=${PN}-gpl-${PV}
+
+DESCRIPTION="A complete Ada graphical toolkit"
+HOMEPAGE="http://libre.adacore.com//tools/gtkada/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/5739985fc7a447658e0affae
+ -> ${MYP}-src.tgz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017 +shared static"
+
+RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )
+ dev-libs/atk
+ dev-libs/glib:2
+ media-libs/fontconfig
+ media-libs/freetype
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/pango"
+DEPEND="${RDEPEND}
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+
+S="${WORKDIR}"/${MYP}-src
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_prepare() {
+ default
+ mv configure.{in,ac}
+ eautoreconf
+}
+
+src_configure() {
+ if use gnat_2016; then
+ GCC_PV=4.9.4
+ else
+ GCC_PV=6.3.0
+ fi
+ GCC=${CHOST}-gcc-${GCC_PV}
+ econf \
+ --prefix="${D}/usr" \
+ $(use_enable static) \
+ $(use_enable shared) \
+ --without-GL
+}
+
+src_compile() {
+ GNATPREP=${CHOST}-gnatprep-${GCC_PV}
+ GCC=${GCC} emake -j1 GNATPREP=${GNATPREP} PROCESSORS=$(makeopts_jobs)
+}
+
+src_install() {
+ emake -j1 install
+ einstalldocs
+}
diff --git a/dev-ada/gtkada/gtkada-2017.ebuild b/dev-ada/gtkada/gtkada-2017.ebuild
new file mode 100644
index 000000000000..659aacbe7b77
--- /dev/null
+++ b/dev-ada/gtkada/gtkada-2017.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools multiprocessing
+
+MYP=${PN}-gpl-${PV}
+
+DESCRIPTION="A complete Ada graphical toolkit"
+HOMEPAGE="http://libre.adacore.com//tools/gtkada/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/591ae7a8c7a4473fcbb154c9
+ -> ${MYP}-src.tgz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017 +shared static"
+
+RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )
+ dev-libs/atk
+ dev-libs/glib:2
+ media-libs/fontconfig
+ media-libs/freetype
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/pango"
+DEPEND="${RDEPEND}
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+
+S="${WORKDIR}"/${MYP}-src
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_prepare() {
+ default
+ mv configure.{in,ac}
+ eautoreconf
+}
+
+src_configure() {
+ if use gnat_2016; then
+ GCC_PV=4.9.4
+ else
+ GCC_PV=6.3.0
+ fi
+ GCC=${CHOST}-gcc-${GCC_PV}
+ econf \
+ --prefix="${D}/usr" \
+ $(use_enable static) \
+ $(use_enable shared) \
+ --without-GL
+}
+
+src_compile() {
+ GNATPREP=${CHOST}-gnatprep-${GCC_PV}
+ GCC=${GCC} emake -j1 GNATPREP=${GNATPREP} PROCESSORS=$(makeopts_jobs)
+}
+
+src_install() {
+ emake -j1 install
+ einstalldocs
+}
diff --git a/dev-ada/gtkada/metadata.xml b/dev-ada/gtkada/metadata.xml
new file mode 100644
index 000000000000..ba0f05fc23e8
--- /dev/null
+++ b/dev-ada/gtkada/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <use>
+ <flag name="gnat_2016">Compile with dev-lang/gnat-gpl-2016</flag>
+ <flag name="gnat_2017">Compile with dev-lang/gnat-gpl-2017</flag>
+ <flag name="shared">Build gtkada as shared library</flag>
+ <flag name="static">Build gtkada as static library</flag>
+ </use>
+ <longdescription lang="en">
+ GtkAda is an Ada graphical toolkit based on Gtk+, providing the complete set of Gtk+ widgets using the Object-Oriented features of this language. GtkAda supports the latest 3.14 stable releases.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-ada/metadata.xml b/dev-ada/metadata.xml
new file mode 100644
index 000000000000..01b80fcd13fe
--- /dev/null
+++ b/dev-ada/metadata.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The dev-ada category contains libraries and utilities relevant to the
+ Ada programming language.
+ </longdescription>
+ <longdescription lang="de">
+ Die Kategorie dev-ada enthält Bibliotheken und Werkzeuge für die
+ Programmiersprache Ada.
+ </longdescription>
+ <longdescription lang="es">
+ La categoría dev-ada contiene librerias y utilidades referentes al
+ lenguaje de programación Ada.
+ </longdescription>
+ <longdescription lang="ja">
+ dev-ada カテゴリーにはAdaプログラミング言語に関連したライブラリーと
+ ユーティリティが含まれます。
+ </longdescription>
+ <longdescription lang="nl">
+ De dev-ada categorie bevat bibliotheken en hulpmiddelen voor het gebruik van
+ de Ada programmeertaal.
+ </longdescription>
+ <longdescription lang="vi">
+ Nhóm dev-ada chứa các thư viện và tiện ích liên quan
+ đến ngôn ngữ lập trình Ada.
+ </longdescription>
+ <longdescription lang="it">
+ La categoria dev-ada contiene librerie ed utilità per il linguaggio Ada.
+ </longdescription>
+ <longdescription lang="pt">
+ A categoria dev-ada contém bibliotecas e utilitários relevantes
+ para a linguagem de programação Ada.
+ </longdescription>
+ <longdescription lang="pl">
+ Kategoria dev-ada zawiera biblioteki i narzędzia związane z językiem
+ programowania Ada.
+ </longdescription>
+</catmetadata>
+
diff --git a/dev-ada/xmlada/Manifest b/dev-ada/xmlada/Manifest
new file mode 100644
index 000000000000..8aa27f75e2db
--- /dev/null
+++ b/dev-ada/xmlada/Manifest
@@ -0,0 +1,6 @@
+AUX xmlada-2016-gentoo.patch 736 SHA256 66e9636c44f7a512034c6b453aaebf7ee41df9a966635eabd70b3748bee051e0 SHA512 23de23e5af65b02133730cdc30112e1f0585019aa3e6154b30b029f3d2f3bec74d7fe93549d5c505426eb2a13e6b820bafb78c02885dd70c4f3bf66b754171d4 WHIRLPOOL 934ce64707ea5bd92410a5cb1568f5a2aa84e07191e24bb61d02289405f6f8f2b8076cc4fae9f93c359b5f680904865d0d9f84e4956cedbc023d7f77de3c679c
+DIST xmlada-gpl-2016-src.tar.gz 1440671 SHA256 ea64d8da2c5fb01a257fc5bf474b8d4ec40b01dc15b320b9fe260ff2db668ba4 SHA512 d1d7c3d91731394235aed4b80c91b1babe30d5f184282fae8087ee556318475e3923ed628b805693fc89a4d9bb219b0fb0937bc5024a742226da0245d36ed652 WHIRLPOOL b6ebb927d801394ad0b62d9538142c420ab33627582059466d4f64b12c3a45b1b5b489019aef715a59101370220a78507fe03d97c9e67233dfcc4f3aad1f16d7
+DIST xmlada-gpl-2017-src.tar.gz 1578393 SHA256 9b103157eb3ecd697b597ad4e60f56f39028bc2d6ea513d2dce8a3b0e65ac54b SHA512 371f6adc01550a4bb13204ec0404dc1165438db595f4346813e5a23a155de74c857c40c55adde173919c2fe35b3b91d78b235c9718ee86bc848e62ddfd7fa2b4 WHIRLPOOL 4b2da3fb799f8def6eb6383a9483258340368cc80e96e8ffab207c3c8849c1279a80cf68ca47c8a20ce91c084041bdfa95128a14321454055534d804272ef4dd
+EBUILD xmlada-2016.ebuild 1236 SHA256 113ece65503d569ee45c43ded37ee9feb1ab204b8ef8147eaca512f143ef5568 SHA512 49a1a17034d3e8a4600ae237750528a5568798ebfaf9144280f67eb1e393bb8c030caf09f2f2066b53bcdb415c709c5bbd11b47034cb9e84eae3b43b34fdb2d6 WHIRLPOOL 4515805164b49c90e50d16c56f6a509b897822f9f122f5826605d0d06e2c153fed6450bb21eee517014735e06dee74949f7b63caba9cd37ad615a367dae2531c
+EBUILD xmlada-2017.ebuild 1480 SHA256 ae951953c56eb139bb2bc158a07a02566b3de9eb0d0efef8024f5125a38356e4 SHA512 93b51117c84e55abc54aebe54b95eee4c788044b83f1edbc626c8157a7eecab2c890ca41ac8a4f9530e251f20a1b3745493d1227c282415b78677535429d8a7f WHIRLPOOL 15e674a9263570c267c4d63353500faffe4d1ab1657960f36043f47a128717473125a9c043d16d9428a2e3adc187adc03fee62363713584888f8084351d99c83
+MISC metadata.xml 1125 SHA256 cfa482b10d38fcda4b7f335521ae521d9b0425c67d2dca54d85bf37482467cee SHA512 ab8a13a6e09513797895a7966adf026a21aa5f738853b039ec15d7091e32a8dd747c1c179ef92a24f2eb83f0a381c819f891bf35e6b4a90e1085aced8606f14d WHIRLPOOL 1a50bd49742d194e4a075d593ca9b5fc66c7d293eb399be54039a5362b1001d72b5b15823b528418da55642c4de6be82faf210a6938807a2c2e9aaf34cfdde54
diff --git a/dev-ada/xmlada/files/xmlada-2016-gentoo.patch b/dev-ada/xmlada/files/xmlada-2016-gentoo.patch
new file mode 100644
index 000000000000..7c28a02289f8
--- /dev/null
+++ b/dev-ada/xmlada/files/xmlada-2016-gentoo.patch
@@ -0,0 +1,19 @@
+--- xmlada-2016-src/Makefile.in.old 2016-12-04 21:58:57.251338692 +0100
++++ xmlada-2016-src/Makefile.in 2016-12-04 21:59:31.332755615 +0100
+@@ -49,13 +49,13 @@
+ endif
+
+ static:
+- ${GPRBUILD} -p -XLIBRARY_TYPE=static ${GPROPTS} xmlada.gpr
++ ${GPRBUILD} -p -v -XLIBRARY_TYPE=static ${GPROPTS} xmlada.gpr -cargs $(ADAFLAGS)
+
+ shared relocatable:
+- ${GPRBUILD} -p -XLIBRARY_TYPE=relocatable ${GPROPTS} xmlada.gpr
++ ${GPRBUILD} -p -v -XLIBRARY_TYPE=relocatable ${GPROPTS} xmlada.gpr -cargs $(ADAFLAGS)
+
+ static-pic:
+- ${GPRBUILD} -p -XLIBRARY_TYPE=static-pic ${GPROPTS} xmlada.gpr
++ ${GPRBUILD} -p -v -XLIBRARY_TYPE=static-pic ${GPROPTS} xmlada.gpr -cargs $(ADAFLAGS)
+
+ # Rebuild the tests (and not the XML/Ada code itself)
+ test: force
diff --git a/dev-ada/xmlada/metadata.xml b/dev-ada/xmlada/metadata.xml
new file mode 100644
index 000000000000..6a0e93a661fe
--- /dev/null
+++ b/dev-ada/xmlada/metadata.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <use>
+ <flag name="gnat_2016">Compile with dev-lang/gnat-gpl-2016</flag>
+ <flag name="gnat_2017">Compile with dev-lang/gnat-gpl-2017</flag>
+ <flag name="shared">Build shared library</flag>
+ <flag name="static">Build static library</flag>
+ <flag name="static-pic">Build static library with pic code</flag>
+ </use>
+ <longdescription lang="en">
+ XML/Ada is a set of modules that provide a simple manipulation of XML
+ streams. It supports the whole XML 1.1 specifications, and can parse
+ any file that follows this standard (including the contents of the DTD,
+ although no validation of the document is done based on those).
+
+ It also provides support for a number of other standard associated
+ with XML, like SAX, DOM and XML schemas.
+
+ In addition, it includes a module to manipulate Unicode streams, since
+ this is required by the XML standard.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-ada/xmlada/xmlada-2016.ebuild b/dev-ada/xmlada/xmlada-2016.ebuild
new file mode 100644
index 000000000000..51ef27e6c65e
--- /dev/null
+++ b/dev-ada/xmlada/xmlada-2016.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multiprocessing
+
+MYP=${PN}-gpl-${PV}
+
+DESCRIPTION="Set of modules that provide a simple manipulation of XML streams"
+HOMEPAGE="http://libre.adacore.com/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/57399978c7a447658e0affc0 ->
+ ${MYP}-src.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017 +shared static static-pic"
+REQUIRED_USE="|| ( shared static static-pic )
+ ^^ ( gnat_2016 gnat_2017 )"
+
+RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )"
+DEPEND="${RDEPEND}
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+
+S="${WORKDIR}"/${MYP}-src
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_configure () {
+ econf --prefix="${D}"/usr
+}
+
+src_compile () {
+ for kind in shared static static-pic; do
+ if use ${kind}; then
+ emake PROCESSORS=$(makeopts_jobs) ${kind}
+ fi
+ done
+}
+
+src_install () {
+ for kind in shared static static-pic; do
+ if use ${kind}; then
+ emake PROCESSORS=$(makeopts_jobs) DESTDIR="${D}" install-${kind}
+ fi
+ done
+ einstalldocs
+ dodoc features-* known-problems-* xmlada-roadmap.txt
+ rm "${D}"/usr/share/doc/${PN}/.buildinfo || die
+}
diff --git a/dev-ada/xmlada/xmlada-2017.ebuild b/dev-ada/xmlada/xmlada-2017.ebuild
new file mode 100644
index 000000000000..b7d4d8f03d5c
--- /dev/null
+++ b/dev-ada/xmlada/xmlada-2017.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multiprocessing
+
+MYP=${PN}-gpl-${PV}
+
+DESCRIPTION="Set of modules that provide a simple manipulation of XML streams"
+HOMEPAGE="http://libre.adacore.com/"
+SRC_URI="http://mirrors.cdn.adacore.com/art/591aeb88c7a4473fcbb154f8 ->
+ ${MYP}-src.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnat_2016 gnat_2017 +shared static static-pic"
+REQUIRED_USE="|| ( shared static static-pic )
+ ^^ ( gnat_2016 gnat_2017 )"
+
+RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
+ gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )"
+DEPEND="${RDEPEND}
+ dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
+
+S="${WORKDIR}"/${MYP}-src
+
+src_configure () {
+ econf --prefix="${D}"/usr
+}
+
+src_compile () {
+ if use shared; then
+ gprbuild -j$(makeopts_jobs) -m -p -v -XLIBRARY_TYPE=relocatable \
+ -XBUILD=Production -XPROCESSORS=$(makeopts_jobs) xmlada.gpr \
+ -cargs ${ADAFLAGS} || die "gprbuild failed"
+ fi
+ for kind in static static-pic; do
+ if use ${kind}; then
+ gprbuild -j$(makeopts_jobs) -m -p -v -XLIBRARY_TYPE=${kind} \
+ -XBUILD=Production -XPROCESSORS=$(makeopts_jobs) xmlada.gpr \
+ -cargs ${ADAFLAGS} || die "gprbuild failed"
+ fi
+ done
+}
+
+src_install () {
+ for kind in shared static static-pic; do
+ if use ${kind}; then
+ emake PROCESSORS=$(makeopts_jobs) install-${kind}
+ fi
+ done
+ einstalldocs
+ dodoc xmlada-roadmap.txt
+ rm "${D}"/usr/share/doc/${PN}/.buildinfo || die
+}