sys-cluster/charliecloud: Version bump to 0.15.
authorOliver Freyermuth <o.freyermuth@googlemail.com>
Wed, 15 Apr 2020 19:12:52 +0000 (21:12 +0200)
committerJoonas Niilola <juippis@gentoo.org>
Fri, 17 Apr 2020 15:10:31 +0000 (18:10 +0300)
Upstream moved from a custom configure script
to autotools and added support for many builders.

Closes: https://bugs.gentoo.org/696428
Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Oliver Freyermuth <o.freyermuth@googlemail.com>
Closes: https://github.com/gentoo/gentoo/pull/15364
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
sys-cluster/charliecloud/Manifest
sys-cluster/charliecloud/charliecloud-0.15.ebuild [new file with mode: 0644]
sys-cluster/charliecloud/charliecloud-9999.ebuild
sys-cluster/charliecloud/metadata.xml

index 80b5b98868beacac155ebe9d43d9864220447643..4a3205b29d7bf5d32466ebdce287e347eefffb87 100644 (file)
@@ -1,3 +1,4 @@
 DIST charliecloud-0.10.tar.gz 301083 BLAKE2B be0c650bebc12fd047b1afc61588b4b9cfc0d0addfddb808765d8e125c70329d6c06a86144b4167e5abaf64392ad1891319aabd2ba8fb528de2d9789d040fc0c SHA512 681e2f30f730b42b55b4097dba78e41924b17990354b866e04e09e6d2e4bb584211c130f9a04619dcdd38f2a3eaaad7615ee5ec20a266ee2332b0a512492331f
+DIST charliecloud-0.15.tar.gz 346718 BLAKE2B a3710814864904c5db282d092f64faf9a11aeea016c788ee4be62f11257b5b5200d0c1887150b93f18446034d7919df933d3badcf33907a81c0b33e65a5e9f78 SHA512 70f6c9a18f613d05396eda5d41044ec699cf6366ae1bf43839275e62ac317231bb1c3278469040faa03af007260d84e2d718c0fb3fb45e6ace8fb733c6275a84
 DIST charliecloud-0.9.10.tar.gz 275687 BLAKE2B e03c3358dd4e5eb88f9c5a3002366c79563e15d5d7792dd55f2800a001b847c13443fce0689a850aa7e6a0aa510c3f6b53d93a88a6f79326eac27acc9cbe2c57 SHA512 93a6f0c6bcceb54fabbc179b960a0d03f1b3547786ce8d502552ddc571475ea2110d6aa290ce5c245be6e2c7cdc47d3f23ff7e74558f684b4a27358aa0971a61
 DIST charliecloud-0.9.6.tar.gz 205380 BLAKE2B 2e95f5486ea6d2306512378290cd29114bc688717741436ae9cc8c1dd2679c22ab21059574d62222cd14063bacecc6a7005b216cd9e2ed01fe1593a3b69871b0 SHA512 55af3e57ef6c2b81ae10bd50d149872af50d508392b271bdaa75cf3b655659ec7da5016a9deeea15aaa20e265e8066d1ed982c122cb5e62ee6d47f25d367410f
diff --git a/sys-cluster/charliecloud/charliecloud-0.15.ebuild b/sys-cluster/charliecloud/charliecloud-0.15.ebuild
new file mode 100644 (file)
index 0000000..0085a7e
--- /dev/null
@@ -0,0 +1,77 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7} )
+
+inherit autotools eutils python-single-r1
+
+if [[ ${PV} == "9999" ]] ; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/hpc/${PN}.git"
+       S="${WORKDIR}/${P}"
+else
+       SRC_URI="https://github.com/hpc/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+       KEYWORDS="~amd64 ~x86 ~x86-linux"
+fi
+
+DESCRIPTION="Lightweight user-defined software stacks for high-performance computing"
+HOMEPAGE="https://hpc.github.io/charliecloud/"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+IUSE="ch-grow doc examples +pv +squashfs squashfuse"
+
+# Extensive test suite exists, but downloads container images
+# directly and via Docker and installs packages inside using apt/yum.
+# Additionally, clashes with portage namespacing and sandbox.
+RESTRICT="test"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}
+       pv? ( sys-apps/pv )
+       squashfs? ( sys-fs/squashfs-tools )
+       squashfuse? ( sys-fs/squashfuse )"
+DEPEND="
+       ch-grow? (
+               $(python_gen_cond_dep '
+                       dev-python/lark-parser[${PYTHON_MULTI_USEDEP}]
+                       dev-python/requests[${PYTHON_MULTI_USEDEP}]
+               ')
+       )
+       doc? (
+               $(python_gen_cond_dep '
+                       dev-python/sphinx[${PYTHON_MULTI_USEDEP}]
+                       dev-python/sphinx_rtd_theme[${PYTHON_MULTI_USEDEP}]
+               ')
+               net-misc/rsync
+       )"
+
+src_prepare() {
+       default
+       eautoreconf
+}
+
+src_configure() {
+       local econf_args=()
+       econf_args+=(
+               $(use_enable doc html)
+               $(use_enable ch-grow)
+               # Libdir is used as a libexec-style destination.
+               --libdir="${EPREFIX}"/usr/lib
+               # Attempts to call python-exec directly otherwise.
+               --with-sphinx-python=$(which python) \
+       )
+       econf "${econf_args[@]}"
+}
+
+pkg_postinst() {
+       elog "Various builders are supported, as alternative "
+       elog "to the internal ch-grow. The following packages "
+       elog "can be installed to get the corresponding support."
+
+       optfeature "Building with Buildah"      "app-emulation/buildah"
+       optfeature "Building with Docker"       "app-emulation/docker"
+}
index c838d73e90e9108c990b5e23d33766c9c42ecd1e..0085a7e407f1fb7dcfc5792381f250d5d0260b1a 100644 (file)
@@ -5,7 +5,7 @@ EAPI=7
 
 PYTHON_COMPAT=( python3_{6,7} )
 
-inherit python-single-r1
+inherit autotools eutils python-single-r1
 
 if [[ ${PV} == "9999" ]] ; then
        inherit git-r3
@@ -13,7 +13,7 @@ if [[ ${PV} == "9999" ]] ; then
        S="${WORKDIR}/${P}"
 else
        SRC_URI="https://github.com/hpc/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-       KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+       KEYWORDS="~amd64 ~x86 ~x86-linux"
 fi
 
 DESCRIPTION="Lightweight user-defined software stacks for high-performance computing"
@@ -21,7 +21,7 @@ HOMEPAGE="https://hpc.github.io/charliecloud/"
 
 SLOT="0"
 LICENSE="Apache-2.0"
-IUSE="doc examples +pv squashfuse"
+IUSE="ch-grow doc examples +pv +squashfs squashfuse"
 
 # Extensive test suite exists, but downloads container images
 # directly and via Docker and installs packages inside using apt/yum.
@@ -32,9 +32,15 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}"
 
 RDEPEND="${PYTHON_DEPS}
        pv? ( sys-apps/pv )
-       squashfuse? ( sys-fs/squashfuse )
-"
+       squashfs? ( sys-fs/squashfs-tools )
+       squashfuse? ( sys-fs/squashfuse )"
 DEPEND="
+       ch-grow? (
+               $(python_gen_cond_dep '
+                       dev-python/lark-parser[${PYTHON_MULTI_USEDEP}]
+                       dev-python/requests[${PYTHON_MULTI_USEDEP}]
+               ')
+       )
        doc? (
                $(python_gen_cond_dep '
                        dev-python/sphinx[${PYTHON_MULTI_USEDEP}]
@@ -43,16 +49,29 @@ DEPEND="
                net-misc/rsync
        )"
 
-src_compile() {
-       emake
-       use doc && emake -C doc-src
+src_prepare() {
+       default
+       eautoreconf
 }
 
-src_install() {
-       emake install PREFIX="${EPREFIX}/usr" DESTDIR="${D}" DOCDIR="${ED}/usr/share/doc/${PF}" LIBEXEC_DIR="libexec/${PF}"
-       if use examples; then
-               docompress -x "/usr/share/doc/${PF}/examples"
-               dodoc -r examples
-       fi
-       einstalldocs
+src_configure() {
+       local econf_args=()
+       econf_args+=(
+               $(use_enable doc html)
+               $(use_enable ch-grow)
+               # Libdir is used as a libexec-style destination.
+               --libdir="${EPREFIX}"/usr/lib
+               # Attempts to call python-exec directly otherwise.
+               --with-sphinx-python=$(which python) \
+       )
+       econf "${econf_args[@]}"
+}
+
+pkg_postinst() {
+       elog "Various builders are supported, as alternative "
+       elog "to the internal ch-grow. The following packages "
+       elog "can be installed to get the corresponding support."
+
+       optfeature "Building with Buildah"      "app-emulation/buildah"
+       optfeature "Building with Docker"       "app-emulation/docker"
 }
index 584c3076690564a86a1fe814e6a43ea8f4201ace..61291d6ce81d3d8c0a0c7daf3978babfdc5b6d09 100644 (file)
@@ -17,7 +17,9 @@
     <remote-id type="github">hpc/charliecloud</remote-id>
   </upstream>
   <use>
+    <flag name='ch-grow'>Build the internal builder ch-grow</flag>
     <flag name='pv'>Use sys-apps/pv to enable progress bar functionality</flag>
+    <flag name='squashfs'>Use sys-fs/squashfs-tools for creating SquashFS images</flag>
     <flag name='squashfuse'>Use sys-fs/squashfuse for the SquashFS workflow</flag>
   </use>
 </pkgmetadata>