sys-cluster/charliecloud: Version bump to 0.9.10
authorOliver Freyermuth <o.freyermuth@googlemail.com>
Wed, 22 May 2019 20:38:59 +0000 (22:38 +0200)
committerMichał Górny <mgorny@gentoo.org>
Sun, 7 Jul 2019 18:31:03 +0000 (20:31 +0200)
Package-Manager: Portage-2.3.66, Repoman-2.3.12
Signed-off-by: Oliver Freyermuth <o.freyermuth@googlemail.com>
Signed-off-by: Michał Górny <mgorny@gentoo.org>
sys-cluster/charliecloud/Manifest
sys-cluster/charliecloud/charliecloud-0.9.10.ebuild [new file with mode: 0644]
sys-cluster/charliecloud/charliecloud-9999.ebuild
sys-cluster/charliecloud/files/charliecloud-0.9.10-fix-flags.patch [new file with mode: 0644]
sys-cluster/charliecloud/files/charliecloud-0.9.10-fix-hardcoded-gcc.patch [new file with mode: 0644]

index dffc85067767321151dfbd475bae3292cb39c877..ce19b78c8b86c99eb0382946ffc8553d378771b7 100644 (file)
@@ -1,4 +1,5 @@
 DIST charliecloud-0.9.1.tar.gz 194937 BLAKE2B 2ef2ee70cee3293ec4f7f589c9a034afa82835981132ea433d720b2a2750df68adb261540c98bc04e7f8904375dd8804819fb3015dc6e65bbe097fa55d558976 SHA512 6a54912ceb3ea99e9d3d1fa8469d7288df0b71872c6cb1d5a4d324f6f84754b7e4804ec1a3c2a30e7dd6377a3b474fea849eb42014f3599ad27a3f6214642a2b
+DIST charliecloud-0.9.10.tar.gz 275687 BLAKE2B e03c3358dd4e5eb88f9c5a3002366c79563e15d5d7792dd55f2800a001b847c13443fce0689a850aa7e6a0aa510c3f6b53d93a88a6f79326eac27acc9cbe2c57 SHA512 93a6f0c6bcceb54fabbc179b960a0d03f1b3547786ce8d502552ddc571475ea2110d6aa290ce5c245be6e2c7cdc47d3f23ff7e74558f684b4a27358aa0971a61
 DIST charliecloud-0.9.3.tar.gz 200507 BLAKE2B debd06bd6158a473d07618bc8fd9ae8c431212eef87699cdd412cf29390e25f6f9e596ac93eb0d663c47ca0b8243cfbcbfc634066f6de03bb673488471e7ef01 SHA512 d312a583438d579ef4ddd6b1d78cc2c6b32e352dad99dcff93f7e0a346aa11fa534091ad6446217bc6fe0dc6d7299d99ffb2c7bb1a441353fd9b2f118ead2c80
 DIST charliecloud-0.9.4.tar.gz 205882 BLAKE2B 2e669581ed0d672b4b4658aafeb5b14b67ee4f506459f00e19fc094e468c91763587b0c29ffd3d85ea8d1ab043fde0363baa925923bd20af77082a3a17da22bd SHA512 7ea58a372b1287b8ce38640ce31fdf6a131275807dc8194b1e302f9cfae0e220868f37fa6deb7f263e9f3f52a173f42b0f2f4c2e8f5a2e8699639ee5f680880f
 DIST charliecloud-0.9.5.tar.gz 205980 BLAKE2B 9bd7a9817bb394fb4920b0647f0537618b77cdf80a7e4aca74491d041db4c9c60a088c6582cc62a76051393b3ed806819ea851c6fd964390e46f1e1376cca259 SHA512 9e147dec059bc729e7d94496587241e6a4e66c0dbef3dfd8e3d35993cc32555975f6fa9eb5288d7ea14e6d9243fcbfa8020bd1fdaa067d659923ba493b2a70d3
diff --git a/sys-cluster/charliecloud/charliecloud-0.9.10.ebuild b/sys-cluster/charliecloud/charliecloud-0.9.10.ebuild
new file mode 100644 (file)
index 0000000..fe9cc07
--- /dev/null
@@ -0,0 +1,63 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{5,6,7} )
+
+inherit 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 ~amd64-linux ~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="doc examples +pv"
+
+# 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 )
+"
+DEPEND="doc? (
+               dev-python/sphinx[${PYTHON_USEDEP}]
+               dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
+               net-misc/rsync
+       )"
+
+PATCHES=(
+       "${FILESDIR}"/"${PN}-${PV}"-fix-flags.patch
+       "${FILESDIR}"/"${PN}-${PV}"-fix-hardcoded-gcc.patch
+)
+
+src_compile() {
+       emake
+       use doc && emake -C doc-src
+}
+
+src_install() {
+       emake install PREFIX="${EPREFIX}/usr" DESTDIR="${D}" LIBEXEC_DIR="libexec/${PF}"
+       if use doc; then
+               local HTML_DOCS=(doc/.)
+       fi
+       if use examples; then
+               docompress -x "/usr/share/doc/${PF}/examples"
+               dodoc -r examples
+       fi
+       rm -rf "${ED}/usr/share/doc/charliecloud" || die
+       einstalldocs
+}
index f7d1882d07bee7920971be41b2c1fa208ae6addc..a10f56497f1078dd4b0d5a120daba780dcdf2ffa 100644 (file)
@@ -1,10 +1,11 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
 
-# User namespaces don't play well with the sandbox.
-RESTRICT="test"
+PYTHON_COMPAT=( python3_{5,6,7} )
+
+inherit python-single-r1
 
 if [[ ${PV} == "9999" ]] ; then
        inherit git-r3
@@ -20,19 +21,23 @@ HOMEPAGE="https://hpc.github.io/charliecloud/"
 
 SLOT="0"
 LICENSE="Apache-2.0"
-IUSE="doc examples +pv test"
+IUSE="doc examples +pv"
 
-RDEPEND=""
-DEPEND="${RDEPEND}
-       pv? ( sys-apps/pv )
-       doc? ( dev-python/sphinx
-              dev-python/sphinx_rtd_theme
-              net-misc/rsync )
-       test? ( app-arch/pigz )"
+# 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}"
 
-DOCS=(
-       README.rst
-)
+RDEPEND="${PYTHON_DEPS}
+       pv? ( sys-apps/pv )
+"
+DEPEND="doc? (
+               dev-python/sphinx[${PYTHON_USEDEP}]
+               dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
+               net-misc/rsync
+       )"
 
 src_compile() {
        emake
@@ -40,28 +45,10 @@ src_compile() {
 }
 
 src_install() {
-       emake install PREFIX="${EPREFIX}/usr" DESTDIR="${ED}"
-       if use doc; then
-               mv doc html || die
-               local HTML_DOCS=(html/.)
-       fi
+       emake install PREFIX="${EPREFIX}/usr" DESTDIR="${D}" DOCDIR="${ED}/usr/share/doc/${PF}" LIBEXEC_DIR="libexec/${PF}"
        if use examples; then
-               docompress -x "${EPREFIX}/usr/share/doc/${PF}/examples"
-               DOCS+=(examples)
+               docompress -x "/usr/share/doc/${PF}/examples"
+               dodoc -r examples
        fi
-       rm -rf "${ED}/usr/share/doc/charliecloud" || die
        einstalldocs
 }
-
-src_test() {
-       cd "${S}/test" || die
-       export CH_TEST_TARDIR="${T}/tarballs"
-       export CH_TEST_IMGDIR="${T}/images"
-
-       # Do not run tests requiring root.
-       export CH_TEST_PERMDIRS="skip"
-       export CH_TEST_SKIP_DOCKER=yes
-       sed -i 's/CHTEST_HAVE_SUDO=yes/CHTEST_HAVE_SUDO=no/' "${S}/test/common.bash" || die
-
-       emake test-quick
-}
diff --git a/sys-cluster/charliecloud/files/charliecloud-0.9.10-fix-flags.patch b/sys-cluster/charliecloud/files/charliecloud-0.9.10-fix-flags.patch
new file mode 100644 (file)
index 0000000..24f2f2d
--- /dev/null
@@ -0,0 +1,37 @@
+From f0b867bb3bb527150e86a891c0c84dff3acc39e8 Mon Sep 17 00:00:00 2001
+From: Peter Wienemann <wienemann@physik.uni-bonn.de>
+Date: Mon, 1 Jul 2019 19:17:25 +0200
+Subject: [PATCH] PR #462 from @wiene: Add missing compiler flags for examples
+
+This patch ensures that CFLAGS, CPPFLAGS and LDFLAGS settings are
+respected when compiling/linking (lib)sotest, pivot_root and userns.
+---
+ examples/syscalls/Makefile | 2 +-
+ test/Makefile              | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/examples/syscalls/Makefile b/examples/syscalls/Makefile
+index 4dbef21b..177ab42a 100644
+--- a/examples/syscalls/Makefile
++++ b/examples/syscalls/Makefile
+@@ -10,4 +10,4 @@ clean:
+ $(BINS): Makefile
+ %: %.c
+-      gcc $(CFLAGS) $< -o $@
++      gcc $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $< -o $@
+diff --git a/test/Makefile b/test/Makefile
+index 50f24596..97a9316b 100644
+--- a/test/Makefile
++++ b/test/Makefile
+@@ -81,8 +81,8 @@ sotest/lib/libsotest.so.1.0: sotest/libsotest.so.1.0
+ # the container. (Issue #227.)
+ sotest/sotest: sotest/sotest.c sotest/libsotest.so.1.0
+-      gcc -o $@ -L./sotest -lsotest $^
++      gcc -o $@ $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -L./sotest -lsotest $^
+ sotest/libsotest.so.1.0: sotest/libsotest.c
+-      gcc -o $@ -shared -fPIC -Wl,-soname,libsotest.so.1 -lc $^
++      gcc -o $@ $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -shared -fPIC -Wl,-soname,libsotest.so.1 -lc $^
+       ln -f -s libsotest.so.1.0 sotest/libsotest.so
+       ln -f -s libsotest.so.1.0 sotest/libsotest.so.1
diff --git a/sys-cluster/charliecloud/files/charliecloud-0.9.10-fix-hardcoded-gcc.patch b/sys-cluster/charliecloud/files/charliecloud-0.9.10-fix-hardcoded-gcc.patch
new file mode 100644 (file)
index 0000000..5654e71
--- /dev/null
@@ -0,0 +1,21 @@
+From d42f3201bb91c582d4533c732e167961030091f9 Mon Sep 17 00:00:00 2001
+From: Oliver Freyermuth <o.freyermuth@googlemail.com>
+Date: Sat, 6 Jul 2019 17:01:06 +0200
+Subject: [PATCH] examples/syscall/Makefile: Fix hardcoded call to gcc.
+
+To be open for choice of different C compilers,
+honour CC variable.
+---
+ examples/syscalls/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/examples/syscalls/Makefile b/examples/syscalls/Makefile
+index 177ab42a..7dc9a4b8 100644
+--- a/examples/syscalls/Makefile
++++ b/examples/syscalls/Makefile
+@@ -10,4 +10,4 @@ clean:
+ $(BINS): Makefile
+ %: %.c
+-      gcc $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $< -o $@
++      $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $< -o $@