dev-ada/xmlada: Fix reinstalling and eliminate duplicated files
authorTupone Alfredo <tupone@gentoo.org>
Fri, 29 Dec 2017 20:36:39 +0000 (21:36 +0100)
committerTupone Alfredo <tupone@gentoo.org>
Fri, 29 Dec 2017 20:36:39 +0000 (21:36 +0100)
Package-Manager: Portage-2.3.13, Repoman-2.3.3

dev-ada/xmlada/Manifest
dev-ada/xmlada/xmlada-2016.ebuild [deleted file]
dev-ada/xmlada/xmlada-2017.ebuild

index a8b0ab867aff47ac4ec393f1cd1381a09ab5ed52..f2cfd0ebb3751172837a186ee4e4aee20cc57ade 100644 (file)
@@ -1,2 +1 @@
-DIST xmlada-gpl-2016-src.tar.gz 1440671 BLAKE2B 32998fbdb680f3a1ea7915f144c3039441d8608ded9fe2df99d9b5c9d13436a020c25a9773cced753ffa3ff89a918bbb1ef3ca310cbc58f583682deb7dcc9d09 SHA512 d1d7c3d91731394235aed4b80c91b1babe30d5f184282fae8087ee556318475e3923ed628b805693fc89a4d9bb219b0fb0937bc5024a742226da0245d36ed652
 DIST xmlada-gpl-2017-src.tar.gz 1578393 BLAKE2B 7b4894040b6044e86c96cbd530ebda5c0cfc4ad0e2b472d46798a93f535aca0916b03385a3aef49bd4e59d508a9665c856360e9cab0a4f67b15091228b629d81 SHA512 371f6adc01550a4bb13204ec0404dc1165438db595f4346813e5a23a155de74c857c40c55adde173919c2fe35b3b91d78b235c9718ee86bc848e62ddfd7fa2b4
diff --git a/dev-ada/xmlada/xmlada-2016.ebuild b/dev-ada/xmlada/xmlada-2016.ebuild
deleted file mode 100644 (file)
index 585a549..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-# 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_test() {
-       emake test
-       emake run_test | grep DIFF && die
-}
-
-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
-}
index b80b4c4237f5161579efa792543bf01fc1d935a2..04b53bcdf500f9155728e26096f7364c7dfc3c63 100644 (file)
@@ -33,16 +33,17 @@ src_configure () {
 }
 
 src_compile () {
-       if use shared; then
-               gprbuild -j$(makeopts_jobs) -m -p -v -XLIBRARY_TYPE=relocatable \
+       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
        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"
+                       build ${kind}
                fi
        done
 }
@@ -53,11 +54,33 @@ src_test() {
 }
 
 src_install () {
+       local includedir=/usr/include/${PN}
+
+       fix_install () {
+               mv "${D}"${includedir}/$1.$2/* "${D}"${includedir}/$1/ || die
+               for file in "${D}"${includedir}/$1/*; do
+                       dosym ../$1/$(basename ${file}) \
+                               ${includedir}/$1.$2/$(basename ${file})
+               done
+       }
+
        for kind in shared static static-pic; do
                if use ${kind}; then
                        emake PROCESSORS=$(makeopts_jobs) install-${kind}
                fi
        done
+       rm "${D}"/usr/lib/libxmlada_* || die
+       for dir in xmlada_{dom,input,sax,schema,unicode}; do
+               dodir /usr/include/${PN}/${dir}
+               if use shared; then
+                       fix_install ${dir} relocatable
+               fi
+               for kind in static static-pic; do
+                       if use ${kind}; then
+                               fix_install ${dir} ${kind}
+                       fi
+               done
+       done
        einstalldocs
        dodoc xmlada-roadmap.txt
        rm "${D}"/usr/share/doc/${PN}/.buildinfo || die