public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-cluster/glusterfs/files/, sys-cluster/glusterfs/
@ 2017-10-22 14:17 James Le Cuirot
  0 siblings, 0 replies; 7+ messages in thread
From: James Le Cuirot @ 2017-10-22 14:17 UTC (permalink / raw
  To: gentoo-commits

commit:     bbe740704477875c80a724ad69f0c8dcd1540861
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 22 13:16:07 2017 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Sun Oct 22 14:16:43 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bbe74070

sys-cluster/glusterfs: Bump to 3.12.2, EAPI 6, fix #616760, and more

* Fix URLs.
* Prefix fixes.
* Migration away from autotools-utils.eclass.
* Create user and group for statedumps.
* Use upstream tmpfiles.d file.
* Fix poisoned sysmacros.h issue (#616760).

Package-Manager: Portage-2.3.8, Repoman-2.3.2
Closes: https://bugs.gentoo.org/631392

 sys-cluster/glusterfs/Manifest                     |   1 +
 sys-cluster/glusterfs/files/glusterd-r3.initd      |  32 ++++
 .../glusterfs-3.12.2-poisoned-sysmacros.patch      |  11 ++
 .../files/glusterfs-3.12.2-silent_rules.patch      |  22 +++
 sys-cluster/glusterfs/glusterfs-3.12.2.ebuild      | 213 +++++++++++++++++++++
 5 files changed, 279 insertions(+)

diff --git a/sys-cluster/glusterfs/Manifest b/sys-cluster/glusterfs/Manifest
index 4b45438299d..75b7af89fac 100644
--- a/sys-cluster/glusterfs/Manifest
+++ b/sys-cluster/glusterfs/Manifest
@@ -1,4 +1,5 @@
 DIST glusterfs-3.10.1.tar.gz 8926368 SHA256 d3c23df3299964efe6b688c94ddde258506ecf173b58e8c07fa18d470bb21517 SHA512 35acf10d37db7ca9cf7d88e4eabcac4febdccfe15cbe68df86c44042987547f3a56447a1ced5ed238d171efdbcb97dd1fc6917283641bdcd7d476deb37ad0871 WHIRLPOOL 7ce3b5cbe136b1d09b4c0c062decf0d9c5bba03f9b7249648e886ceff758061e73863c9f6d82ed2de3fc41546950ee08c022683174283dc03201c12d61d295aa
+DIST glusterfs-3.12.2.tar.gz 9404275 SHA256 6f9fbf8183df9e012a2c95f3ac3fad303443218beef4fd060f4af57c0bdbc069 SHA512 2bcb3e9356964ea8557ea4291cf6b641122c58a3beb59c00de0acb6772b05b22c0610db4f2bde2e506e15233cfa610db415c6622933e04600ddee3cc55b01166 WHIRLPOOL e788f65be5a3b9965ae485a1d273c2890d89fcff705490c040192fc549580e051e3208e0d2ccdc8dc9350c1e57b188a39a1690751dee1201ef032ca71d514871
 DIST glusterfs-3.6.5.tar.gz 6091408 SHA256 20d912ef35fb8350c50c39c15134a3558ee90d012203f049799c8eb67a61fd2a SHA512 7ca41855239818fc4c84cdb86e1f1d39502e781d5117a5ee50ea134f03f0823a8640ee9bda28f05463e8504aba9ddb12ac72e118f0ce7c3755c083033f5677ca WHIRLPOOL 9fc0592052d976d65fcc769c69d910fa6d909695162bccf80c1e799a2c54c531ab03a4afd3788951c231a214a22e5f8bb3613a83277858627425b86fd532ab5e
 DIST glusterfs-3.7.4.tar.gz 7552110 SHA256 f98f448117d1de7666ae425eddd8d7d87b02c57f6627234ce96ba60566f47173 SHA512 f9a281f3a37835f9f54679740ddb19b307babe576a8f14c9ef24d256f483789c227d7e7c5b0ed4ef5c13a257bcf00d0c17b6108fa60c5e45d0175df6e236b3a5 WHIRLPOOL 7b0320936de078234228cb691f3e381da3cc89c638d6246aba63695aa36cb114afca6e53d12d23de441b8da0b3a594ac1702b450d5d14720254af73e689c4ab8
 DIST glusterfs-3.8.11.tar.gz 8544971 SHA256 2285c02f9449168eabeaa7b72706e80f3de659eb685293dd899c71c33798702e SHA512 61cadc567a73403c78eac5e472aadd1457053be936042ea1218c172760376b026152e84b4ca15a0c249524347d434cc7d35c3a73f4d0b01e89c6aec5edcbbb49 WHIRLPOOL 21d4c2da1d281cb03181c21385a62d74c71f24936d2c33da22085accb5fa563b7095757b7df3eb30bf865c37fe683c420756c542d6933c99c0d3f9025c07a217

diff --git a/sys-cluster/glusterfs/files/glusterd-r3.initd b/sys-cluster/glusterfs/files/glusterd-r3.initd
new file mode 100644
index 00000000000..27682d06216
--- /dev/null
+++ b/sys-cluster/glusterfs/files/glusterd-r3.initd
@@ -0,0 +1,32 @@
+#!/sbin/openrc-run
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Gluster elastic volume management daemon"
+command="/usr/sbin/glusterd"
+pidfile="/var/run/${SVCNAME}.pid"
+command_args="-N"
+
+command_background="yes"
+
+depend() {
+	need net
+	before netmount
+}
+
+start_pre() {
+	# Ensure that the GlusterFS auxiliary mount parent directory exists
+	checkpath --directory --owner gluster:gluster --mode 0775 /var/run/gluster
+}
+
+start_post() {
+	local c=0
+	ebegin "Waiting for glusterd to start up"
+	while ! /usr/sbin/gluster volume list &>/dev/null && [ "${c}" -lt "${glusterd_max_wait_start-60}" ]; do
+		(( ++c ))
+	done
+	[ "${c}" -lt "${glusterd_max_wait_start-60}" ]
+	eend $?
+
+	return 0
+}

diff --git a/sys-cluster/glusterfs/files/glusterfs-3.12.2-poisoned-sysmacros.patch b/sys-cluster/glusterfs/files/glusterfs-3.12.2-poisoned-sysmacros.patch
new file mode 100644
index 00000000000..34153516374
--- /dev/null
+++ b/sys-cluster/glusterfs/files/glusterfs-3.12.2-poisoned-sysmacros.patch
@@ -0,0 +1,11 @@
+diff --git a/libglusterfs/src/compat.h b/libglusterfs/src/compat.h
+index 1d0ac27e8..b1a7c0a93 100644
+--- a/libglusterfs/src/compat.h
++++ b/libglusterfs/src/compat.h
+@@ -510,6 +510,7 @@ int gf_mkostemp (char *tmpl, int suffixlen, int flags);
+ /* Use run API, see run.h */
+ #include <stdlib.h> /* system(), mkostemp() */
+ #include <stdio.h> /* popen() */
++#include <sys/sysmacros.h>
+ #pragma GCC poison system mkostemp popen
+ #endif

diff --git a/sys-cluster/glusterfs/files/glusterfs-3.12.2-silent_rules.patch b/sys-cluster/glusterfs/files/glusterfs-3.12.2-silent_rules.patch
new file mode 100644
index 00000000000..d5e2727aa8d
--- /dev/null
+++ b/sys-cluster/glusterfs/files/glusterfs-3.12.2-silent_rules.patch
@@ -0,0 +1,22 @@
+--- a/configure.ac	2017-08-30 13:46:34.075359703 +0100
++++ b/configure.ac	2017-09-07 21:28:48.110879291 +0100
+@@ -19,19 +19,6 @@
+ #but libglusterfs fails to build with contrib (Then are not set up that way?)
+ #AM_INIT_AUTOMAKE([subdir-objects])
+ 
+-m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES(yes)])
+-
+-if make --help 2>&1 | grep -q no-print-directory; then
+-   AM_MAKEFLAGS="$AM_MAKEFLAGS --no-print-directory";
+-fi
+-
+-if make --help 2>&1 | grep -q quiet; then
+-   AM_MAKEFLAGS="$AM_MAKEFLAGS --quiet"
+-fi
+-
+-if libtool --help 2>&1 | grep -q quiet; then
+-   AM_LIBTOOLFLAGS="--quiet";
+-fi
+ 
+ AC_CONFIG_HEADERS([config.h site.h])
+ 

diff --git a/sys-cluster/glusterfs/glusterfs-3.12.2.ebuild b/sys-cluster/glusterfs/glusterfs-3.12.2.ebuild
new file mode 100644
index 00000000000..3811ea410c4
--- /dev/null
+++ b/sys-cluster/glusterfs/glusterfs-3.12.2.ebuild
@@ -0,0 +1,213 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools elisp-common python-single-r1 systemd user versionator
+
+DESCRIPTION="GlusterFS is a powerful network/cluster filesystem"
+HOMEPAGE="https://www.gluster.org/"
+SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(get_version_component_range '1-2')/${PV}/${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 LGPL-3+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="bd-xlator crypt-xlator debug emacs +fuse +georeplication glupy infiniband qemu-block rsyslog static-libs +syslog systemtap test +tiering vim-syntax +xml"
+
+REQUIRED_USE="georeplication? ( ${PYTHON_REQUIRED_USE} )
+	glupy? ( ${PYTHON_REQUIRED_USE} )"
+
+# the tests must be run as root
+RESTRICT="test"
+
+# sys-apps/util-linux is required for libuuid
+RDEPEND="bd-xlator? ( sys-fs/lvm2 )
+	emacs? ( virtual/emacs )
+	fuse? ( >=sys-fs/fuse-2.7.0:0 )
+	georeplication? ( ${PYTHON_DEPS} )
+	infiniband? ( sys-fabric/libibverbs:* sys-fabric/librdmacm:* )
+	qemu-block? ( dev-libs/glib:2 )
+	systemtap? ( dev-util/systemtap )
+	tiering? ( dev-db/sqlite:3 )
+	xml? ( dev-libs/libxml2 )
+	sys-libs/readline:=
+	dev-libs/libaio
+	dev-libs/openssl:=[-bindist]
+	dev-libs/userspace-rcu:=
+	|| ( sys-libs/glibc sys-libs/argp-standalone )
+	sys-apps/util-linux"
+DEPEND="${RDEPEND}
+	virtual/acl
+	virtual/pkgconfig
+	sys-devel/bison
+	sys-devel/flex
+	test? ( >=dev-util/cmocka-1.0.1
+		app-benchmarks/dbench
+		dev-vcs/git
+		net-fs/nfs-utils
+		virtual/perl-Test-Harness
+		dev-libs/yajl
+		sys-fs/xfsprogs
+		sys-apps/attr )"
+
+SITEFILE="50${PN}-mode-gentoo.el"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-3.12.2-poisoned-sysmacros.patch"
+	"${FILESDIR}/${PN}-3.12.2-silent_rules.patch"
+)
+
+DOCS=( AUTHORS ChangeLog NEWS README.md THANKS )
+
+# Maintainer notes:
+# * The build system will always configure & build argp-standalone but it'll never use it
+#   if the argp.h header is found in the system. Which should be the case with
+#   glibc or if argp-standalone is installed.
+
+pkg_setup() {
+	python_setup "python2*"
+	python-single-r1_pkg_setup
+
+	# Needed for statedumps
+	# https://github.com/gluster/glusterfs/commit/0e50c4b3ea734456c14e2d7a578463999bd332c3
+	enewgroup gluster
+	enewuser gluster -1 -1 "${EPREFIX}"/var/run/gluster gluster
+}
+
+src_prepare() {
+	default
+
+	# build rpc-transport and xlators only once as shared libs
+	find rpc/rpc-transport xlators -name Makefile.am |
+		xargs sed -i 's|.*$(top_srcdir).*\.sym|\0 -shared|' || die
+
+	# fix execution permissions
+	chmod +x libglusterfs/src/gen-defaults.py || die
+
+	eautoreconf
+}
+
+src_configure() {
+	econf \
+		--disable-dependency-tracking \
+		--disable-silent-rules \
+		--disable-fusermount \
+		$(use_enable debug) \
+		$(use_enable bd-xlator) \
+		$(use_enable crypt-xlator) \
+		$(use_enable fuse fuse-client) \
+		$(use_enable georeplication) \
+		$(use_enable glupy) \
+		$(use_enable infiniband ibverbs) \
+		$(use_enable qemu-block) \
+		$(use_enable static-libs static) \
+		$(use_enable syslog) \
+		$(use_enable systemtap) \
+		$(use_enable test cmocka) \
+		$(use_enable tiering) \
+		$(use_enable xml xml-output) \
+		--with-tmpfilesdir="${EPREFIX}"/etc/tmpfiles.d \
+		--docdir="${EPREFIX}"/usr/share/doc/${PF} \
+		--localstatedir="${EPREFIX}"/var
+}
+
+src_compile() {
+	default
+	use emacs && elisp-compile extras/glusterfs-mode.el
+}
+
+src_install() {
+	default
+
+	rm \
+		"${ED}"/etc/glusterfs/glusterfs-{georep-,}logrotate \
+		"${ED}"/etc/glusterfs/gluster-rsyslog-*.conf \
+		"${ED}"/usr/share/doc/${PF}/glusterfs{-mode.el,.vim} || die "removing false files failed"
+
+	insinto /etc/logrotate.d
+	newins "${FILESDIR}"/glusterfs.logrotate glusterfs
+
+	if use rsyslog ; then
+		insinto /etc/rsyslog.d
+		newins extras/gluster-rsyslog-7.2.conf 60-gluster.conf
+	fi
+
+	if use emacs ; then
+		elisp-install ${PN} extras/glusterfs-mode.el*
+		elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+	fi
+
+	if use vim-syntax ; then
+		insinto /usr/share/vim/vimfiles/ftdetect; doins "${FILESDIR}"/${PN}.vim
+		insinto /usr/share/vim/vimfiles/syntax; doins extras/${PN}.vim
+	fi
+
+	# insert some other tools which might be useful
+	insinto /usr/share/glusterfs/scripts
+	doins \
+		extras/backend-{cleanup,xattr-sanitize}.sh \
+		extras/clear_xattrs.sh \
+		extras/migrate-unify-to-distribute.sh
+
+	# correct permissions on installed scripts
+	# fperms 0755 /usr/share/glusterfs/scripts/*.sh
+	chmod 0755 "${ED}"/usr/share/glusterfs/scripts/*.sh || die
+
+	if use georeplication ; then
+		# move the gsync-sync-gfid tool to a binary path
+		# and set a symlink to be compliant with all other distros
+		mv "${ED}"/usr/{share/glusterfs/scripts/gsync-sync-gfid,libexec/glusterfs/} || die
+		dosym ../../../libexec/glusterfs/gsync-sync-gfid /usr/share/glusterfs/scripts/gsync-sync-gfid
+	fi
+
+	newinitd "${FILESDIR}/${PN}-r1.initd" glusterfsd
+	newinitd "${FILESDIR}/glusterd-r3.initd" glusterd
+	newconfd "${FILESDIR}/${PN}.confd" glusterfsd
+
+	keepdir /var/log/${PN}
+	keepdir /var/lib/glusterd
+
+	# QA
+	rm -r "${ED}/var/run/" || die
+	if ! use static-libs; then
+		find "${D}" -type f -name '*.la' -delete || die
+	fi
+
+	# fix all shebang for python2 #560750
+	python_fix_shebang "${ED}"
+}
+
+src_test() {
+	./run-tests.sh || die
+}
+
+pkg_postinst() {
+	elog "Starting with ${PN}-3.1.0, you can use the glusterd daemon to configure your"
+	elog "volumes dynamically. To do so, simply use the gluster CLI after running:"
+	elog "  /etc/init.d/glusterd start"
+	echo
+	elog "For static configurations, the glusterfsd startup script can be multiplexed."
+	elog "The default startup script uses /etc/conf.d/glusterfsd to configure the"
+	elog "separate service.  To create additional instances of the glusterfsd service"
+	elog "simply create a symlink to the glusterfsd startup script."
+	echo
+	elog "Example:"
+	elog "    # ln -s glusterfsd /etc/init.d/glusterfsd2"
+	elog "    # ${EDITOR} /etc/glusterfs/glusterfsd2.vol"
+	elog "You can now treat glusterfsd2 like any other service"
+	echo
+	ewarn "You need to use a ntp client to keep the clocks synchronized across all"
+	ewarn "of your servers. Setup a NTP synchronizing service before attempting to"
+	ewarn "run GlusterFS."
+	echo
+	elog "If you are upgrading from a previous version of ${PN}, please read:"
+	elog "  http://docs.gluster.org/en/latest/Upgrade-Guide/upgrade_to_$(get_version_component_range '1-2')/"
+
+	use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-cluster/glusterfs/files/, sys-cluster/glusterfs/
@ 2018-05-26 11:07 James Le Cuirot
  0 siblings, 0 replies; 7+ messages in thread
From: James Le Cuirot @ 2018-05-26 11:07 UTC (permalink / raw
  To: gentoo-commits

commit:     726354281e331b53c25f336cf5b8b6a4b8e9beba
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sat May 26 11:06:51 2018 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Sat May 26 11:07:30 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=72635428

sys-cluster/glusterfs: Drop old 3.12.3

Closes: https://bugs.gentoo.org/639838
Package-Manager: Portage-2.3.40, Repoman-2.3.9

 sys-cluster/glusterfs/Manifest                     |   1 -
 .../files/glusterfs-3.12.3-libtirpc.patch          |  45 -----
 sys-cluster/glusterfs/glusterfs-3.12.3.ebuild      | 218 ---------------------
 3 files changed, 264 deletions(-)

diff --git a/sys-cluster/glusterfs/Manifest b/sys-cluster/glusterfs/Manifest
index 0f908a04fce..c3dd54c6e00 100644
--- a/sys-cluster/glusterfs/Manifest
+++ b/sys-cluster/glusterfs/Manifest
@@ -1,3 +1,2 @@
-DIST glusterfs-3.12.3.tar.gz 7187644 BLAKE2B 736c6bb408b0bd289ce5ce0abcc7e8bf4b7f96e4e92a1e669f016b59fb16993b17f7cf50fed09a6eeb851b57054c7bf9e595b642c506b0aca567d7ae80de0e84 SHA512 f648b8324a69360b510c947e49918467c969dcc21b6a408b6916b780aa78c44abe027b6c84d696eed7d5f381b055edd3be1dfe4f3ea8f76d15d9319cd08cfa3d
 DIST glusterfs-4.0.0.tar.gz 7632629 BLAKE2B 9367d2c99452d261d889cf564f3a055e1459ee54377cbf8cf6cc46c8d7f153bb258892fb73fc492d1dc6c5bea156d204971256fefc96f9f4825583d9c1086563 SHA512 acd3c462a8e15fb31f4b30d2e217928488e32d66ae7d1061df3e166354a4ddcdeb0ba0bcc994b7563f83376c882800fad07e190e0086fda987915c195266421f
 DIST glusterfs-4.0.2.tar.gz 7643713 BLAKE2B 6314f81fe1474bcf8c577aa68a32c46a6d1e586b32c698a9e30850080408958c0541c1afe72520574fcabebb0884cf3bf315b22582d932876bbb5a4393e167f0 SHA512 33afed4fb4f6d63f1d2b7caedae1ce41e7f6aa4299fb4a7ee2f5e4bc14c97d66f68097171fded6d1f2141dd7127eb408596cce4f5f7287038a14e387ad5ec5e6

diff --git a/sys-cluster/glusterfs/files/glusterfs-3.12.3-libtirpc.patch b/sys-cluster/glusterfs/files/glusterfs-3.12.3-libtirpc.patch
deleted file mode 100644
index fdc1f1f9597..00000000000
--- a/sys-cluster/glusterfs/files/glusterfs-3.12.3-libtirpc.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 6394d8d8e90d5400b49005bf3005523b2e306b2c Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@gentoo.org>
-Date: Mon, 20 Nov 2017 20:44:45 +0000
-Subject: [PATCH] build: Allow libtirpc to be explicitly requested
-
-Some distributions like Gentoo no longer include the RPC stuff in
-their glibc packages.
-
-Signed-off-by: James Le Cuirot <chewi@gentoo.org>
----
- configure.ac | 11 +++++++++++
- 1 file changed, 11 insertions(+)
-
-diff --git a/configure.ac b/configure.ac
-index ce689225c..90d2f98c8 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -291,6 +291,10 @@ else
-         CFLAGS="${CFLAGS} -g -rdynamic"
- fi
- 
-+AC_ARG_WITH([libtirpc],
-+        AS_HELP_STRING([--with-libtirpc], [Use libtirpc as RPC implementation (instead of sunrpc)]),
-+        [], [with_libtirpc=no])
-+
- AC_ARG_ENABLE([privport_tracking],
-               AC_HELP_STRING([--disable-privport_tracking],
-                              [Disable internal tracking of privileged ports.]))
-@@ -1050,6 +1054,13 @@ AC_SUBST(GF_DISTRIBUTION)
- GF_HOST_OS=""
- GF_LDFLAGS="-rdynamic"
- 
-+if test "x$with_libtirpc" = "xyes" ; then
-+    PKG_CHECK_MODULES([TIRPC], [libtirpc],
-+       [GF_CFLAGS="$GF_CFLAGS $TIRPC_CFLAGS"; GF_LDFLAGS="$GF_LDFLAGS $TIRPC_LIBS";],
-+       [AC_MSG_ERROR([libtirpc requested but library not found])]
-+    )
-+fi
-+
- dnl check for gcc -Werror=format-security
- saved_CFLAGS=$CFLAGS
- CFLAGS="-Wformat -Werror=format-security"
--- 
-2.15.0
-

diff --git a/sys-cluster/glusterfs/glusterfs-3.12.3.ebuild b/sys-cluster/glusterfs/glusterfs-3.12.3.ebuild
deleted file mode 100644
index 04036b762ed..00000000000
--- a/sys-cluster/glusterfs/glusterfs-3.12.3.ebuild
+++ /dev/null
@@ -1,218 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit autotools elisp-common python-single-r1 systemd user versionator
-
-DESCRIPTION="GlusterFS is a powerful network/cluster filesystem"
-HOMEPAGE="https://www.gluster.org/"
-SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(get_version_component_range '1-2')/${PV}/${P}.tar.gz"
-
-LICENSE="|| ( GPL-2 LGPL-3+ )"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86"
-IUSE="bd-xlator crypt-xlator debug emacs +fuse +georeplication glupy infiniband +libtirpc qemu-block rsyslog static-libs +syslog systemtap test +tiering vim-syntax +xml"
-
-REQUIRED_USE="georeplication? ( ${PYTHON_REQUIRED_USE} )
-	glupy? ( ${PYTHON_REQUIRED_USE} )"
-
-# the tests must be run as root
-RESTRICT="test"
-
-# sys-apps/util-linux is required for libuuid
-RDEPEND="bd-xlator? ( sys-fs/lvm2 )
-	!elibc_glibc? ( sys-libs/argp-standalone )
-	emacs? ( virtual/emacs )
-	fuse? ( >=sys-fs/fuse-2.7.0:0 )
-	georeplication? ( ${PYTHON_DEPS} )
-	infiniband? ( sys-fabric/libibverbs:* sys-fabric/librdmacm:* )
-	libtirpc? ( net-libs/libtirpc:= )
-	!libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) )
-	qemu-block? ( dev-libs/glib:2 )
-	systemtap? ( dev-util/systemtap )
-	tiering? ( dev-db/sqlite:3 )
-	xml? ( dev-libs/libxml2 )
-	sys-libs/readline:=
-	dev-libs/libaio
-	dev-libs/openssl:=[-bindist]
-	dev-libs/userspace-rcu:=
-	net-libs/rpcsvc-proto
-	sys-apps/util-linux"
-DEPEND="${RDEPEND}
-	virtual/acl
-	virtual/pkgconfig
-	sys-devel/bison
-	sys-devel/flex
-	test? ( >=dev-util/cmocka-1.0.1
-		app-benchmarks/dbench
-		dev-vcs/git
-		net-fs/nfs-utils
-		virtual/perl-Test-Harness
-		dev-libs/yajl
-		sys-fs/xfsprogs
-		sys-apps/attr )"
-
-SITEFILE="50${PN}-mode-gentoo.el"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-3.12.2-poisoned-sysmacros.patch"
-	"${FILESDIR}/${PN}-3.12.2-silent_rules.patch"
-	"${FILESDIR}/${PN}-3.12.3-libtirpc.patch"
-)
-
-DOCS=( AUTHORS ChangeLog NEWS README.md THANKS )
-
-# Maintainer notes:
-# * The build system will always configure & build argp-standalone but it'll never use it
-#   if the argp.h header is found in the system. Which should be the case with
-#   glibc or if argp-standalone is installed.
-
-pkg_setup() {
-	python_setup "python2*"
-	python-single-r1_pkg_setup
-
-	# Needed for statedumps
-	# https://github.com/gluster/glusterfs/commit/0e50c4b3ea734456c14e2d7a578463999bd332c3
-	enewgroup gluster
-	enewuser gluster -1 -1 "${EPREFIX}"/var/run/gluster gluster
-}
-
-src_prepare() {
-	default
-
-	# build rpc-transport and xlators only once as shared libs
-	find rpc/rpc-transport xlators -name Makefile.am |
-		xargs sed -i 's|.*$(top_srcdir).*\.sym|\0 -shared|' || die
-
-	# fix execution permissions
-	chmod +x libglusterfs/src/gen-defaults.py || die
-
-	eautoreconf
-}
-
-src_configure() {
-	econf \
-		--disable-dependency-tracking \
-		--disable-silent-rules \
-		--disable-fusermount \
-		$(use_enable debug) \
-		$(use_enable bd-xlator) \
-		$(use_enable crypt-xlator) \
-		$(use_enable fuse fuse-client) \
-		$(use_enable georeplication) \
-		$(use_enable glupy) \
-		$(use_enable infiniband ibverbs) \
-		$(use_enable qemu-block) \
-		$(use_enable static-libs static) \
-		$(use_enable syslog) \
-		$(use_enable systemtap) \
-		$(use_enable test cmocka) \
-		$(use_enable tiering) \
-		$(use_enable xml xml-output) \
-		$(use_with libtirpc) \
-		--with-tmpfilesdir="${EPREFIX}"/etc/tmpfiles.d \
-		--docdir="${EPREFIX}"/usr/share/doc/${PF} \
-		--localstatedir="${EPREFIX}"/var
-}
-
-src_compile() {
-	default
-	use emacs && elisp-compile extras/glusterfs-mode.el
-}
-
-src_install() {
-	default
-
-	rm \
-		"${ED}"/etc/glusterfs/glusterfs-{georep-,}logrotate \
-		"${ED}"/etc/glusterfs/gluster-rsyslog-*.conf \
-		"${ED}"/usr/share/doc/${PF}/glusterfs{-mode.el,.vim} || die "removing false files failed"
-
-	insinto /etc/logrotate.d
-	newins "${FILESDIR}"/glusterfs.logrotate glusterfs
-
-	if use rsyslog ; then
-		insinto /etc/rsyslog.d
-		newins extras/gluster-rsyslog-7.2.conf 60-gluster.conf
-	fi
-
-	if use emacs ; then
-		elisp-install ${PN} extras/glusterfs-mode.el*
-		elisp-site-file-install "${FILESDIR}/${SITEFILE}"
-	fi
-
-	if use vim-syntax ; then
-		insinto /usr/share/vim/vimfiles/ftdetect; doins "${FILESDIR}"/${PN}.vim
-		insinto /usr/share/vim/vimfiles/syntax; doins extras/${PN}.vim
-	fi
-
-	# insert some other tools which might be useful
-	insinto /usr/share/glusterfs/scripts
-	doins \
-		extras/backend-{cleanup,xattr-sanitize}.sh \
-		extras/clear_xattrs.sh \
-		extras/migrate-unify-to-distribute.sh
-
-	# correct permissions on installed scripts
-	# fperms 0755 /usr/share/glusterfs/scripts/*.sh
-	chmod 0755 "${ED}"/usr/share/glusterfs/scripts/*.sh || die
-
-	if use georeplication ; then
-		# move the gsync-sync-gfid tool to a binary path
-		# and set a symlink to be compliant with all other distros
-		mv "${ED}"/usr/{share/glusterfs/scripts/gsync-sync-gfid,libexec/glusterfs/} || die
-		dosym ../../../libexec/glusterfs/gsync-sync-gfid /usr/share/glusterfs/scripts/gsync-sync-gfid
-	fi
-
-	newinitd "${FILESDIR}/${PN}-r1.initd" glusterfsd
-	newinitd "${FILESDIR}/glusterd-r3.initd" glusterd
-	newconfd "${FILESDIR}/${PN}.confd" glusterfsd
-
-	keepdir /var/log/${PN}
-	keepdir /var/lib/glusterd
-
-	# QA
-	rm -r "${ED}/var/run/" || die
-	if ! use static-libs; then
-		find "${D}" -type f -name '*.la' -delete || die
-	fi
-
-	# fix all shebang for python2 #560750
-	python_fix_shebang "${ED}"
-}
-
-src_test() {
-	./run-tests.sh || die
-}
-
-pkg_postinst() {
-	elog "Starting with ${PN}-3.1.0, you can use the glusterd daemon to configure your"
-	elog "volumes dynamically. To do so, simply use the gluster CLI after running:"
-	elog "  /etc/init.d/glusterd start"
-	echo
-	elog "For static configurations, the glusterfsd startup script can be multiplexed."
-	elog "The default startup script uses /etc/conf.d/glusterfsd to configure the"
-	elog "separate service.  To create additional instances of the glusterfsd service"
-	elog "simply create a symlink to the glusterfsd startup script."
-	echo
-	elog "Example:"
-	elog "    # ln -s glusterfsd /etc/init.d/glusterfsd2"
-	elog "    # ${EDITOR} /etc/glusterfs/glusterfsd2.vol"
-	elog "You can now treat glusterfsd2 like any other service"
-	echo
-	ewarn "You need to use a ntp client to keep the clocks synchronized across all"
-	ewarn "of your servers. Setup a NTP synchronizing service before attempting to"
-	ewarn "run GlusterFS."
-	echo
-	elog "If you are upgrading from a previous version of ${PN}, please read:"
-	elog "  http://docs.gluster.org/en/latest/Upgrade-Guide/upgrade_to_$(get_version_component_range '1-2')/"
-
-	use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-cluster/glusterfs/files/, sys-cluster/glusterfs/
@ 2020-01-19  9:47 Alexys Jacob
  0 siblings, 0 replies; 7+ messages in thread
From: Alexys Jacob @ 2020-01-19  9:47 UTC (permalink / raw
  To: gentoo-commits

commit:     d1dc56b8af7550ce3d2b4ceb1419cf9ab7d9276f
Author:     Tomáš Mózes <hydrapolic <AT> gmail <DOT> com>
AuthorDate: Sat Jan 18 05:32:11 2020 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Sun Jan 19 09:44:34 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1dc56b8

sys-cluster/glusterfs: bump to 6.7, drop old

Closes: https://bugs.gentoo.org/705396
Signed-off-by: Tomáš Mózes <hydrapolic <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/14373
Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>

 sys-cluster/glusterfs/Manifest                     |   2 +-
 .../files/glusterfs-6.7-fix-rebalance-crash.patch  | 185 +++++++++++++++++++++
 .../{glusterfs-6.1.ebuild => glusterfs-6.7.ebuild} |   5 +-
 3 files changed, 190 insertions(+), 2 deletions(-)

diff --git a/sys-cluster/glusterfs/Manifest b/sys-cluster/glusterfs/Manifest
index 7467705eeaf..3e30ba37cb9 100644
--- a/sys-cluster/glusterfs/Manifest
+++ b/sys-cluster/glusterfs/Manifest
@@ -1,3 +1,3 @@
 DIST glusterfs-4.1.8.tar.gz 7835272 BLAKE2B 2546b9c0fe38989df71b8f72b193ce42c499621dcaaa4c5e3deeacfba68179f2280fc699cebeb87486171442152fa8b56b42a0d17465b739769eb227c82307d7 SHA512 950cd2fd774e3eb00f1ec06d54566736b6fbe8d1aed54477a19d9b2727eff8a70ef7ac32815cc7e01d45b5d357fc01af786e16c451f6ad314d472e61ba04ce85
-DIST glusterfs-6.1.tar.gz 7510074 BLAKE2B 8002597f8f695d11578be250cafb3f32358ac29d873b27f87bb26edd38b64d896050322d9591b156793fe6ee7af111904961d5a3e7a933f7c5176cf0c6793305 SHA512 53f4195ecb565a8dcc0d66e74d07dd7334e3c8b1cc1671517612be32a00e9e9bbfb5e983955c4f116b25f7df990bcd1c05bbd3d0b740e9f8c76a16b9b16bec00
 DIST glusterfs-6.5.tar.gz 7536238 BLAKE2B 35c58da9e8564bda1f34b095f14316148cae2b5ff1820d22ae945a06d34ac57aea968e5914af3f5831250fd591a103fe4022e160bb96d491a7c915b5b68c54e7 SHA512 b7356de07e8126aea80b0489b9ac39ce0d10ea324fe38d05ff5740765e886f80fc7e6bdda9d4db1371d7b955b055cb76ea29e918e759a575db331a6436bad90f
+DIST glusterfs-6.7.tar.gz 7565257 BLAKE2B bb38383cad0cbf890b89dd75f7b260d21b381aed6da0bf7cf7b3335941d8e195fe5ff60a1c882df941daeb8ad627fddd1a44223c62d71e2388fd85a7ea46a386 SHA512 64d576c91e5accdb3547dc7216d854e96512c9035ddb87dc4018930f2b0a008ad929cd80ae89a340fca7a8d36e2106a30797d7b08768477b1415db95123e07d4

diff --git a/sys-cluster/glusterfs/files/glusterfs-6.7-fix-rebalance-crash.patch b/sys-cluster/glusterfs/files/glusterfs-6.7-fix-rebalance-crash.patch
new file mode 100644
index 00000000000..e5a31623a32
--- /dev/null
+++ b/sys-cluster/glusterfs/files/glusterfs-6.7-fix-rebalance-crash.patch
@@ -0,0 +1,185 @@
+From ff1eae7f882b8f12380e0c35a9a73b672583cd4c Mon Sep 17 00:00:00 2001
+From: N Balachandran <nbalacha@redhat.com>
+Date: Tue, 01 Oct 2019 17:37:15 +0530
+Subject: [PATCH] cluster/dht: Correct fd processing loop
+
+The fd processing loops in the
+dht_migration_complete_check_task and the
+dht_rebalance_inprogress_task functions were unsafe
+and could cause an open to be sent on an already freed
+fd. This has been fixed.
+
+> Change-Id: I0a3c7d2fba314089e03dfd704f9dceb134749540
+> Fixes: bz#1757399
+> Signed-off-by: N Balachandran <nbalacha@redhat.com>
+> (cherry picked from commit 9b15867070b0cc241ab165886292ecffc3bc0aed)
+
+Change-Id: I0a3c7d2fba314089e03dfd704f9dceb134749540
+Fixes: bz#1786983
+Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
+---
+
+diff --git a/xlators/cluster/dht/src/dht-helper.c b/xlators/cluster/dht/src/dht-helper.c
+index acad493..4f7370d 100644
+--- a/xlators/cluster/dht/src/dht-helper.c
++++ b/xlators/cluster/dht/src/dht-helper.c
+@@ -1290,6 +1290,7 @@
+     fd_t *tmp = NULL;
+     uint64_t tmp_miginfo = 0;
+     dht_migrate_info_t *miginfo = NULL;
++    gf_boolean_t skip_open = _gf_false;
+     int open_failed = 0;
+ 
+     this = THIS;
+@@ -1428,24 +1429,34 @@
+      * the loop will cause the destruction of the fd. So we need to
+      * iterate the list safely because iter_fd cannot be trusted.
+      */
+-    list_for_each_entry_safe(iter_fd, tmp, &inode->fd_list, inode_list)
+-    {
+-        if (fd_is_anonymous(iter_fd))
+-            continue;
+-
+-        if (dht_fd_open_on_dst(this, iter_fd, dst_node))
+-            continue;
+-
++    iter_fd = list_entry((&inode->fd_list)->next, typeof(*iter_fd), inode_list);
++    while (&iter_fd->inode_list != (&inode->fd_list)) {
++        if (fd_is_anonymous(iter_fd) ||
++            (dht_fd_open_on_dst(this, iter_fd, dst_node))) {
++            if (!tmp) {
++                iter_fd = list_entry(iter_fd->inode_list.next, typeof(*iter_fd),
++                                     inode_list);
++                continue;
++            }
++            skip_open = _gf_true;
++        }
+         /* We need to release the inode->lock before calling
+          * syncop_open() to avoid possible deadlocks. However this
+          * can cause the iter_fd to be released by other threads.
+          * To avoid this, we take a reference before releasing the
+          * lock.
+          */
+-        __fd_ref(iter_fd);
++        fd_ref(iter_fd);
+ 
+         UNLOCK(&inode->lock);
+ 
++        if (tmp) {
++            fd_unref(tmp);
++            tmp = NULL;
++        }
++        if (skip_open)
++            goto next;
++
+         /* flags for open are stripped down to allow following the
+          * new location of the file, otherwise we can get EEXIST or
+          * truncate the file again as rebalance is moving the data */
+@@ -1467,9 +1478,11 @@
+             dht_fd_ctx_set(this, iter_fd, dst_node);
+         }
+ 
+-        fd_unref(iter_fd);
+-
++    next:
+         LOCK(&inode->lock);
++        skip_open = _gf_false;
++        tmp = iter_fd;
++        iter_fd = list_entry(tmp->inode_list.next, typeof(*tmp), inode_list);
+     }
+ 
+     SYNCTASK_SETID(frame->root->uid, frame->root->gid);
+@@ -1482,6 +1495,10 @@
+ 
+ unlock:
+     UNLOCK(&inode->lock);
++    if (tmp) {
++        fd_unref(tmp);
++        tmp = NULL;
++    }
+ 
+ out:
+     if (dict) {
+@@ -1563,6 +1580,7 @@
+     int open_failed = 0;
+     uint64_t tmp_miginfo = 0;
+     dht_migrate_info_t *miginfo = NULL;
++    gf_boolean_t skip_open = _gf_false;
+ 
+     this = THIS;
+     frame = data;
+@@ -1683,24 +1701,40 @@
+      * the loop will cause the destruction of the fd. So we need to
+      * iterate the list safely because iter_fd cannot be trusted.
+      */
+-    list_for_each_entry_safe(iter_fd, tmp, &inode->fd_list, inode_list)
+-    {
+-        if (fd_is_anonymous(iter_fd))
+-            continue;
+-
+-        if (dht_fd_open_on_dst(this, iter_fd, dst_node))
+-            continue;
+-
++    iter_fd = list_entry((&inode->fd_list)->next, typeof(*iter_fd), inode_list);
++    while (&iter_fd->inode_list != (&inode->fd_list)) {
+         /* We need to release the inode->lock before calling
+          * syncop_open() to avoid possible deadlocks. However this
+          * can cause the iter_fd to be released by other threads.
+          * To avoid this, we take a reference before releasing the
+          * lock.
+          */
+-        __fd_ref(iter_fd);
+ 
++        if (fd_is_anonymous(iter_fd) ||
++            (dht_fd_open_on_dst(this, iter_fd, dst_node))) {
++            if (!tmp) {
++                iter_fd = list_entry(iter_fd->inode_list.next, typeof(*iter_fd),
++                                     inode_list);
++                continue;
++            }
++            skip_open = _gf_true;
++        }
++
++        /* Yes, this is ugly but there isn't a cleaner way to do this
++         * the fd_ref is an atomic increment so not too bad. We want to
++         * reduce the number of inode locks and unlocks.
++         */
++
++        fd_ref(iter_fd);
+         UNLOCK(&inode->lock);
+ 
++        if (tmp) {
++            fd_unref(tmp);
++            tmp = NULL;
++        }
++        if (skip_open)
++            goto next;
++
+         /* flags for open are stripped down to allow following the
+          * new location of the file, otherwise we can get EEXIST or
+          * truncate the file again as rebalance is moving the data */
+@@ -1721,9 +1755,11 @@
+             dht_fd_ctx_set(this, iter_fd, dst_node);
+         }
+ 
+-        fd_unref(iter_fd);
+-
++    next:
+         LOCK(&inode->lock);
++        skip_open = _gf_false;
++        tmp = iter_fd;
++        iter_fd = list_entry(tmp->inode_list.next, typeof(*tmp), inode_list);
+     }
+ 
+     SYNCTASK_SETID(frame->root->uid, frame->root->gid);
+@@ -1731,6 +1767,10 @@
+ unlock:
+     UNLOCK(&inode->lock);
+ 
++    if (tmp) {
++        fd_unref(tmp);
++        tmp = NULL;
++    }
+     if (open_failed) {
+         ret = -1;
+         goto out;

diff --git a/sys-cluster/glusterfs/glusterfs-6.1.ebuild b/sys-cluster/glusterfs/glusterfs-6.7.ebuild
similarity index 97%
rename from sys-cluster/glusterfs/glusterfs-6.1.ebuild
rename to sys-cluster/glusterfs/glusterfs-6.7.ebuild
index 87b3e519ab2..9bb5a61620b 100644
--- a/sys-cluster/glusterfs/glusterfs-6.1.ebuild
+++ b/sys-cluster/glusterfs/glusterfs-6.7.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=7
 
-PYTHON_COMPAT=( python3_{6,7} )
+PYTHON_COMPAT=( python3_{6,7,8} )
 
 inherit autotools elisp-common python-single-r1 systemd user
 
@@ -80,6 +80,9 @@ pkg_setup() {
 src_prepare() {
 	default
 
+	# https://bugzilla.redhat.com/show_bug.cgi?id=1786983
+	eapply "${FILESDIR}/glusterfs-6.7-fix-rebalance-crash.patch"
+
 	# build rpc-transport and xlators only once as shared libs
 	find rpc/rpc-transport xlators -name Makefile.am |
 		xargs sed -i 's|.*$(top_srcdir).*\.sym|\0 -shared|' || die


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-cluster/glusterfs/files/, sys-cluster/glusterfs/
@ 2020-02-09 16:32 Alexys Jacob
  0 siblings, 0 replies; 7+ messages in thread
From: Alexys Jacob @ 2020-02-09 16:32 UTC (permalink / raw
  To: gentoo-commits

commit:     2a677e4cdb886a25f62f26059c4247b96c7545a4
Author:     Tomáš Mózes <hydrapolic <AT> gmail <DOT> com>
AuthorDate: Mon Jan 27 06:54:03 2020 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Sun Feb  9 16:31:54 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2a677e4c

sys-cluster/glusterfs: fix seek

Bug: https://bugs.gentoo.org/705536
Package-Manager: Portage-2.3.85, Repoman-2.3.20
Signed-off-by: Tomáš Mózes <hydrapolic <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/14468
Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>

 .../glusterfs/files/glusterfs-6.7-fix-seek.patch   | 45 ++++++++++++++++++++++
 ...lusterfs-6.7.ebuild => glusterfs-6.7-r1.ebuild} |  4 ++
 ...lusterfs-7.2.ebuild => glusterfs-7.2-r1.ebuild} |  4 ++
 3 files changed, 53 insertions(+)

diff --git a/sys-cluster/glusterfs/files/glusterfs-6.7-fix-seek.patch b/sys-cluster/glusterfs/files/glusterfs-6.7-fix-seek.patch
new file mode 100644
index 00000000000..07d1ecef037
--- /dev/null
+++ b/sys-cluster/glusterfs/files/glusterfs-6.7-fix-seek.patch
@@ -0,0 +1,45 @@
+diff --git a/xlators/performance/open-behind/src/open-behind.c b/xlators/performance/open-behind/src/open-behind.c
+index 70a144abb5..95e00dbd79 100644
+--- a/xlators/performance/open-behind/src/open-behind.c
++++ b/xlators/performance/open-behind/src/open-behind.c
+@@ -708,6 +708,32 @@ ob_fstat(call_frame_t *frame, xlator_t *this, fd_t *fd, dict_t *xdata)
+     return 0;
+ }
+ 
++int
++ob_seek(call_frame_t *frame, xlator_t *this, fd_t *fd, off_t offset,
++        gf_seek_what_t what, dict_t *xdata)
++{
++    call_stub_t *stub = NULL;
++    fd_t *wind_fd = NULL;
++
++    wind_fd = ob_get_wind_fd(this, fd, NULL);
++
++    stub = fop_seek_stub(frame, default_seek_resume, wind_fd, offset, what,
++                         xdata);
++
++    fd_unref(wind_fd);
++
++    if (!stub)
++        goto err;
++
++    open_and_resume(this, wind_fd, stub);
++
++    return 0;
++err:
++    STACK_UNWIND_STRICT(fstat, frame, -1, ENOMEM, 0, 0);
++
++    return 0;
++}
++
+ int
+ ob_flush(call_frame_t *frame, xlator_t *this, fd_t *fd, dict_t *xdata)
+ {
+@@ -1256,6 +1282,7 @@ struct xlator_fops fops = {
+     .flush = ob_flush,
+     .fsync = ob_fsync,
+     .fstat = ob_fstat,
++    .seek = ob_seek,
+     .ftruncate = ob_ftruncate,
+     .fsetxattr = ob_fsetxattr,
+     .setxattr = ob_setxattr,

diff --git a/sys-cluster/glusterfs/glusterfs-6.7.ebuild b/sys-cluster/glusterfs/glusterfs-6.7-r1.ebuild
similarity index 97%
rename from sys-cluster/glusterfs/glusterfs-6.7.ebuild
rename to sys-cluster/glusterfs/glusterfs-6.7-r1.ebuild
index 9bb5a61620b..d36a647109c 100644
--- a/sys-cluster/glusterfs/glusterfs-6.7.ebuild
+++ b/sys-cluster/glusterfs/glusterfs-6.7-r1.ebuild
@@ -83,6 +83,10 @@ src_prepare() {
 	# https://bugzilla.redhat.com/show_bug.cgi?id=1786983
 	eapply "${FILESDIR}/glusterfs-6.7-fix-rebalance-crash.patch"
 
+	# https://bugs.gentoo.org/705536
+	# https://bugzilla.redhat.com/show_bug.cgi?id=1793990
+	eapply "${FILESDIR}/glusterfs-6.7-fix-seek.patch"
+
 	# build rpc-transport and xlators only once as shared libs
 	find rpc/rpc-transport xlators -name Makefile.am |
 		xargs sed -i 's|.*$(top_srcdir).*\.sym|\0 -shared|' || die

diff --git a/sys-cluster/glusterfs/glusterfs-7.2.ebuild b/sys-cluster/glusterfs/glusterfs-7.2-r1.ebuild
similarity index 97%
rename from sys-cluster/glusterfs/glusterfs-7.2.ebuild
rename to sys-cluster/glusterfs/glusterfs-7.2-r1.ebuild
index 27be5d5543a..d122e64c226 100644
--- a/sys-cluster/glusterfs/glusterfs-7.2.ebuild
+++ b/sys-cluster/glusterfs/glusterfs-7.2-r1.ebuild
@@ -80,6 +80,10 @@ pkg_setup() {
 src_prepare() {
 	default
 
+	# https://bugs.gentoo.org/705536
+	# https://bugzilla.redhat.com/show_bug.cgi?id=1793990
+	eapply "${FILESDIR}/glusterfs-6.7-fix-seek.patch"
+
 	# build rpc-transport and xlators only once as shared libs
 	find rpc/rpc-transport xlators -name Makefile.am |
 		xargs sed -i 's|.*$(top_srcdir).*\.sym|\0 -shared|' || die


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-cluster/glusterfs/files/, sys-cluster/glusterfs/
@ 2022-07-23 12:50 Joonas Niilola
  0 siblings, 0 replies; 7+ messages in thread
From: Joonas Niilola @ 2022-07-23 12:50 UTC (permalink / raw
  To: gentoo-commits

commit:     4be63a6fbf68a239d28e28bddce2f81b57d470c1
Author:     Jaco Kroon <jaco <AT> uls <DOT> co <DOT> za>
AuthorDate: Mon Jul 11 20:34:58 2022 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Sat Jul 23 12:50:17 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4be63a6f

sys-cluster/glusterfs: revbump to fix init.d file

Fix initd $(( ... )) vs (( ... )).  The former returns the result, then
attempts to execute it, the latter merely executes the math.

Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Jaco Kroon <jaco <AT> uls.co.za>
Closes: https://github.com/gentoo/gentoo/pull/26354
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 .../glusterfs/files/{glusterd-10.2.initd => glusterd-10.2-r1.initd}     | 2 +-
 .../glusterfs/{glusterfs-10.2.ebuild => glusterfs-10.2-r1.ebuild}       | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/sys-cluster/glusterfs/files/glusterd-10.2.initd b/sys-cluster/glusterfs/files/glusterd-10.2-r1.initd
similarity index 98%
rename from sys-cluster/glusterfs/files/glusterd-10.2.initd
rename to sys-cluster/glusterfs/files/glusterd-10.2-r1.initd
index af8f941d87d7..f5210ef7cd1c 100644
--- a/sys-cluster/glusterfs/files/glusterd-10.2.initd
+++ b/sys-cluster/glusterfs/files/glusterd-10.2-r1.initd
@@ -23,7 +23,7 @@ start_post() {
 	local c=0
 	ebegin "Waiting for glusterd to start up"
 	while ! /usr/sbin/gluster volume list >/dev/null 2>&1 && [ "${c}" -lt "${glusterd_max_wait_start-60}" ]; do
-		$(( c=c+1 ))
+		(( c=c+1 ))
 	done
 	[ "${c}" -lt "${glusterd_max_wait_start-60}" ]
 	eend $?

diff --git a/sys-cluster/glusterfs/glusterfs-10.2.ebuild b/sys-cluster/glusterfs/glusterfs-10.2-r1.ebuild
similarity index 99%
rename from sys-cluster/glusterfs/glusterfs-10.2.ebuild
rename to sys-cluster/glusterfs/glusterfs-10.2-r1.ebuild
index 2551faf99a31..9f76a974689c 100644
--- a/sys-cluster/glusterfs/glusterfs-10.2.ebuild
+++ b/sys-cluster/glusterfs/glusterfs-10.2-r1.ebuild
@@ -150,7 +150,7 @@ src_install() {
 	chmod 0755 "${ED}"/usr/share/glusterfs/scripts/*.sh || die
 
 	newinitd "${FILESDIR}/glusterfsd-10.2.initd" glusterfsd
-	newinitd "${FILESDIR}/glusterd-10.2.initd" glusterd
+	newinitd "${FILESDIR}/glusterd-10.2-r1.initd" glusterd
 	newconfd "${FILESDIR}/${PN}.confd" glusterfsd
 
 	keepdir /var/log/${PN}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-cluster/glusterfs/files/, sys-cluster/glusterfs/
@ 2022-08-18 18:43 Sam James
  0 siblings, 0 replies; 7+ messages in thread
From: Sam James @ 2022-08-18 18:43 UTC (permalink / raw
  To: gentoo-commits

commit:     f8bf4ec3380d4dabc612b93f6a0e257c812cadf0
Author:     Jaco Kroon <jaco <AT> uls <DOT> co <DOT> za>
AuthorDate: Thu Aug 18 16:47:19 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 18 18:42:25 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f8bf4ec3

sys-cluster/glusterfs: 10.2-r2 bump to enable USE=uring.

Other minor fixes:

Closes: https://bugs.gentoo.org/860312
Closes: https://bugs.gentoo.org/860309
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Jaco Kroon <jaco <AT> uls.co.za>
Closes: https://github.com/gentoo/gentoo/pull/26912
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-cluster/glusterfs/files/glusterd-10.2-r2.initd |  32 ++++
 sys-cluster/glusterfs/glusterfs-10.2-r2.ebuild     | 203 +++++++++++++++++++++
 sys-cluster/glusterfs/metadata.xml                 |   1 +
 3 files changed, 236 insertions(+)

diff --git a/sys-cluster/glusterfs/files/glusterd-10.2-r2.initd b/sys-cluster/glusterfs/files/glusterd-10.2-r2.initd
new file mode 100644
index 000000000000..e7e53f3ed9c4
--- /dev/null
+++ b/sys-cluster/glusterfs/files/glusterd-10.2-r2.initd
@@ -0,0 +1,32 @@
+#!/sbin/openrc-run
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Gluster elastic volume management daemon"
+command="/usr/sbin/glusterd"
+pidfile="/run/${SVCNAME}.pid"
+command_args="-N"
+
+command_background="yes"
+
+depend() {
+	need net
+	before netmount
+}
+
+start_pre() {
+	# Ensure that the GlusterFS auxiliary mount parent directory exists
+	checkpath --directory --owner gluster:gluster --mode 0775 /run/gluster
+}
+
+start_post() {
+	local c=0
+	ebegin "Waiting for glusterd to start up"
+	while ! /usr/sbin/gluster volume list >/dev/null 2>&1 && [ "${c}" -lt "${glusterd_max_wait_start-60}" ]; do
+		c=$(( c+1 ))
+	done
+	[ "${c}" -lt "${glusterd_max_wait_start-60}" ]
+	eend $?
+
+	return 0
+}

diff --git a/sys-cluster/glusterfs/glusterfs-10.2-r2.ebuild b/sys-cluster/glusterfs/glusterfs-10.2-r2.ebuild
new file mode 100644
index 000000000000..ef78462da8cb
--- /dev/null
+++ b/sys-cluster/glusterfs/glusterfs-10.2-r2.ebuild
@@ -0,0 +1,203 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..11} )
+
+inherit autotools elisp-common python-single-r1 tmpfiles systemd
+
+DESCRIPTION="GlusterFS is a powerful network/cluster filesystem"
+HOMEPAGE="https://www.gluster.org/ https://github.com/gluster/glusterfs/"
+SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 LGPL-3+ )"
+SLOT="0/${PV%%.*}"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+
+IUSE="debug emacs +fuse georeplication ipv6 +libtirpc rsyslog static-libs tcmalloc test +uring xml"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	georeplication? ( xml )
+	ipv6? ( libtirpc )"
+
+# the tests must be run as root
+RESTRICT="test"
+
+# sys-apps/util-linux is required for libuuid
+RDEPEND="
+	acct-group/gluster
+	acct-user/gluster
+	dev-libs/libaio
+	dev-libs/openssl:=[-bindist(-)]
+	net-libs/rpcsvc-proto
+	dev-libs/userspace-rcu:=
+	sys-apps/util-linux
+	sys-libs/readline:=
+	!elibc_glibc? ( sys-libs/argp-standalone )
+	emacs? ( >=app-editors/emacs-23.1:* )
+	fuse? ( >=sys-fs/fuse-2.7.0:0 )
+	georeplication? ( ${PYTHON_DEPS} )
+	libtirpc? ( net-libs/libtirpc:= )
+	!libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) )
+	tcmalloc? ( dev-util/google-perftools )
+	uring? ( sys-libs/liburing:= )
+	xml? ( dev-libs/libxml2 )
+"
+DEPEND="
+	${RDEPEND}
+	sys-devel/bison
+	sys-devel/flex
+	virtual/acl
+	test? ( >=dev-util/cmocka-1.0.1
+		app-benchmarks/dbench
+		dev-vcs/git
+		net-fs/nfs-utils
+		virtual/perl-Test-Harness
+		dev-libs/yajl
+		sys-fs/xfsprogs
+		sys-apps/attr )
+"
+BDEPEND="
+	virtual/pkgconfig
+"
+
+SITEFILE="50${PN}-mode-gentoo.el"
+
+DOCS=( AUTHORS ChangeLog NEWS README.md THANKS )
+
+QA_PKGCONFIG_VERSION=7.10.2
+
+# Maintainer notes:
+# * The build system will always configure & build argp-standalone but it'll never use it
+#   if the argp.h header is found in the system. Which should be the case with
+#   glibc or if argp-standalone is installed.
+
+pkg_setup() {
+	python_setup "python3*"
+	python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	default
+
+	# build rpc-transport and xlators only once as shared libs
+	find rpc/rpc-transport xlators -name Makefile.am -exec \
+		sed -i 's|.*$(top_srcdir).*\.sym|\0 -shared|' {} + || die
+
+	# fix execution permissions
+	chmod +x libglusterfs/src/gen-defaults.py || die
+
+	eautoreconf
+}
+
+src_configure() {
+	econf \
+		--disable-fusermount \
+		--disable-lto \
+		$(use_enable debug) \
+		$(use_enable fuse fuse-client) \
+		$(use_enable georeplication) \
+		$(use_enable static-libs static) \
+		$(use_enable test cmocka) \
+		$(use_enable uring linux-io-uring) \
+		$(use_enable xml xml-output) \
+		$(usex ipv6 --with-ipv6-default "") \
+		$(usex libtirpc "" --without-libtirpc) \
+		$(usex tcmalloc "" --without-tcmalloc) \
+		--with-tmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d \
+		--localstatedir="${EPREFIX}"/var
+}
+
+src_compile() {
+	default
+	use emacs && elisp-compile extras/glusterfs-mode.el
+}
+
+src_test() {
+	./run-tests.sh || die
+}
+
+src_install() {
+	default
+
+	rm \
+		"${ED}"/etc/glusterfs/glusterfs-{georep-,}logrotate \
+		"${ED}"/etc/glusterfs/gluster-rsyslog-*.conf \
+		"${ED}"/usr/share/doc/${PF}/glusterfs{-mode.el,.vim} || die "removing false files failed"
+
+	insinto /etc/logrotate.d
+	newins "${FILESDIR}"/glusterfs.logrotate glusterfs
+
+	if use rsyslog ; then
+		insinto /etc/rsyslog.d
+		newins extras/gluster-rsyslog-7.2.conf 60-gluster.conf
+	fi
+
+	if use emacs ; then
+		elisp-install ${PN} extras/glusterfs-mode.el*
+		elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+	fi
+
+	insinto /usr/share/vim/vimfiles/ftdetect; doins "${FILESDIR}"/${PN}.vim
+	insinto /usr/share/vim/vimfiles/syntax; doins extras/${PN}.vim
+
+	# insert some other tools which might be useful
+	insinto /usr/share/glusterfs/scripts
+	doins \
+		extras/backend-{cleanup,xattr-sanitize}.sh \
+		extras/clear_xattrs.sh \
+		extras/migrate-unify-to-distribute.sh
+
+	# correct permissions on installed scripts
+	# fperms 0755 /usr/share/glusterfs/scripts/*.sh
+	chmod 0755 "${ED}"/usr/share/glusterfs/scripts/*.sh || die
+
+	newinitd "${FILESDIR}/glusterfsd-10.2.initd" glusterfsd
+	newinitd "${FILESDIR}/glusterd-10.2-r2.initd" glusterd
+	newconfd "${FILESDIR}/${PN}.confd" glusterfsd
+
+	keepdir /var/log/${PN}
+	keepdir /var/lib/glusterd/{events,glusterfind/.keys}
+
+	systemd_dounit extras/systemd/{glusterd,glustereventsd,glusterfssharedstorage,gluster-ta-volume}.service
+
+	# QA
+	rm -r "${ED}/var/run/" || die
+	if ! use static-libs; then
+		find "${D}" -type f -name '*.la' -delete || die
+	fi
+
+	python_optimize "${ED}"
+}
+
+pkg_postinst() {
+	tmpfiles_process gluster.conf
+
+	elog "Starting with ${PN}-3.1.0, you can use the glusterd daemon to configure your"
+	elog "volumes dynamically. To do so, simply use the gluster CLI after running:"
+	elog "  /etc/init.d/glusterd start"
+	echo
+	elog "For static configurations, the glusterfsd startup script can be multiplexed."
+	elog "The default startup script uses /etc/conf.d/glusterfsd to configure the"
+	elog "separate service.  To create additional instances of the glusterfsd service"
+	elog "simply create a symlink to the glusterfsd startup script."
+	echo
+	elog "Example:"
+	elog "    # ln -s glusterfsd /etc/init.d/glusterfsd2"
+	elog "    # ${EDITOR} /etc/glusterfs/glusterfsd2.vol"
+	elog "You can now treat glusterfsd2 like any other service"
+	echo
+	ewarn "You need to use a ntp client to keep the clocks synchronized across all"
+	ewarn "of your servers. Setup a NTP synchronizing service before attempting to"
+	ewarn "run GlusterFS."
+	echo
+	elog "If you are upgrading from a previous version of ${PN}, please read:"
+	elog "  http://docs.gluster.org/en/latest/Upgrade-Guide/upgrade_to_$(ver_cut '1-2')/"
+
+	use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}

diff --git a/sys-cluster/glusterfs/metadata.xml b/sys-cluster/glusterfs/metadata.xml
index 73cd1d833a48..ec48e5f0ac96 100644
--- a/sys-cluster/glusterfs/metadata.xml
+++ b/sys-cluster/glusterfs/metadata.xml
@@ -26,5 +26,6 @@
 		<flag name="ipv6">Use IPv6 by default, requires libtirpc</flag>
 		<flag name="libtirpc">Build against <pkg>net-libs/libtirpc</pkg> for RPC support</flag>
 		<flag name="rsyslog">Install configuration snippet for <pkg>app-admin/rsyslog</pkg></flag>
+		<flag name="uring">Control whether or not glusterfs is compiled with uring support or not.</flag>
 	</use>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-cluster/glusterfs/files/, sys-cluster/glusterfs/
@ 2024-04-15 12:55 Michał Górny
  0 siblings, 0 replies; 7+ messages in thread
From: Michał Górny @ 2024-04-15 12:55 UTC (permalink / raw
  To: gentoo-commits

commit:     54f9f4e0810c8984f625eb20450856afe1533947
Author:     Jaco Kroon <jaco <AT> uls <DOT> co <DOT> za>
AuthorDate: Mon Mar 25 05:07:39 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Apr 15 12:55:27 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=54f9f4e0

sys-cluster/glusterfs: drop 10.4, 11.0-r2

Signed-off-by: Jaco Kroon <jaco <AT> uls.co.za>
Closes: https://github.com/gentoo/gentoo/pull/35905
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 sys-cluster/glusterfs/Manifest                     |   2 -
 .../glusterfs/files/glusterfs-11.0-fix-crash.patch |  16 --
 sys-cluster/glusterfs/glusterfs-10.4.ebuild        | 206 --------------------
 sys-cluster/glusterfs/glusterfs-11.0-r2.ebuild     | 215 ---------------------
 4 files changed, 439 deletions(-)

diff --git a/sys-cluster/glusterfs/Manifest b/sys-cluster/glusterfs/Manifest
index b963955981e5..c70f65d694f5 100644
--- a/sys-cluster/glusterfs/Manifest
+++ b/sys-cluster/glusterfs/Manifest
@@ -1,4 +1,2 @@
-DIST glusterfs-10.4.tar.gz 8293872 BLAKE2B 01f8764cc71b7bac2ee0419f3f1069ac1c85e26314828b47f348b9bf88ad0b8aa327be16ccfe9cf820aebb7dd9477a7840c721df4435c895be91fed0b1129b7c SHA512 06c563ab77a29145b1fac44f5a56a91539accb69ba736fe6297aa3f38b128e68ba4f7d0b49ac6eb56397a51950fb4de882ff60037e91c61ad13dd89a18139d82
 DIST glusterfs-10.5.tar.gz 8170057 BLAKE2B f614abe8a7333266d75a26fc1756408211b9d83225f4180002d0c04cd9328c75c78644faae0c73140325ac49759a2237855be17469cb544942c5f3de19fdf66a SHA512 393b976308da911562e653e1ed6db2149a7d7390fbd31155bbd4b1bb067c6c155f2c7ca74dc8409474294a8542b6cb4d83cd52f6b68bab6a430a8c080be1be29
-DIST glusterfs-11.0.tar.gz 8355706 BLAKE2B d0ee895b8ce5f506d9bc1f8b962a0f29b0379f086bf18cff0092938b7c2f7025afa2fccf54f58ac751a184a3b0e91a086df2d6496892f204373e070d7576a5d6 SHA512 075f0025a1892ebb28d45d0a4e8971656319582dd7bc2c8b19ea26cd08a789bb54f8bc9752839706cd0ee0ca54be74245230bc453a5d1e9e163af84f08937e69
 DIST glusterfs-11.1.tar.gz 8365581 BLAKE2B 56697bc484be53659f6f277041c6f4fc5f2ef3221709d90dbd621e66138fe2b3be2e31bde4c65d596fed3beacb2ee6a86506e97854cda00066ac804ee57923e9 SHA512 a021a612b01c2c43858b092db926e6d229f0f736c19b8a1015c0d3121fbc7739ab5273384d5e96fde6dbf4eaf620bc32a0530597e80483865d8ca79b820ed3b0

diff --git a/sys-cluster/glusterfs/files/glusterfs-11.0-fix-crash.patch b/sys-cluster/glusterfs/files/glusterfs-11.0-fix-crash.patch
deleted file mode 100644
index 6a4a1ec517ab..000000000000
--- a/sys-cluster/glusterfs/files/glusterfs-11.0-fix-crash.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-# https://bugs.gentoo.org/911588
-# https://github.com/gluster/glusterfs/issues/4192
-# https://github.com/gluster/glusterfs/pull/4196
-diff --git a/libglusterfs/src/glusterfs/mem-pool.h b/libglusterfs/src/glusterfs/mem-pool.h
-index 46f764f56e5..416b7ddf1e3 100644
---- a/libglusterfs/src/glusterfs/mem-pool.h
-+++ b/libglusterfs/src/glusterfs/mem-pool.h
-@@ -297,7 +297,7 @@ typedef struct per_thread_pool_list {
-      * in the implementation code so we just make it a single-element array
-      * here.
-      */
--    per_thread_pool_t pools[];
-+    per_thread_pool_t pools[1];
- } per_thread_pool_list_t;
- 
- /* actual pool structure, shared between different mem_pools */

diff --git a/sys-cluster/glusterfs/glusterfs-10.4.ebuild b/sys-cluster/glusterfs/glusterfs-10.4.ebuild
deleted file mode 100644
index a386a0e05b29..000000000000
--- a/sys-cluster/glusterfs/glusterfs-10.4.ebuild
+++ /dev/null
@@ -1,206 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{10..11} )
-
-inherit autotools elisp-common python-single-r1 tmpfiles systemd
-
-DESCRIPTION="GlusterFS is a powerful network/cluster filesystem"
-HOMEPAGE="https://www.gluster.org/ https://github.com/gluster/glusterfs/"
-SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz"
-
-LICENSE="|| ( GPL-2 LGPL-3+ )"
-SLOT="0/${PV%%.*}"
-KEYWORDS="amd64 ~arm ~arm64 ~loong ~ppc ppc64 ~riscv x86"
-
-IUSE="debug emacs +fuse georeplication ipv6 +libtirpc rsyslog selinux static-libs tcmalloc test +uring xml"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
-	georeplication? ( xml )
-	ipv6? ( libtirpc )"
-
-# the tests must be run as root
-RESTRICT="test"
-
-# sys-apps/util-linux is required for libuuid
-RDEPEND="
-	acct-group/gluster
-	acct-user/gluster
-	dev-libs/libaio
-	dev-libs/openssl:=[-bindist(-)]
-	net-libs/rpcsvc-proto
-	dev-libs/userspace-rcu:=
-	sys-apps/util-linux
-	sys-libs/readline:=
-	${PYTHON_DEPS}
-
-	!elibc_glibc? ( sys-libs/argp-standalone )
-	emacs? ( >=app-editors/emacs-23.1:* )
-	fuse? ( >=sys-fs/fuse-2.7.0:0 )
-	libtirpc? ( net-libs/libtirpc:= )
-	!libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) )
-	selinux? ( sec-policy/selinux-glusterfs )
-	tcmalloc? ( dev-util/google-perftools )
-	uring? ( sys-libs/liburing:= )
-	xml? ( dev-libs/libxml2 )
-"
-DEPEND="
-	${RDEPEND}
-	virtual/acl
-	test? ( >=dev-util/cmocka-1.0.1
-		app-benchmarks/dbench
-		dev-vcs/git
-		virtual/perl-Test-Harness
-		dev-libs/yajl
-		sys-fs/xfsprogs
-		sys-apps/attr )
-"
-BDEPEND="
-	sys-devel/bison
-	sys-devel/flex
-	virtual/pkgconfig
-"
-
-SITEFILE="50${PN}-mode-gentoo.el"
-
-DOCS=( AUTHORS ChangeLog NEWS README.md THANKS )
-
-QA_PKGCONFIG_VERSION=7.10.2
-
-# Maintainer notes:
-# * The build system will always configure & build argp-standalone but it'll never use it
-#   if the argp.h header is found in the system. Which should be the case with
-#   glibc or if argp-standalone is installed.
-
-pkg_setup() {
-	python_setup "python3*"
-	python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	default
-
-	# build rpc-transport and xlators only once as shared libs
-	find rpc/rpc-transport xlators -name Makefile.am -exec \
-		sed -i 's|.*$(top_srcdir).*\.sym|\0 -shared|' {} + || die
-
-	# fix execution permissions
-	chmod +x libglusterfs/src/gen-defaults.py || die
-
-	eautoreconf
-}
-
-src_configure() {
-	econf \
-		YACC=yacc.bison \
-		LEX=flex \
-		--disable-fusermount \
-		--disable-lto \
-		$(use_enable debug) \
-		$(use_enable fuse fuse-client) \
-		$(use_enable georeplication) \
-		$(use_enable static-libs static) \
-		$(use_enable test cmocka) \
-		$(use_enable uring linux-io-uring) \
-		$(use_enable xml xml-output) \
-		$(usex ipv6 --with-ipv6-default "") \
-		$(usex libtirpc "" --without-libtirpc) \
-		$(usex tcmalloc "" --without-tcmalloc) \
-		--with-tmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d \
-		--localstatedir="${EPREFIX}"/var
-}
-
-src_compile() {
-	default
-	use emacs && elisp-compile extras/glusterfs-mode.el
-}
-
-src_test() {
-	./run-tests.sh || die
-}
-
-src_install() {
-	default
-
-	rm \
-		"${ED}"/etc/glusterfs/glusterfs-{georep-,}logrotate \
-		"${ED}"/etc/glusterfs/gluster-rsyslog-*.conf \
-		"${ED}"/usr/share/doc/${PF}/glusterfs{-mode.el,.vim} || die "removing false files failed"
-
-	insinto /etc/logrotate.d
-	newins "${FILESDIR}"/glusterfs.logrotate glusterfs
-
-	if use rsyslog ; then
-		insinto /etc/rsyslog.d
-		newins extras/gluster-rsyslog-7.2.conf 60-gluster.conf
-	fi
-
-	if use emacs ; then
-		elisp-install ${PN} extras/glusterfs-mode.el*
-		elisp-site-file-install "${FILESDIR}/${SITEFILE}"
-	fi
-
-	insinto /usr/share/vim/vimfiles/ftdetect; doins "${FILESDIR}"/${PN}.vim
-	insinto /usr/share/vim/vimfiles/syntax; doins extras/${PN}.vim
-
-	# insert some other tools which might be useful
-	insinto /usr/share/glusterfs/scripts
-	doins \
-		extras/backend-{cleanup,xattr-sanitize}.sh \
-		extras/clear_xattrs.sh \
-		extras/migrate-unify-to-distribute.sh
-
-	# correct permissions on installed scripts
-	# fperms 0755 /usr/share/glusterfs/scripts/*.sh
-	chmod 0755 "${ED}"/usr/share/glusterfs/scripts/*.sh || die
-
-	newinitd "${FILESDIR}/glusterfsd-10.2.initd" glusterfsd
-	newinitd "${FILESDIR}/glusterd-10.2-r2.initd" glusterd
-	newconfd "${FILESDIR}/${PN}.confd" glusterfsd
-
-	keepdir /var/log/${PN}
-	keepdir /var/lib/glusterd/{events,glusterfind/.keys}
-
-	systemd_dounit extras/systemd/{glusterd,glustereventsd,glusterfssharedstorage,gluster-ta-volume}.service
-
-	# QA
-	rm -r "${ED}/var/run/" || die
-	if ! use static-libs; then
-		find "${D}" -type f -name '*.la' -delete || die
-	fi
-
-	python_optimize "${ED}"
-}
-
-pkg_postinst() {
-	tmpfiles_process gluster.conf
-
-	elog "Starting with ${PN}-3.1.0, you can use the glusterd daemon to configure your"
-	elog "volumes dynamically. To do so, simply use the gluster CLI after running:"
-	elog "  /etc/init.d/glusterd start"
-	echo
-	elog "For static configurations, the glusterfsd startup script can be multiplexed."
-	elog "The default startup script uses /etc/conf.d/glusterfsd to configure the"
-	elog "separate service.  To create additional instances of the glusterfsd service"
-	elog "simply create a symlink to the glusterfsd startup script."
-	echo
-	elog "Example:"
-	elog "    # ln -s glusterfsd /etc/init.d/glusterfsd2"
-	elog "    # ${EDITOR} /etc/glusterfs/glusterfsd2.vol"
-	elog "You can now treat glusterfsd2 like any other service"
-	echo
-	ewarn "You need to use a ntp client to keep the clocks synchronized across all"
-	ewarn "of your servers. Setup a NTP synchronizing service before attempting to"
-	ewarn "run GlusterFS."
-	echo
-	elog "If you are upgrading from a previous version of ${PN}, please read:"
-	elog "  http://docs.gluster.org/en/latest/Upgrade-Guide/upgrade_to_$(ver_cut '1-2')/"
-
-	use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}

diff --git a/sys-cluster/glusterfs/glusterfs-11.0-r2.ebuild b/sys-cluster/glusterfs/glusterfs-11.0-r2.ebuild
deleted file mode 100644
index 902ae0e31b69..000000000000
--- a/sys-cluster/glusterfs/glusterfs-11.0-r2.ebuild
+++ /dev/null
@@ -1,215 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-
-inherit autotools elisp-common python-single-r1 tmpfiles systemd bash-completion-r1
-
-DESCRIPTION="GlusterFS is a powerful network/cluster filesystem"
-HOMEPAGE="https://www.gluster.org/ https://github.com/gluster/glusterfs/"
-SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz"
-
-LICENSE="|| ( GPL-2 LGPL-3+ )"
-SLOT="0/${PV%%.*}"
-KEYWORDS="amd64 ~arm ~arm64 ~loong ~ppc ppc64 ~riscv x86"
-
-IUSE="debug emacs +fuse georeplication ipv6 +libtirpc rsyslog selinux static-libs tcmalloc test +uring xml"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
-	georeplication? ( xml )
-	ipv6? ( libtirpc )"
-
-# the tests must be run as root
-RESTRICT="test"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-11.0-fix-crash.patch"
-	"${FILESDIR}/${PN}-11.0-extras-defer-invoking-of-gluster-volume-set-help-as-.patch"
-)
-
-# sys-apps/util-linux is required for libuuid
-RDEPEND="
-	acct-group/gluster
-	acct-user/gluster
-	dev-libs/libaio
-	dev-libs/openssl:=[-bindist(-)]
-	net-libs/rpcsvc-proto
-	dev-libs/userspace-rcu:=
-	sys-apps/util-linux
-	sys-libs/readline:=
-	${PYTHON_DEPS}
-
-	!elibc_glibc? ( sys-libs/argp-standalone )
-	emacs? ( >=app-editors/emacs-23.1:* )
-	fuse? ( >=sys-fs/fuse-2.7.0:0 )
-	libtirpc? ( net-libs/libtirpc:= )
-	!libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) )
-	selinux? ( sec-policy/selinux-glusterfs )
-	tcmalloc? ( dev-util/google-perftools )
-	uring? ( sys-libs/liburing:= )
-	xml? ( dev-libs/libxml2 )
-"
-DEPEND="
-	${RDEPEND}
-	virtual/acl
-	test? (
-		>=dev-util/cmocka-1.0.1
-		app-benchmarks/dbench
-		dev-libs/xxhash
-		dev-vcs/git
-		virtual/perl-Test-Harness
-		dev-libs/yajl
-		sys-fs/xfsprogs
-		sys-apps/attr
-	)
-"
-BDEPEND="
-	sys-devel/bison
-	sys-devel/flex
-	virtual/pkgconfig
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README.md THANKS )
-
-# Maintainer notes:
-# * The build system will always configure & build argp-standalone but it'll never use it
-#   if the argp.h header is found in the system. Which should be the case with
-#   glibc or if argp-standalone is installed.
-
-pkg_setup() {
-	python_setup "python3*"
-	python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	default
-
-	# build rpc-transport and xlators only once as shared libs
-	find rpc/rpc-transport xlators -name Makefile.am -exec \
-		sed -i 's|.*$(top_srcdir).*\.sym|\0 -shared|' {} + || die
-
-	# fix execution permissions
-	chmod +x libglusterfs/src/gen-defaults.py || die
-
-	eautoreconf
-}
-
-src_configure() {
-	econf \
-		YACC=yacc.bison \
-		LEX=flex \
-		--disable-fusermount \
-		--disable-lto \
-		$(use_enable debug) \
-		$(use_enable fuse fuse-client) \
-		$(use_enable georeplication) \
-		$(use_enable static-libs static) \
-		$(use_enable test cmocka) \
-		$(use_enable uring linux-io-uring) \
-		$(use_enable xml xml-output) \
-		$(usex ipv6 --with-ipv6-default "") \
-		$(usex libtirpc "" --without-libtirpc) \
-		$(usex tcmalloc "" --without-tcmalloc) \
-		--with-tmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d \
-		--localstatedir="${EPREFIX}"/var
-}
-
-src_compile() {
-	default
-	use emacs && elisp-compile extras/glusterfs-mode.el
-}
-
-src_test() {
-	./run-tests.sh || die
-}
-
-src_install() {
-	default
-
-	# Path changes based on whether app-shells/bash-completion is installed, bug #911523
-	rm -rf "${ED}"/etc/bash_completion.d "${D}$(get_bashcompdir)" || die
-	newbashcomp extras/command-completion/gluster.bash gluster
-
-	rm \
-		"${ED}"/etc/glusterfs/glusterfs-{georep-,}logrotate \
-		"${ED}"/etc/glusterfs/gluster-rsyslog-*.conf \
-		"${ED}"/usr/share/doc/${PF}/glusterfs{-mode.el,.vim} || die "removing false files failed"
-
-	insinto /etc/logrotate.d
-	newins "${FILESDIR}"/glusterfs.logrotate glusterfs
-
-	if use rsyslog ; then
-		insinto /etc/rsyslog.d
-		newins extras/gluster-rsyslog-7.2.conf 60-gluster.conf
-	fi
-
-	if use emacs ; then
-		elisp-install ${PN} extras/glusterfs-mode.el*
-		elisp-site-file-install "${FILESDIR}/50glusterfs-mode-gentoo.el"
-	fi
-
-	insinto /usr/share/vim/vimfiles/ftdetect; doins "${FILESDIR}"/${PN}.vim
-	insinto /usr/share/vim/vimfiles/syntax; doins extras/${PN}.vim
-
-	# insert some other tools which might be useful
-	insinto /usr/share/glusterfs/scripts
-	doins \
-		extras/backend-{cleanup,xattr-sanitize}.sh \
-		extras/clear_xattrs.sh \
-		extras/migrate-unify-to-distribute.sh
-
-	# correct permissions on installed scripts
-	# fperms 0755 /usr/share/glusterfs/scripts/*.sh
-	chmod 0755 "${ED}"/usr/share/glusterfs/scripts/*.sh || die
-
-	newinitd "${FILESDIR}/glusterfsd-10.2.initd" glusterfsd
-	newinitd "${FILESDIR}/glusterd-10.2-r2.initd" glusterd
-	newconfd "${FILESDIR}/${PN}.confd" glusterfsd
-
-	keepdir /var/log/${PN}
-	keepdir /var/lib/glusterd/{events,glusterfind/.keys}
-
-	systemd_dounit extras/systemd/{glusterd,glustereventsd,glusterfssharedstorage,gluster-ta-volume}.service
-
-	# QA
-	rm -r "${ED}/var/run/" || die
-	if ! use static-libs; then
-		find "${D}" -type f -name '*.la' -delete || die
-	fi
-
-	python_fix_shebang "${ED}"
-	python_optimize
-}
-
-pkg_postinst() {
-	tmpfiles_process gluster.conf
-
-	elog "Starting with ${PN}-3.1.0, you can use the glusterd daemon to configure your"
-	elog "volumes dynamically. To do so, simply use the gluster CLI after running:"
-	elog "  /etc/init.d/glusterd start"
-	echo
-	elog "For static configurations, the glusterfsd startup script can be multiplexed."
-	elog "The default startup script uses /etc/conf.d/glusterfsd to configure the"
-	elog "separate service.  To create additional instances of the glusterfsd service"
-	elog "simply create a symlink to the glusterfsd startup script."
-	echo
-	elog "Example:"
-	elog "    # ln -s glusterfsd /etc/init.d/glusterfsd2"
-	elog "    # ${EDITOR} /etc/glusterfs/glusterfsd2.vol"
-	elog "You can now treat glusterfsd2 like any other service"
-	echo
-	ewarn "You need to use a ntp client to keep the clocks synchronized across all"
-	ewarn "of your servers. Setup a NTP synchronizing service before attempting to"
-	ewarn "run GlusterFS."
-	echo
-	elog "If you are upgrading from a previous version of ${PN}, please read:"
-	elog "  http://docs.gluster.org/en/latest/Upgrade-Guide/upgrade_to_$(ver_cut '1-2')/"
-
-	use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2024-04-15 12:55 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-01-19  9:47 [gentoo-commits] repo/gentoo:master commit in: sys-cluster/glusterfs/files/, sys-cluster/glusterfs/ Alexys Jacob
  -- strict thread matches above, loose matches on Subject: below --
2024-04-15 12:55 Michał Górny
2022-08-18 18:43 Sam James
2022-07-23 12:50 Joonas Niilola
2020-02-09 16:32 Alexys Jacob
2018-05-26 11:07 James Le Cuirot
2017-10-22 14:17 James Le Cuirot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox