diff options
-rw-r--r-- | sys-cluster/glusterfs/Manifest | 2 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-7.7.ebuild | 211 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-7.8-r1.ebuild | 213 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-7.9.ebuild | 9 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-8.3.ebuild | 9 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-9.0.ebuild | 9 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-9999.ebuild | 207 |
7 files changed, 6 insertions, 654 deletions
diff --git a/sys-cluster/glusterfs/Manifest b/sys-cluster/glusterfs/Manifest index e9c7f8fc1508..23d7ac305f1f 100644 --- a/sys-cluster/glusterfs/Manifest +++ b/sys-cluster/glusterfs/Manifest @@ -1,5 +1,3 @@ -DIST glusterfs-7.7.tar.gz 7675420 BLAKE2B cadd415053d791f5fe4fddbc45bf237275b29fb0340202eaf81bbd2e98c8e7a1b59fa276b8b47679224198675759287a2245095a751602a866d512155dfa73c8 SHA512 0a301802920e337a4931ed36133c76ef551e0c1794d324e5a0a120d289a53fb8a4a2fd8adaa7abe5a40b8b17cc2bb18d01426c9f18d91f68b1589429ddbaa125 -DIST glusterfs-7.8.tar.gz 7703665 BLAKE2B 39a2b459fc021bf17c2ea12661d8c808a688c5934de087d23550409f6c68dff5ea94156dcba52f15d78db8b600ebf9418152a6d6bf10d1ac6291d43d14f3ceda SHA512 40f7df4bb80a372b370366e8f370f9efdf838122be84d5524b2353027b4eb6005a43b808911214c56411264764164d6480418329db94ed0fe284fdcbd9bccbea DIST glusterfs-7.9.tar.gz 7702149 BLAKE2B e23b5a45a8c2c4f02f0992dfc78bea942a1dcc621082cb5c6aebf73e0cba17a7c0334700aec8c82dc7d093fbddcf9f579320561412b94ec010cf51c0210f2654 SHA512 5683bf2ff3550b8286e27b70981cb176c445e432624db79f065eb5928bc4afdf009f54f3b1d5abde1f6d2c532c9c4820860685aea0d0f709dc78fcf35bfea688 DIST glusterfs-8.3.tar.gz 7829522 BLAKE2B 1ba60f7209db4f1ce21237c3adea94df1b9eae04d15f99eb414bf961ea67aa7e08d01ea47c8793a33afbc0ff6cf63ecb81f78fa1ba74d66e2d4358ef2bdadacc SHA512 7ca9d3d8938eb27a7347461a07457e90d1ee6e8d5417970e38245c819cf09bf2ecf9de3954b75edf5cf14816e1059fb381b95935ae1f973ebd14ee7531322aa9 DIST glusterfs-9.0.tar.gz 8171193 BLAKE2B f9f9905515607b4877432bde264075f73c4c076ae435a67ab803affc468f5f88d02235419fea6e25db19adecff9b797a41eb5ac63772fe81251c064389f7aca6 SHA512 daa5a7342c067c75668910e8fed17145636e7a576830b4cd68e81d9fceedaab918228b8780ebd5014e2397e0606858af650cd2c52bec0883ccd2126955ad07e7 diff --git a/sys-cluster/glusterfs/glusterfs-7.7.ebuild b/sys-cluster/glusterfs/glusterfs-7.7.ebuild deleted file mode 100644 index 77bd676415e3..000000000000 --- a/sys-cluster/glusterfs/glusterfs-7.7.ebuild +++ /dev/null @@ -1,211 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) - -inherit autotools elisp-common python-single-r1 systemd - -if [[ ${PV#9999} != ${PV} ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/gluster/glusterfs.git" -else - SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" - KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86" -fi - -DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" -HOMEPAGE="https://www.gluster.org/" - -LICENSE="|| ( GPL-2 LGPL-3+ )" -SLOT="0" -IUSE="debug emacs +fuse +georeplication infiniband ipv6 libressl +libtirpc rsyslog static-libs +syslog test vim-syntax +xml" - -REQUIRED_USE="georeplication? ( ${PYTHON_REQUIRED_USE} ) - 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/userspace-rcu:= - net-libs/rpcsvc-proto - sys-apps/util-linux - sys-libs/readline:= - emacs? ( >=app-editors/emacs-23.1:* ) - fuse? ( >=sys-fs/fuse-2.7.0:0 ) - georeplication? ( ${PYTHON_DEPS} ) - infiniband? ( sys-fabric/libibverbs:* sys-fabric/librdmacm:* ) - xml? ( dev-libs/libxml2 ) - !elibc_glibc? ( sys-libs/argp-standalone ) - libtirpc? ( net-libs/libtirpc:= ) - !libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) ) - !libressl? ( dev-libs/openssl:=[-bindist] ) - libressl? ( dev-libs/libressl:= ) -" -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 ) - -PATCHES=( - "${FILESDIR}/${PN}-7.7-flock.patch" -) - -# 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 | - 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-fusermount \ - $(use_enable debug) \ - $(use_enable fuse fuse-client) \ - $(use_enable georeplication) \ - $(use_enable infiniband ibverbs) \ - $(use_enable static-libs static) \ - $(use_enable syslog) \ - $(use_enable test cmocka) \ - $(use_enable xml xml-output) \ - $(use libtirpc || echo --without-libtirpc) \ - $(use ipv6 && echo --with-ipv6-default) \ - --with-tmpfilesdir="${EPREFIX}"/etc/tmpfiles.d \ - --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/{events,glusterfind/.keys} - - # QA - rm -r "${ED}/var/run/" || die - if ! use static-libs; then - find "${D}" -type f -name '*.la' -delete || die - fi -} - -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_$(ver_cut '1-2')/" - - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/sys-cluster/glusterfs/glusterfs-7.8-r1.ebuild b/sys-cluster/glusterfs/glusterfs-7.8-r1.ebuild deleted file mode 100644 index 44c9755c9263..000000000000 --- a/sys-cluster/glusterfs/glusterfs-7.8-r1.ebuild +++ /dev/null @@ -1,213 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) - -inherit autotools elisp-common python-single-r1 systemd - -if [[ ${PV#9999} != ${PV} ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/gluster/glusterfs.git" -else - SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" - KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86" -fi - -DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" -HOMEPAGE="https://www.gluster.org/" - -LICENSE="|| ( GPL-2 LGPL-3+ )" -SLOT="0" -IUSE="debug emacs +fuse +georeplication infiniband ipv6 libressl +libtirpc rsyslog static-libs +syslog test vim-syntax +xml" - -REQUIRED_USE="georeplication? ( ${PYTHON_REQUIRED_USE} ) - 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/userspace-rcu:= - net-libs/rpcsvc-proto - sys-apps/util-linux - sys-libs/readline:= - emacs? ( >=app-editors/emacs-23.1:* ) - fuse? ( >=sys-fs/fuse-2.7.0:0 ) - georeplication? ( ${PYTHON_DEPS} ) - infiniband? ( sys-fabric/libibverbs:* sys-fabric/librdmacm:* ) - xml? ( dev-libs/libxml2 ) - !elibc_glibc? ( sys-libs/argp-standalone ) - libtirpc? ( net-libs/libtirpc:= ) - !libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) ) - !libressl? ( dev-libs/openssl:=[-bindist] ) - libressl? ( dev-libs/libressl:= ) -" -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 ) - -PATCHES=( - "${FILESDIR}/${PN}-7.7-flock.patch" -) - -# 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 | - 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-fusermount \ - $(use_enable debug) \ - $(use_enable fuse fuse-client) \ - $(use_enable georeplication) \ - $(use_enable infiniband ibverbs) \ - $(use_enable static-libs static) \ - $(use_enable syslog) \ - $(use_enable test cmocka) \ - $(use_enable xml xml-output) \ - $(use libtirpc || echo --without-libtirpc) \ - $(use ipv6 && echo --with-ipv6-default) \ - --with-tmpfilesdir="${EPREFIX}"/etc/tmpfiles.d \ - --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/{events,glusterfind/.keys} - - # QA - rm -r "${ED}/var/run/" || die - if ! use static-libs; then - find "${D}" -type f -name '*.la' -delete || die - fi - - python_optimize "${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_$(ver_cut '1-2')/" - - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/sys-cluster/glusterfs/glusterfs-7.9.ebuild b/sys-cluster/glusterfs/glusterfs-7.9.ebuild index 45b362b492e5..84f522b78c81 100644 --- a/sys-cluster/glusterfs/glusterfs-7.9.ebuild +++ b/sys-cluster/glusterfs/glusterfs-7.9.ebuild @@ -7,13 +7,8 @@ PYTHON_COMPAT=( python3_{7..9} ) inherit autotools elisp-common python-single-r1 systemd -if [[ ${PV#9999} != ${PV} ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/gluster/glusterfs.git" -else - SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" - KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86" -fi +SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" +KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86" DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" HOMEPAGE="https://www.gluster.org/ https://github.com/gluster/glusterfs/" diff --git a/sys-cluster/glusterfs/glusterfs-8.3.ebuild b/sys-cluster/glusterfs/glusterfs-8.3.ebuild index 8354a144baa5..7781fd95707c 100644 --- a/sys-cluster/glusterfs/glusterfs-8.3.ebuild +++ b/sys-cluster/glusterfs/glusterfs-8.3.ebuild @@ -7,13 +7,8 @@ PYTHON_COMPAT=( python3_{7..9} ) inherit autotools elisp-common python-single-r1 systemd -if [[ ${PV#9999} != ${PV} ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/gluster/glusterfs.git" -else - SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" - KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86" -fi +SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" +KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86" DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" HOMEPAGE="https://www.gluster.org/ https://github.com/gluster/glusterfs/" diff --git a/sys-cluster/glusterfs/glusterfs-9.0.ebuild b/sys-cluster/glusterfs/glusterfs-9.0.ebuild index f8603e0e9ea4..447c689852df 100644 --- a/sys-cluster/glusterfs/glusterfs-9.0.ebuild +++ b/sys-cluster/glusterfs/glusterfs-9.0.ebuild @@ -7,13 +7,8 @@ PYTHON_COMPAT=( python3_{7..9} ) inherit autotools elisp-common python-single-r1 systemd -if [[ ${PV#9999} != ${PV} ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/gluster/glusterfs.git" -else - SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" -fi +SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" HOMEPAGE="https://www.gluster.org/ https://github.com/gluster/glusterfs/" diff --git a/sys-cluster/glusterfs/glusterfs-9999.ebuild b/sys-cluster/glusterfs/glusterfs-9999.ebuild deleted file mode 100644 index 4d96e7c5291e..000000000000 --- a/sys-cluster/glusterfs/glusterfs-9999.ebuild +++ /dev/null @@ -1,207 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) - -inherit autotools elisp-common python-single-r1 systemd - -if [[ ${PV#9999} != ${PV} ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/gluster/glusterfs.git" -else - SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" -fi - -DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" -HOMEPAGE="https://www.gluster.org/" - -LICENSE="|| ( GPL-2 LGPL-3+ )" -SLOT="0" -IUSE="debug emacs +fuse +georeplication infiniband ipv6 libressl +libtirpc rsyslog static-libs +syslog test vim-syntax +xml" - -REQUIRED_USE="georeplication? ( ${PYTHON_REQUIRED_USE} ) - 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/userspace-rcu:= - net-libs/rpcsvc-proto - sys-apps/util-linux - sys-libs/readline:= - emacs? ( >=app-editors/emacs-23.1:* ) - fuse? ( >=sys-fs/fuse-2.7.0:0 ) - georeplication? ( ${PYTHON_DEPS} ) - infiniband? ( sys-fabric/libibverbs:* sys-fabric/librdmacm:* ) - xml? ( dev-libs/libxml2 ) - !elibc_glibc? ( sys-libs/argp-standalone ) - libtirpc? ( net-libs/libtirpc:= ) - !libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) ) - !libressl? ( dev-libs/openssl:=[-bindist] ) - libressl? ( dev-libs/libressl:= ) -" -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 ) - -# 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 | - 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-fusermount \ - $(use_enable debug) \ - $(use_enable fuse fuse-client) \ - $(use_enable georeplication) \ - $(use_enable infiniband ibverbs) \ - $(use_enable static-libs static) \ - $(use_enable syslog) \ - $(use_enable test cmocka) \ - $(use_enable xml xml-output) \ - $(use libtirpc || echo --without-libtirpc) \ - $(use ipv6 && echo --with-ipv6-default) \ - --with-tmpfilesdir="${EPREFIX}"/etc/tmpfiles.d \ - --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/{events,glusterfind/.keys} - - # QA - rm -r "${ED}/var/run/" || die - if ! use static-libs; then - find "${D}" -type f -name '*.la' -delete || die - fi -} - -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_$(ver_cut '1-2')/" - - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} |