diff options
Diffstat (limited to 'dev-ada/xmlada')
-rw-r--r-- | dev-ada/xmlada/Manifest | 4 | ||||
-rw-r--r-- | dev-ada/xmlada/files/xmlada-2018-gentoo.patch | 41 | ||||
-rw-r--r-- | dev-ada/xmlada/files/xmlada-23.0.0-gentoo.patch (renamed from dev-ada/xmlada/files/xmlada-2019-gentoo.patch) | 6 | ||||
-rw-r--r-- | dev-ada/xmlada/files/xmlada-24.0.0-gentoo.patch | 24 | ||||
-rw-r--r-- | dev-ada/xmlada/metadata.xml | 5 | ||||
-rw-r--r-- | dev-ada/xmlada/xmlada-2018.ebuild | 80 | ||||
-rw-r--r-- | dev-ada/xmlada/xmlada-2019.ebuild | 83 | ||||
-rw-r--r-- | dev-ada/xmlada/xmlada-23.0.0-r1.ebuild (renamed from dev-ada/xmlada/xmlada-2019-r1.ebuild) | 44 | ||||
-rw-r--r-- | dev-ada/xmlada/xmlada-23.0.0-r2.ebuild | 86 | ||||
-rw-r--r-- | dev-ada/xmlada/xmlada-24.0.0-r2.ebuild | 106 |
10 files changed, 250 insertions, 229 deletions
diff --git a/dev-ada/xmlada/Manifest b/dev-ada/xmlada/Manifest index 4e513082eb36..8b36e9c9a64c 100644 --- a/dev-ada/xmlada/Manifest +++ b/dev-ada/xmlada/Manifest @@ -1,2 +1,2 @@ -DIST xmlada-2019-20190429-19B9D-src.tar.gz 1582603 BLAKE2B e2be3e7c0c8b843bfc808a3dd726235a82588caed8c919975a97ce34c72d6d634361bbc34208590210936add9e2f881b59d01168ef79abed1e489c50b27094d8 SHA512 f8e0e25b0aee9a7a18223ae7761603082af55134f062c767d0cd0dbf0dbcb2058fc7c57532b567fb2c6efa464a53ead57b300578e98962025866e5c3ad73e380 -DIST xmlada-gpl-2018-src.tar.gz 1582215 BLAKE2B 11012dab19f45507eeb5ce6ebec9a77ceb5dfb7749960922f0f48bb1b0409305fd43466a7af90b48ff0a0cf58612e8859274a92e0fe272b4e57a59b92a1725f1 SHA512 8970c4e68defad66625c1110554dadfc485fbbe42e832987593cf727e98f13dd87c90b84461187dbbe2b1051831e6e70f9f53d6a0cfc07451726d601b2856430 +DIST xmlada-23.0.0.tar.gz 1053370 BLAKE2B 4edf2244818d72d6fc760f60c8145f373e5445d1d245b20b605e21faa7eeefed7835db87c1fd1239008e75211a572294e1d8e35af16c2ba2631c02d1d3b6f52f SHA512 a0fb2a34ffb5edf408fbdc1a3d68511b5545a5ec8993251ba75d71dd2a197f14e187d08f8febd71cb23bbd694889a99941911386af8468c5eb3b11128555edcb +DIST xmlada-24.0.0.tar.gz 1053363 BLAKE2B 628a1d3645c58cc3f8f5140c7cfb16adef02f6ccc72b8e9410819eaf67e0160bdcf81a8e33065ec52f54cb12309d857a3d82e532990a0fd17c249c04334ab10f SHA512 4e6773a5fdf9b6ebb5afca913d77aba9f697768f28ef9b23b9277aa4ea4ce09de4e53655dd5559e2326ff847327adb53fa6b776775aa923100a2624df415c97d diff --git a/dev-ada/xmlada/files/xmlada-2018-gentoo.patch b/dev-ada/xmlada/files/xmlada-2018-gentoo.patch deleted file mode 100644 index 439b85026d5f..000000000000 --- a/dev-ada/xmlada/files/xmlada-2018-gentoo.patch +++ /dev/null @@ -1,41 +0,0 @@ ---- a/Makefile.in 2017-12-04 20:09:23.730805855 +0100 -+++ b/Makefile.in 2017-12-04 20:09:51.586331155 +0100 -@@ -62,7 +62,8 @@ - - # Rebuild the tests (and not the XML/Ada code itself) - test: force -+ GPR_PROJECT_PATH=schema:input_sources:dom:sax:unicode \ - ${GPRBUILD} -p -XLIBRARY_TYPE=static ${GPROPTS} \ - -XTESTS_ACTIVATED=Only xmlada.gpr - - # Run the tests. This requires an install of XML/Ada first ---- a/tests/Makefile 2017-12-04 21:38:29.722818904 +0100 -+++ b/tests/Makefile 2017-12-04 21:38:54.229382658 +0100 -@@ -1,8 +1,6 @@ - TESTS= test_unicode \ - test_state \ -- test_xml \ - test_adacore_dom \ -- test_schema \ - test_date_time \ - test_numbers \ - test_adacore_schema \ -@@ -71,6 +71,7 @@ - test_multiple_xsd: - @echo "multiple xsd" - @cd schema/multiple_xsd; \ -+ GPR_PROJECT_PATH=../../../distrib:../../../input_sources:../../../dom:../../../sax:../../../schema:../../../unicode \ - gprbuild -q -Pdefault.gpr; \ - ./validate > $(RESULTS)/multiple_xsd.out; \ - cp $(RESULTS)/multiple_xsd.out $(RESULTS)/multiple_xsd.diff; \ ---- a/input_sources/input_sources-http.adb 2019-05-29 10:18:23.428517625 +0200 -+++ b/input_sources/input_sources-http.adb 2019-05-29 10:17:53.451007226 +0200 -@@ -191,7 +191,7 @@ - - Create_Socket (Socket); - Set_Socket_Option (Socket, Socket_Level, (Reuse_Address, True)); -- Set_Socket_Option (Socket, Option => (Receive_Buffer, 3000)); -+ Set_Socket_Option (Socket, Socket_Level, (Receive_Buffer, 3000)); - Connect_Socket (Socket, Addr); - - Channel := Stream (Socket); diff --git a/dev-ada/xmlada/files/xmlada-2019-gentoo.patch b/dev-ada/xmlada/files/xmlada-23.0.0-gentoo.patch index 901797ebfde0..5bc00c6e5c69 100644 --- a/dev-ada/xmlada/files/xmlada-2019-gentoo.patch +++ b/dev-ada/xmlada/files/xmlada-23.0.0-gentoo.patch @@ -1,12 +1,12 @@ --- a/Makefile.in 2017-12-04 20:09:23.730805855 +0100 +++ b/Makefile.in 2017-12-04 20:09:51.586331155 +0100 -@@ -62,7 +62,8 @@ +@@ -79,7 +79,8 @@ # Rebuild the tests (and not the XML/Ada code itself) test: force + GPR_PROJECT_PATH=schema:input_sources:dom:sax:unicode \ ${GPRBUILD} -p -XLIBRARY_TYPE=static ${GPROPTS} \ - -XTESTS_ACTIVATED=Only xmlada.gpr + -XTESTS_ACTIVATED=Only xmlada.gpr ${GPROPTS_EXTRA} # Run the tests. This requires an install of XML/Ada first --- a/tests/Makefile 2017-12-04 21:38:29.722818904 +0100 @@ -20,7 +20,7 @@ test_date_time \ test_numbers \ test_adacore_schema \ -@@ -71,6 +71,7 @@ +@@ -81,6 +79,7 @@ test_multiple_xsd: @echo "multiple xsd" @cd schema/multiple_xsd; \ diff --git a/dev-ada/xmlada/files/xmlada-24.0.0-gentoo.patch b/dev-ada/xmlada/files/xmlada-24.0.0-gentoo.patch new file mode 100644 index 000000000000..5eb69f885285 --- /dev/null +++ b/dev-ada/xmlada/files/xmlada-24.0.0-gentoo.patch @@ -0,0 +1,24 @@ +--- a/input_sources/xmlada_input.gpr 2024-03-01 19:32:59.111253474 +0100 ++++ b/input_sources/xmlada_input.gpr 2024-03-01 19:34:57.282827180 +0100 +@@ -39,13 +39,15 @@ + package Ide renames XmlAda_Shared.Ide; + + package Install is +- for Artifacts ("share/doc/xmlada") +- use ("../docs/_build/html/*", "../docs/_build/latex/XMLAda.pdf"); ++ for Artifacts ("share/doc/@PF@/html") ++ use ("../docs/_build/html/*"); ++ for Artifacts ("share/doc/@PF@") ++ use ("../docs/_build/latex/XMLAda.pdf"); + for Artifacts ("share/gpr") use ("../distrib/xmlada.gpr"); +- for Artifacts ("share/examples/xmlada/dom") use ("../docs/dom/*"); +- for Artifacts ("share/examples/xmlada/sax") use ("../docs/sax/*"); +- for Artifacts ("share/examples/xmlada/schema") use ("../docs/schema/*"); +- for Artifacts ("share/examples/xmlada/cross") use ("../docs/cross/*"); ++ for Artifacts ("share/doc/@PF@/examples/dom") use ("../docs/dom/*"); ++ for Artifacts ("share/doc/@PF@/examples/sax") use ("../docs/sax/*"); ++ for Artifacts ("share/doc/@PF@/examples/schema") use ("../docs/schema/*"); ++ for Artifacts ("share/doc/@PF@/examples/cross") use ("../docs/cross/*"); + end Install; + + end XmlAda_Input; diff --git a/dev-ada/xmlada/metadata.xml b/dev-ada/xmlada/metadata.xml index 6cc2bfd667c7..e77e1bbcd64f 100644 --- a/dev-ada/xmlada/metadata.xml +++ b/dev-ada/xmlada/metadata.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <maintainer type="project"> <email>ada@gentoo.org</email> @@ -20,4 +20,7 @@ In addition, it includes a module to manipulate Unicode streams, since this is required by the XML standard. </longdescription> + <upstream> + <remote-id type="github">adacore/xmlada</remote-id> + </upstream> </pkgmetadata> diff --git a/dev-ada/xmlada/xmlada-2018.ebuild b/dev-ada/xmlada/xmlada-2018.ebuild deleted file mode 100644 index 752a6a94d5a2..000000000000 --- a/dev-ada/xmlada/xmlada-2018.ebuild +++ /dev/null @@ -1,80 +0,0 @@ -# Copyright 1999-2018 Gentoo Authors -# 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 x86" -IUSE="gnat_2016 gnat_2017 +gnat_2018 +shared static-libs static-pic" -REQUIRED_USE="|| ( shared static-libs static-pic ) - ^^ ( gnat_2016 gnat_2017 gnat_2018 )" - -RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 ) - gnat_2017? ( dev-lang/gnat-gpl:6.3.0 ) - gnat_2018? ( dev-lang/gnat-gpl:7.3.1 )" -DEPEND="${RDEPEND} - dev-ada/gprbuild[gnat_2016(-)?,gnat_2017(-)?,gnat_2018(-)?]" - -S="${WORKDIR}"/${MYP}-src - -PATCHES=( "${FILESDIR}"/${P}-gentoo.patch ) - -src_configure () { - econf --prefix="${D}"/usr -} - -src_compile () { - build () { - gprbuild -j$(makeopts_jobs) -m -p -v -XLIBRARY_TYPE=$1 \ - -XBUILD=Production -XPROCESSORS=$(makeopts_jobs) xmlada.gpr \ - -cargs ${ADAFLAGS} || die "gprbuild failed" - } - if use shared; then - build relocatable - fi - if use static-libs; then - build static - fi - if use static-pic; then - build static-pic - fi -} - -src_test() { - emake test - emake run_test | grep DIFF && die -} - -src_install () { - build () { - gprinstall -XLIBRARY_TYPE=$1 -f -p -XBUILD=Production \ - -XPROCESSORS=$(makeopts_jobs) --prefix="${D}"usr \ - --install-name=xmlada --build-var=LIBRARY_TYPE \ - --build-var=XMLADA_BUILD \ - --build-name=$1 xmlada.gpr || die "gprinstall failed" - } - if use shared; then - build relocatable - fi - if use static-libs; then - build static - fi - if use static-pic; then - build static-pic - fi - - einstalldocs - dodoc xmlada-roadmap.txt - rm "${D}"/usr/share/doc/${PN}/.buildinfo || die - rm -r "${D}"/usr/share/gpr/manifests || die -} diff --git a/dev-ada/xmlada/xmlada-2019.ebuild b/dev-ada/xmlada/xmlada-2019.ebuild deleted file mode 100644 index b841cf90e04c..000000000000 --- a/dev-ada/xmlada/xmlada-2019.ebuild +++ /dev/null @@ -1,83 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit multiprocessing - -MYP=${P}-20190429-19B9D - -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/5cdf916831e87a8f1d4250b5 - -> ${MYP}-src.tar.gz" - -LICENSE="GPL-3" -SLOT="0" -KEYWORDS="amd64 x86" -IUSE="gnat_2016 gnat_2017 gnat_2018 +gnat_2019 +shared static-libs static-pic" -REQUIRED_USE="|| ( shared static-libs static-pic ) - ^^ ( gnat_2016 gnat_2017 gnat_2018 gnat_2019 )" - -RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 ) - gnat_2017? ( dev-lang/gnat-gpl:6.3.0 ) - gnat_2018? ( dev-lang/gnat-gpl:7.3.1 ) - gnat_2019? ( dev-lang/gnat-gpl:8.3.1 )" -DEPEND="${RDEPEND} - dev-ada/gprbuild[gnat_2016(-)?,gnat_2017(-)?,gnat_2018(-)?] - dev-ada/gprbuild[gnat_2019(-)?]" - -S="${WORKDIR}"/${MYP}-src - -PATCHES=( "${FILESDIR}"/${P}-gentoo.patch ) - -src_configure () { - econf --prefix="${D}"/usr -} - -src_compile () { - build () { - gprbuild -j$(makeopts_jobs) -m -p -v -XLIBRARY_TYPE=$1 \ - -XBUILD=Production -XPROCESSORS=$(makeopts_jobs) xmlada.gpr \ - -cargs ${ADAFLAGS} || die "gprbuild failed" - } - if use shared; then - build relocatable - fi - if use static-libs; then - build static - fi - if use static-pic; then - build static-pic - fi -} - -src_test() { - emake test - emake run_test | tee xmlada.testLog - grep -q DIFF xmlada.testLog && die -} - -src_install () { - build () { - gprinstall -XLIBRARY_TYPE=$1 -f -p -XBUILD=Production \ - -XPROCESSORS=$(makeopts_jobs) --prefix="${D}"/usr \ - --install-name=xmlada --build-var=LIBRARY_TYPE \ - --build-var=XMLADA_BUILD \ - --build-name=$1 xmlada.gpr || die "gprinstall failed" - } - if use shared; then - build relocatable - fi - if use static-libs; then - build static - fi - if use static-pic; then - build static-pic - fi - - einstalldocs - dodoc xmlada-roadmap.txt - rm "${D}"/usr/share/doc/${PN}/.buildinfo || die - rm -r "${D}"/usr/share/gpr/manifests || die -} diff --git a/dev-ada/xmlada/xmlada-2019-r1.ebuild b/dev-ada/xmlada/xmlada-23.0.0-r1.ebuild index 794b5c7d879d..67b2018ced01 100644 --- a/dev-ada/xmlada/xmlada-2019-r1.ebuild +++ b/dev-ada/xmlada/xmlada-23.0.0-r1.ebuild @@ -1,20 +1,18 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -ADA_COMPAT=( gnat_201{6,7,8,9} ) +ADA_COMPAT=( gnat_2021 gcc_12 ) inherit ada multiprocessing -MYP=${P}-20190429-19B9D - 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/5cdf916831e87a8f1d4250b5 - -> ${MYP}-src.tar.gz" +SRC_URI="https://github.com/AdaCore/${PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.tar.gz" LICENSE="GPL-3" -SLOT="0" +SLOT="0/${PV}" KEYWORDS="amd64 x86" IUSE="+shared static-libs static-pic" REQUIRED_USE="|| ( shared static-libs static-pic ) @@ -24,18 +22,13 @@ RDEPEND="${ADA_DEPS}" DEPEND="${RDEPEND} dev-ada/gprbuild[${ADA_USEDEP}]" -S="${WORKDIR}"/${MYP}-src - PATCHES=( "${FILESDIR}"/${P}-gentoo.patch ) -src_configure () { - econf --prefix="${D}"/usr -} - -src_compile () { +src_compile() { build () { gprbuild -j$(makeopts_jobs) -m -p -v -XLIBRARY_TYPE=$1 \ -XBUILD=Production -XPROCESSORS=$(makeopts_jobs) xmlada.gpr \ + -largs ${LDFLAGS} \ -cargs ${ADAFLAGS} || die "gprbuild failed" } if use shared; then @@ -50,12 +43,17 @@ src_compile () { } src_test() { - emake test - emake run_test | tee xmlada.testLog + GPR_PROJECT_PATH=schema:input_sources:dom:sax:unicode \ + gprbuild -j$(makeopts_jobs) -m -p -v -XLIBRARY_TYPE=static \ + -XBUILD=Production -XPROCESSORS=$(makeopts_jobs) xmlada.gpr \ + -XTESTS_ACTIVATED=Only \ + -largs ${LDFLAGS} \ + -cargs ${ADAFLAGS} || die "gprbuild failed" + emake --no-print-directory -C tests tests | tee xmlada.testLog grep -q DIFF xmlada.testLog && die } -src_install () { +src_install() { build () { gprinstall -XLIBRARY_TYPE=$1 -f -p -XBUILD=Production \ -XPROCESSORS=$(makeopts_jobs) --prefix="${D}"/usr \ @@ -75,6 +73,14 @@ src_install () { einstalldocs dodoc xmlada-roadmap.txt - rm -f "${D}"/usr/share/doc/${PN}/.buildinfo rm -rf "${D}"/usr/share/gpr/manifests + rm -f "${D}"/usr/share/examples/xmlada/*/b__* + rm -f "${D}"/usr/share/examples/xmlada/*/*.adb.std* + rm -f "${D}"/usr/share/examples/xmlada/*/*.ali + rm -f "${D}"/usr/share/examples/xmlada/*/*.bexch + rm -f "${D}"/usr/share/examples/xmlada/*/*.o + rm -f "${D}"/usr/share/examples/xmlada/*/*example + rm -f "${D}"/usr/share/examples/xmlada/dom/domexample2 + rm -f "${D}"/usr/share/examples/xmlada/sax/saxexample_main + mv "${D}"/usr/share/examples/xmlada "${D}"/usr/share/doc/"${PF}"/examples || die } diff --git a/dev-ada/xmlada/xmlada-23.0.0-r2.ebuild b/dev-ada/xmlada/xmlada-23.0.0-r2.ebuild new file mode 100644 index 000000000000..309f74bc9599 --- /dev/null +++ b/dev-ada/xmlada/xmlada-23.0.0-r2.ebuild @@ -0,0 +1,86 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ADA_COMPAT=( gnat_2021 gcc_12 gcc_13 ) +inherit ada multiprocessing + +DESCRIPTION="Set of modules that provide a simple manipulation of XML streams" +HOMEPAGE="http://libre.adacore.com/" +SRC_URI="https://github.com/AdaCore/${PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~x86" +IUSE="+shared static-libs static-pic" +REQUIRED_USE="|| ( shared static-libs static-pic ) + ${ADA_REQUIRED_USE}" + +RDEPEND="${ADA_DEPS}" +DEPEND="${RDEPEND} + dev-ada/gprbuild[${ADA_USEDEP}]" + +PATCHES=( "${FILESDIR}"/${P}-gentoo.patch ) + +src_compile() { + build () { + gprbuild -j$(makeopts_jobs) -m -p -v -XLIBRARY_TYPE=$1 \ + -XBUILD=Production -XPROCESSORS=$(makeopts_jobs) xmlada.gpr \ + -largs ${LDFLAGS} \ + -cargs ${ADAFLAGS} || die "gprbuild failed" + } + if use shared; then + build relocatable + fi + if use static-libs; then + build static + fi + if use static-pic; then + build static-pic + fi +} + +src_test() { + GPR_PROJECT_PATH=schema:input_sources:dom:sax:unicode \ + gprbuild -j$(makeopts_jobs) -m -p -v -XLIBRARY_TYPE=static \ + -XBUILD=Production -XPROCESSORS=$(makeopts_jobs) xmlada.gpr \ + -XTESTS_ACTIVATED=Only \ + -largs ${LDFLAGS} \ + -cargs ${ADAFLAGS} || die "gprbuild failed" + emake --no-print-directory -C tests tests | tee xmlada.testLog + grep -q DIFF xmlada.testLog && die +} + +src_install() { + build () { + gprinstall -XLIBRARY_TYPE=$1 -f -p -XBUILD=Production \ + -XPROCESSORS=$(makeopts_jobs) --prefix="${D}"/usr \ + --install-name=xmlada --build-var=LIBRARY_TYPE \ + --build-var=XMLADA_BUILD \ + --build-name=$1 xmlada.gpr || die "gprinstall failed" + } + if use shared; then + build relocatable + fi + if use static-libs; then + build static + fi + if use static-pic; then + build static-pic + fi + + einstalldocs + dodoc xmlada-roadmap.txt + rm -rf "${D}"/usr/share/gpr/manifests + rm -f "${D}"/usr/share/examples/xmlada/*/b__* + rm -f "${D}"/usr/share/examples/xmlada/*/*.adb.std* + rm -f "${D}"/usr/share/examples/xmlada/*/*.ali + rm -f "${D}"/usr/share/examples/xmlada/*/*.bexch + rm -f "${D}"/usr/share/examples/xmlada/*/*.o + rm -f "${D}"/usr/share/examples/xmlada/*/*example + rm -f "${D}"/usr/share/examples/xmlada/dom/domexample2 + rm -f "${D}"/usr/share/examples/xmlada/sax/saxexample_main + mv "${D}"/usr/share/examples/xmlada "${D}"/usr/share/doc/"${PF}"/examples || die +} diff --git a/dev-ada/xmlada/xmlada-24.0.0-r2.ebuild b/dev-ada/xmlada/xmlada-24.0.0-r2.ebuild new file mode 100644 index 000000000000..4573d542d587 --- /dev/null +++ b/dev-ada/xmlada/xmlada-24.0.0-r2.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ADA_COMPAT=( gnat_2021 gcc_12 gcc_13 ) +inherit ada multiprocessing + +DESCRIPTION="Set of modules that provide a simple manipulation of XML streams" +HOMEPAGE="http://libre.adacore.com/" +SRC_URI="https://github.com/AdaCore/${PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~x86" +IUSE="doc +shared static-libs static-pic" +REQUIRED_USE="|| ( shared static-libs static-pic ) + ${ADA_REQUIRED_USE}" + +RDEPEND="${ADA_DEPS}" +DEPEND="${RDEPEND} + dev-ada/gprbuild[${ADA_USEDEP}]" +BDEPEND="doc? ( + dev-tex/latexmk + dev-python/sphinx + dev-python/sphinx-rtd-theme + dev-texlive/texlive-latexextra +)" + +PATCHES=( + "${FILESDIR}"/${PN}-23.0.0-gentoo.patch + "${FILESDIR}"/${P}-gentoo.patch +) + +src_prepare() { + default + sed -i \ + -e "s|@PF@|${PF}|g" \ + input_sources/xmlada_input.gpr \ + || die +} + +src_compile() { + build () { + gprbuild -j$(makeopts_jobs) -m -p -v -XLIBRARY_TYPE=$1 \ + -XBUILD=Production -XPROCESSORS=$(makeopts_jobs) xmlada.gpr \ + -largs ${LDFLAGS} \ + -cargs ${ADAFLAGS} || die "gprbuild failed" + } + if use shared; then + build relocatable + fi + if use static-libs; then + build static + fi + if use static-pic; then + build static-pic + fi + if use doc; then + emake -C docs latexpdf + emake -C docs html + fi +} + +src_test() { + GPR_PROJECT_PATH=schema:input_sources:dom:sax:unicode \ + gprbuild -j$(makeopts_jobs) -m -p -v -XLIBRARY_TYPE=static \ + -XBUILD=Production -XPROCESSORS=$(makeopts_jobs) xmlada.gpr \ + -XTESTS_ACTIVATED=Only \ + -largs ${LDFLAGS} \ + -cargs ${ADAFLAGS} || die "gprbuild failed" + emake --no-print-directory -C tests tests | tee xmlada.testLog + grep -q DIFF xmlada.testLog && die + rm docs/*/b__* || die + rm docs/*/*ali || die + rm docs/*/*std* || die + rm docs/*/*bexch || die + rm docs/*/*.o || die + rm docs/*/*example || die + rm docs/dom/domexample2 || die + rm docs/sax/saxexample_main || die +} + +src_install() { + build () { + gprinstall -XLIBRARY_TYPE=$1 -f -p -XBUILD=Production \ + -XPROCESSORS=$(makeopts_jobs) --prefix="${D}"/usr \ + --install-name=xmlada --build-var=LIBRARY_TYPE \ + --build-var=XMLADA_BUILD \ + --build-name=$1 xmlada.gpr || die "gprinstall failed" + } + if use shared; then + build relocatable + fi + if use static-libs; then + build static + fi + if use static-pic; then + build static-pic + fi + + einstalldocs + dodoc xmlada-roadmap.txt + rm -rf "${D}"/usr/share/gpr/manifests +} |