From 56bd759df1d0c750a065b8c845e93d5dfa6b549d Mon Sep 17 00:00:00 2001 From: "Robin H. Johnson" Date: Sat, 8 Aug 2015 13:49:04 -0700 Subject: proj/gentoo: Initial commit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson X-Thanks: Alec Warner - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring - wrote much python to improve cvs2svn X-Thanks: Rich Freeman - validation scripts X-Thanks: Patrick Lauer - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed --- sys-cluster/glusterfs/Manifest | 4 + .../glusterfs/files/50glusterfs-mode-gentoo.el | 5 + .../glusterfs/files/glusterd-3.2.0-workdir.patch | 49 ++ sys-cluster/glusterfs/files/glusterd-r1.initd | 16 + sys-cluster/glusterfs/files/glusterd-r2.initd | 33 ++ sys-cluster/glusterfs/files/glusterd-workdir.patch | 49 ++ sys-cluster/glusterfs/files/glusterd.initd | 36 ++ .../files/glusterfs-3.1.0-parallel-build.patch | 22 + .../files/glusterfs-3.3.0-avoid-version.patch | 431 +++++++++++++++ .../glusterfs/files/glusterfs-3.3.0-docdir.patch | 26 + .../files/glusterfs-3.3.0-parallel-build.patch | 20 + .../files/glusterfs-3.3.0-silent_rules.patch | 25 + .../files/glusterfs-3.4.0-build-shared-only.patch | 505 ++++++++++++++++++ ....0-nfs-exit-when-all-volumes-are-disabled.patch | 42 ++ .../files/glusterfs-3.4.0-silent_rules.patch | 23 + ...-Don-t-do-extra-unref-in-dht-migration-ch.patch | 48 ++ ...4.4-fuse-fix-memory-leak-in-fuse_getxattr.patch | 91 ++++ ...libraries-using-LIBADD-instead-of-LDFLAGS.patch | 54 ++ .../files/glusterfs-3.5.1-build-shared-only.patch | 576 +++++++++++++++++++++ sys-cluster/glusterfs/files/glusterfs-docdir.patch | 51 ++ sys-cluster/glusterfs/files/glusterfs-r1.initd | 122 +++++ sys-cluster/glusterfs/files/glusterfs.confd | 6 + sys-cluster/glusterfs/files/glusterfs.initd | 120 +++++ sys-cluster/glusterfs/files/glusterfs.logrotate | 34 ++ sys-cluster/glusterfs/files/glusterfs.vim | 8 + sys-cluster/glusterfs/glusterfs-3.1.2.ebuild | 112 ++++ sys-cluster/glusterfs/glusterfs-3.2.7.ebuild | 122 +++++ sys-cluster/glusterfs/glusterfs-3.3.1-r2.ebuild | 135 +++++ sys-cluster/glusterfs/glusterfs-3.5.3.ebuild | 174 +++++++ sys-cluster/glusterfs/metadata.xml | 21 + 30 files changed, 2960 insertions(+) create mode 100644 sys-cluster/glusterfs/Manifest create mode 100644 sys-cluster/glusterfs/files/50glusterfs-mode-gentoo.el create mode 100644 sys-cluster/glusterfs/files/glusterd-3.2.0-workdir.patch create mode 100644 sys-cluster/glusterfs/files/glusterd-r1.initd create mode 100644 sys-cluster/glusterfs/files/glusterd-r2.initd create mode 100644 sys-cluster/glusterfs/files/glusterd-workdir.patch create mode 100644 sys-cluster/glusterfs/files/glusterd.initd create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.1.0-parallel-build.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.3.0-avoid-version.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.3.0-docdir.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.3.0-parallel-build.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.3.0-silent_rules.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.4.0-build-shared-only.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.4.0-nfs-exit-when-all-volumes-are-disabled.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.4.0-silent_rules.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.4.4-cluster-dht-Don-t-do-extra-unref-in-dht-migration-ch.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.4.4-fuse-fix-memory-leak-in-fuse_getxattr.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.5.1-Add-libraries-using-LIBADD-instead-of-LDFLAGS.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-3.5.1-build-shared-only.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-docdir.patch create mode 100644 sys-cluster/glusterfs/files/glusterfs-r1.initd create mode 100644 sys-cluster/glusterfs/files/glusterfs.confd create mode 100644 sys-cluster/glusterfs/files/glusterfs.initd create mode 100644 sys-cluster/glusterfs/files/glusterfs.logrotate create mode 100644 sys-cluster/glusterfs/files/glusterfs.vim create mode 100644 sys-cluster/glusterfs/glusterfs-3.1.2.ebuild create mode 100644 sys-cluster/glusterfs/glusterfs-3.2.7.ebuild create mode 100644 sys-cluster/glusterfs/glusterfs-3.3.1-r2.ebuild create mode 100644 sys-cluster/glusterfs/glusterfs-3.5.3.ebuild create mode 100644 sys-cluster/glusterfs/metadata.xml (limited to 'sys-cluster/glusterfs') diff --git a/sys-cluster/glusterfs/Manifest b/sys-cluster/glusterfs/Manifest new file mode 100644 index 000000000000..e08b3507491a --- /dev/null +++ b/sys-cluster/glusterfs/Manifest @@ -0,0 +1,4 @@ +DIST glusterfs-3.1.2.tar.gz 2086469 SHA256 9a4e910431f572aa180a3ad1821f7524773ec1e8f06342c4040f26619f832838 SHA512 69b61af7c6cd9f54f615f7cd50c6ffda670800c6045604449b130eaa43c90c9adcb518c1312134890cccf3a301066a5af3e97bd7ec9775b7f70ea6d0a4a67cd6 WHIRLPOOL 0ecc86ac943f4c8d9575b8b0ae2ef72002d6510945e1a687409277165eb7688c2e4db50532ae10777828646b782561dfd4314fa766d7a3bcf4762e8be7c34c79 +DIST glusterfs-3.2.7.tar.gz 2424292 SHA256 464c089ff9da5a8e17f7caeae48f1cad59973489dfe940a9f0d8db8bc14cd6c4 SHA512 c4a286e1ddfec6c92d011b5abe4f96321e39dff57294141fc44cda4578fa11582095362733092af9042b38528cb328208e9e46a33c40c70e672ffb4e38dcc013 WHIRLPOOL 843a615b334e1ee84c3bcef1a8aceb113eb6976656ae09c6cbf4dcb201f4d37d9cc8ef3ccd3cc4aeb879bffde556b9f6f7105c3c39afed94a19b9613cd8c4284 +DIST glusterfs-3.3.1.tar.gz 2636698 SHA256 19aaefe3a0f9059ae831b44c92944503cf439da82da23467101ac13da8b77519 SHA512 c32e95a0e4568a62fabcf0c52ad3d6a173b62c5536006c3680e3efd1240e2a68177e14891e11d1d16eff5eb67bf60108dbd44151c26241203d8ddb58f0270c69 WHIRLPOOL 30316bbdb7087dd32d35f0f017ea461711830f5450984edb6d6c527d7f9cae5ee307601887cf489a2d675180d1f21a77ac7901f37f44cc860cccbe510c5a18bf +DIST glusterfs-3.5.3.tar.gz 5021529 SHA256 d805d77da721e6fcb839f1208a9315b4f37b9d2a12c375dd47e5db4a60f5b6c2 SHA512 5a360c9d5180d1e59b8cac9900e4cf776aebf59fd59cca6a0ef27a84cae3781c8c5640b253c73888af751344dce9fd19c1b26bd9aa590ba4fc860143c990f30a WHIRLPOOL a08d3fc6f66dd4191d95611e1b626d8b393e2b8620800039cde20fcebe1643dc2cfe9e7eb3ce3be31aa4f17b8fc881060d40e3493ce189b93668716e2c7ae86d diff --git a/sys-cluster/glusterfs/files/50glusterfs-mode-gentoo.el b/sys-cluster/glusterfs/files/50glusterfs-mode-gentoo.el new file mode 100644 index 000000000000..c14b0d8de33b --- /dev/null +++ b/sys-cluster/glusterfs/files/50glusterfs-mode-gentoo.el @@ -0,0 +1,5 @@ + +;;; puppet-mode site-lisp configuration + +(add-to-list 'load-path "@SITELISP@") +(autoload 'glusterfs-mode "glusterfs-mode" "Major mode for editing glusterfs manifests") diff --git a/sys-cluster/glusterfs/files/glusterd-3.2.0-workdir.patch b/sys-cluster/glusterfs/files/glusterd-3.2.0-workdir.patch new file mode 100644 index 000000000000..a312bdbc64d7 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterd-3.2.0-workdir.patch @@ -0,0 +1,49 @@ +Change the default workdir of the glusterd daemon to /var/lib/glusterd instead of /etc/glusterd. +This directory is dynamically populated by glusterd via the gluster CLI so it does better +belong into /var/lib/. + +Patch by Ultrabug. + +--- a/xlators/mgmt/glusterd/src/glusterd.h 2010-10-13 06:20:37.000000000 +0200 ++++ b/xlators/mgmt/glusterd/src/glusterd.h 2010-10-26 10:47:52.747265444 +0200 +@@ -204,7 +204,7 @@ + GLUSTERD_VOL_COMP_RJT, + }; + +-#define GLUSTERD_DEFAULT_WORKDIR "/etc/glusterd" ++#define GLUSTERD_DEFAULT_WORKDIR "/var/lib/glusterd" + #define GLUSTERD_DEFAULT_PORT GF_DEFAULT_BASE_PORT + #define GLUSTERD_INFO_FILE "glusterd.info" + #define GLUSTERD_VOLUME_DIR_PREFIX "vols" +--- a/doc/glusterd.vol 2010-10-13 06:20:36.000000000 +0200 ++++ b/doc/glusterd.vol 2010-10-26 10:48:16.487931870 +0200 +@@ -1,6 +1,6 @@ + volume management + type mgmt/glusterd +- option working-directory /etc/glusterd ++ option working-directory /var/lib/glusterd + option transport-type socket,rdma + option transport.socket.keepalive-time 10 + option transport.socket.keepalive-interval 2 +--- a/doc/glusterd.8 2010-10-13 06:20:36.000000000 +0200 ++++ b/doc/glusterd.8 2010-10-26 10:48:44.898729373 +0200 +@@ -70,7 +70,7 @@ + + .PP + .SH FILES +-/etc/glusterd/* ++/var/lib/glusterd/* + + .SH SEE ALSO + .nf +--- a/doc/gluster.8 2011-04-22 19:37:28.000000000 +0200 ++++ b/doc/gluster.8 2011-05-16 11:56:14.318682346 +0200 +@@ -121,7 +121,7 @@ + Exit the gluster command line interface. + + .SH FILES +-/etc/glusterd/* ++/var/lib/glusterd/* + .SH SEE ALSO + .nf + \fBfusermount\fR(1), \fBmount.glusterfs\fR(8), \fBglusterfs\fR(8), \fBglusterd\fR(8) \ No newline at end of file diff --git a/sys-cluster/glusterfs/files/glusterd-r1.initd b/sys-cluster/glusterfs/files/glusterd-r1.initd new file mode 100644 index 000000000000..3cb7c637163c --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterd-r1.initd @@ -0,0 +1,16 @@ +#!/sbin/runscript +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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 +} diff --git a/sys-cluster/glusterfs/files/glusterd-r2.initd b/sys-cluster/glusterfs/files/glusterd-r2.initd new file mode 100644 index 000000000000..8d4d7b8257af --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterd-r2.initd @@ -0,0 +1,33 @@ +#!/sbin/runscript +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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 root:root --mode 0700 /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/glusterd-workdir.patch b/sys-cluster/glusterfs/files/glusterd-workdir.patch new file mode 100644 index 000000000000..285136373d8e --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterd-workdir.patch @@ -0,0 +1,49 @@ +Change the default workdir of the glusterd daemon to /var/lib/glusterd instead of /etc/glusterd. +This directory is dynamically populated by glusterd via the gluster CLI so it does better +belong into /var/lib/. + +Patch by Ultrabug. + +--- a/xlators/mgmt/glusterd/src/glusterd.h 2010-10-13 06:20:37.000000000 +0200 ++++ b/xlators/mgmt/glusterd/src/glusterd.h 2010-10-26 10:47:52.747265444 +0200 +@@ -204,7 +204,7 @@ + GLUSTERD_VOL_COMP_RJT, + }; + +-#define GLUSTERD_DEFAULT_WORKDIR "/etc/glusterd" ++#define GLUSTERD_DEFAULT_WORKDIR "/var/lib/glusterd" + #define GLUSTERD_DEFAULT_PORT GF_DEFAULT_BASE_PORT + #define GLUSTERD_INFO_FILE "glusterd.info" + #define GLUSTERD_VOLUME_DIR_PREFIX "vols" +--- a/doc/glusterd.vol 2010-10-13 06:20:36.000000000 +0200 ++++ b/doc/glusterd.vol 2010-10-26 10:48:16.487931870 +0200 +@@ -1,6 +1,6 @@ + volume management + type mgmt/glusterd +- option working-directory /etc/glusterd ++ option working-directory /var/lib/glusterd + option transport-type socket,rdma + option transport.socket.keepalive-time 10 + option transport.socket.keepalive-interval 2 +--- a/doc/gluster.8 2010-10-13 06:20:36.000000000 +0200 ++++ b/doc/gluster.8 2010-10-26 10:48:36.738500314 +0200 +@@ -118,7 +118,7 @@ + .TP + .PP + .SH FILES +-/etc/glusterd/* ++/var/lib/glusterd/* + + .SH SEE ALSO + .nf +--- a/doc/glusterd.8 2010-10-13 06:20:36.000000000 +0200 ++++ b/doc/glusterd.8 2010-10-26 10:48:44.898729373 +0200 +@@ -70,7 +70,7 @@ + + .PP + .SH FILES +-/etc/glusterd/* ++/var/lib/glusterd/* + + .SH SEE ALSO + .nf diff --git a/sys-cluster/glusterfs/files/glusterd.initd b/sys-cluster/glusterfs/files/glusterd.initd new file mode 100644 index 000000000000..bbb28a736d4f --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterd.initd @@ -0,0 +1,36 @@ +#!/sbin/runscript +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +PIDFILE=/var/run/glusterd.pid + +depend() { + need net + before netmount +} + +start() { + ebegin "Starting glusterd" + start-stop-daemon --start -q --exec /usr/sbin/glusterd \ + --pidfile "${PIDFILE}" --make-pidfile --background \ + -- -N + eend $? +} + +stop() { + ebegin "Stopping glusterd" + start-stop-daemon --stop -q --pidfile "${PIDFILE}" + eindent + + einfo "Unmounting GlusterFS filesystems" + umount -t fuse.glusterfs -a + + einfo "Killing remaining GlusterFS processes" + for PID in $(find /var/lib/glusterd/ -type f -name "*.pid" -exec cat {} \;); do + kill "${PID}" + done + + eoutdent + eend $? +} diff --git a/sys-cluster/glusterfs/files/glusterfs-3.1.0-parallel-build.patch b/sys-cluster/glusterfs/files/glusterfs-3.1.0-parallel-build.patch new file mode 100644 index 000000000000..9320c12ea7b1 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.1.0-parallel-build.patch @@ -0,0 +1,22 @@ +--- glusterfsd/src/Makefile.am ++++ glusterfsd/src/Makefile.am +@@ -20,5 +20,6 @@ uninstall-local: + install-data-local: + $(INSTALL) -d -m 755 $(DESTDIR)$(localstatedir)/run + $(INSTALL) -d -m 755 $(DESTDIR)$(localstatedir)/log/glusterfs ++ $(INSTALL) -d -m 755 $(DESTDIR)$(sbindir) + rm -f $(DESTDIR)$(sbindir)/glusterfs + ln -s glusterfsd $(DESTDIR)$(sbindir)/glusterfs +--- libglusterfs/src/Makefile.am ++++ libglusterfs/src/Makefile.am +@@ -15,7 +15,9 @@ + graph.lex.c: graph.l y.tab.h + $(LEX) -t $(srcdir)/graph.l > $@ + +-y.tab.c y.tab.h: graph.y ++y.tab.c: y.tab.h ++ ++y.tab.h: graph.y + $(YACC) -d $(srcdir)/graph.y + + CLEANFILES = graph.lex.c y.tab.c y.tab.h diff --git a/sys-cluster/glusterfs/files/glusterfs-3.3.0-avoid-version.patch b/sys-cluster/glusterfs/files/glusterfs-3.3.0-avoid-version.patch new file mode 100644 index 000000000000..2af2d502fc9e --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.3.0-avoid-version.patch @@ -0,0 +1,431 @@ +diff --git a/rpc/rpc-transport/rdma/src/Makefile.am b/rpc/rpc-transport/rdma/src/Makefile.am +index b4b940b..80f7a22 100644 +--- a/rpc/rpc-transport/rdma/src/Makefile.am ++++ b/rpc/rpc-transport/rdma/src/Makefile.am +@@ -3,7 +3,7 @@ + transport_LTLIBRARIES = rdma.la + transportdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/rpc-transport + +-rdma_la_LDFLAGS = -module -avoidversion ++rdma_la_LDFLAGS = -module -avoid-version -shared + + rdma_la_SOURCES = rdma.c name.c + rdma_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \ +diff --git a/rpc/rpc-transport/socket/src/Makefile.am b/rpc/rpc-transport/socket/src/Makefile.am +index 2c918c7..b07db72 100644 +--- a/rpc/rpc-transport/socket/src/Makefile.am ++++ b/rpc/rpc-transport/socket/src/Makefile.am +@@ -3,7 +3,7 @@ noinst_HEADERS = socket.h name.h + rpctransport_LTLIBRARIES = socket.la + rpctransportdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/rpc-transport + +-socket_la_LDFLAGS = -module -avoidversion ++socket_la_LDFLAGS = -module -avoid-version -shared + + socket_la_SOURCES = socket.c name.c + socket_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/cluster/afr/src/Makefile.am b/xlators/cluster/afr/src/Makefile.am +index 95db5dd..cdecea1 100644 +--- a/xlators/cluster/afr/src/Makefile.am ++++ b/xlators/cluster/afr/src/Makefile.am +@@ -7,11 +7,11 @@ afr_common_source = afr-dir-read.c afr-dir-write.c afr-inode-read.c \ + afr-self-heal-algorithm.c afr-lk-common.c afr-self-heald.c \ + $(top_builddir)/xlators/lib/src/libxlator.c + +-afr_la_LDFLAGS = -module -avoidversion ++afr_la_LDFLAGS = -module -avoid-version -shared + afr_la_SOURCES = $(afr_common_source) afr.c + afr_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-pump_la_LDFLAGS = -module -avoidversion ++pump_la_LDFLAGS = -module -avoid-version -shared + pump_la_SOURCES = $(afr_common_source) pump.c + pump_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +diff --git a/xlators/cluster/dht/src/Makefile.am b/xlators/cluster/dht/src/Makefile.am +index e35058d..127a023 100644 +--- a/xlators/cluster/dht/src/Makefile.am ++++ b/xlators/cluster/dht/src/Makefile.am +@@ -12,13 +12,13 @@ dht_la_SOURCES = $(dht_common_source) dht.c + nufa_la_SOURCES = $(dht_common_source) nufa.c + switch_la_SOURCES = $(dht_common_source) switch.c + +-dht_la_LDFLAGS = -module -avoidversion ++dht_la_LDFLAGS = -module -avoid-version -shared + dht_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-nufa_la_LDFLAGS = -module -avoidversion ++nufa_la_LDFLAGS = -module -avoid-version -shared + nufa_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-switch_la_LDFLAGS = -module -avoidversion ++switch_la_LDFLAGS = -module -avoid-version -shared + switch_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + + noinst_HEADERS = dht-common.h dht-mem-types.h \ +diff --git a/xlators/cluster/stripe/src/Makefile.am b/xlators/cluster/stripe/src/Makefile.am +index 8c48d34..18aba97 100644 +--- a/xlators/cluster/stripe/src/Makefile.am ++++ b/xlators/cluster/stripe/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = stripe.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/cluster + +-stripe_la_LDFLAGS = -module -avoidversion ++stripe_la_LDFLAGS = -module -avoid-version -shared + + stripe_la_SOURCES = stripe.c stripe-helpers.c \ + $(top_builddir)/xlators/lib/src/libxlator.c +diff --git a/xlators/debug/error-gen/src/Makefile.am b/xlators/debug/error-gen/src/Makefile.am +index df90803..cce10c0 100644 +--- a/xlators/debug/error-gen/src/Makefile.am ++++ b/xlators/debug/error-gen/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = error-gen.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/debug + +-error_gen_la_LDFLAGS = -module -avoidversion ++error_gen_la_LDFLAGS = -module -avoid-version -shared + + error_gen_la_SOURCES = error-gen.c + error_gen_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/debug/io-stats/src/Makefile.am b/xlators/debug/io-stats/src/Makefile.am +index b894e79..cff914a 100644 +--- a/xlators/debug/io-stats/src/Makefile.am ++++ b/xlators/debug/io-stats/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = io-stats.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/debug + +-io_stats_la_LDFLAGS = -module -avoidversion ++io_stats_la_LDFLAGS = -module -avoid-version -shared + + io_stats_la_SOURCES = io-stats.c + io_stats_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/debug/trace/src/Makefile.am b/xlators/debug/trace/src/Makefile.am +index 0f1679a..a0eb5a6 100644 +--- a/xlators/debug/trace/src/Makefile.am ++++ b/xlators/debug/trace/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = trace.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/debug + +-trace_la_LDFLAGS = -module -avoidversion ++trace_la_LDFLAGS = -module -avoid-version -shared + + trace_la_SOURCES = trace.c + trace_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/encryption/rot-13/src/Makefile.am b/xlators/encryption/rot-13/src/Makefile.am +index ba5e623..45573aa 100644 +--- a/xlators/encryption/rot-13/src/Makefile.am ++++ b/xlators/encryption/rot-13/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = rot-13.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/encryption + +-rot_13_la_LDFLAGS = -module -avoidversion ++rot_13_la_LDFLAGS = -module -avoid-version -shared + + rot_13_la_SOURCES = rot-13.c + rot_13_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/index/src/Makefile.am b/xlators/features/index/src/Makefile.am +index 5d037c7..c43c936 100644 +--- a/xlators/features/index/src/Makefile.am ++++ b/xlators/features/index/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = index.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-index_la_LDFLAGS = -module -avoidversion ++index_la_LDFLAGS = -module -avoid-version -shared + + index_la_SOURCES = index.c + index_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/locks/src/Makefile.am b/xlators/features/locks/src/Makefile.am +index e396768..5181e28 100644 +--- a/xlators/features/locks/src/Makefile.am ++++ b/xlators/features/locks/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = locks.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-locks_la_LDFLAGS = -module -avoidversion ++locks_la_LDFLAGS = -module -avoid-version -shared + + locks_la_SOURCES = common.c posix.c entrylk.c inodelk.c reservelk.c \ + clear.c +diff --git a/xlators/features/mac-compat/src/Makefile.am b/xlators/features/mac-compat/src/Makefile.am +index 915c13e..698b990 100644 +--- a/xlators/features/mac-compat/src/Makefile.am ++++ b/xlators/features/mac-compat/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = mac-compat.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-mac_compat_la_LDFLAGS = -module -avoidversion ++mac_compat_la_LDFLAGS = -module -avoid-version -shared + + mac_compat_la_SOURCES = mac-compat.c + mac_compat_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/marker/src/Makefile.am b/xlators/features/marker/src/Makefile.am +index 501586a..630ae96 100644 +--- a/xlators/features/marker/src/Makefile.am ++++ b/xlators/features/marker/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = marker.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-marker_la_LDFLAGS = -module -avoidversion ++marker_la_LDFLAGS = -module -avoid-version -shared + + marker_la_SOURCES = marker.c marker-quota.c marker-quota-helper.c marker-common.c + marker_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/quiesce/src/Makefile.am b/xlators/features/quiesce/src/Makefile.am +index e8ab4cb..4234269 100644 +--- a/xlators/features/quiesce/src/Makefile.am ++++ b/xlators/features/quiesce/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = quiesce.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-quiesce_la_LDFLAGS = -module -avoidversion ++quiesce_la_LDFLAGS = -module -avoid-version -shared + + quiesce_la_SOURCES = quiesce.c + quiesce_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/quota/src/Makefile.am b/xlators/features/quota/src/Makefile.am +index 4baa5f0..cd687bc 100644 +--- a/xlators/features/quota/src/Makefile.am ++++ b/xlators/features/quota/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = quota.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-quota_la_LDFLAGS = -module -avoidversion ++quota_la_LDFLAGS = -module -avoid-version -shared + + quota_la_SOURCES = quota.c + quota_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/read-only/src/Makefile.am b/xlators/features/read-only/src/Makefile.am +index 31ae4f3..45dcef5 100644 +--- a/xlators/features/read-only/src/Makefile.am ++++ b/xlators/features/read-only/src/Makefile.am +@@ -4,12 +4,12 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + + noinst_HEADERS = read-only-common.h + +-read_only_la_LDFLAGS = -module -avoidversion ++read_only_la_LDFLAGS = -module -avoid-version -shared + + read_only_la_SOURCES = read-only.c read-only-common.c + read_only_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-worm_la_LDFLAGS = -module -avoidversion ++worm_la_LDFLAGS = -module -avoid-version -shared + + worm_la_SOURCES = read-only-common.c worm.c + worm_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/mgmt/glusterd/src/Makefile.am b/xlators/mgmt/glusterd/src/Makefile.am +index 485350b..7facc66 100644 +--- a/xlators/mgmt/glusterd/src/Makefile.am ++++ b/xlators/mgmt/glusterd/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = glusterd.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/mgmt + glusterd_la_CPPFLAGS = "-DFILTERDIR=\"$(libdir)/glusterfs/$(PACKAGE_VERSION)/filter\"" +-glusterd_la_LDFLAGS = -module -avoidversion $(LIBXML2_LIBS) -lcrypto ++glusterd_la_LDFLAGS = -module -avoid-version -shared + glusterd_la_SOURCES = glusterd.c glusterd-handler.c glusterd-sm.c \ + glusterd-op-sm.c glusterd-utils.c glusterd-rpc-ops.c \ + glusterd-store.c glusterd-handshake.c glusterd-pmap.c \ +@@ -12,7 +12,8 @@ glusterd_la_SOURCES = glusterd.c glusterd-handler.c glusterd-sm.c \ + + glusterd_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \ + $(top_builddir)/rpc/xdr/src/libgfxdr.la \ +- $(top_builddir)/rpc/rpc-lib/src/libgfrpc.la ++ $(top_builddir)/rpc/rpc-lib/src/libgfrpc.la \ ++ $(LIBXML2_LIBS) -lcrypto + + noinst_HEADERS = glusterd.h glusterd-utils.h glusterd-op-sm.h \ + glusterd-sm.h glusterd-store.h glusterd-mem-types.h \ +diff --git a/xlators/nfs/server/src/Makefile.am b/xlators/nfs/server/src/Makefile.am +index ef3b672..48cca34 100644 +--- a/xlators/nfs/server/src/Makefile.am ++++ b/xlators/nfs/server/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = server.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/nfs + nfsrpclibdir = $(top_srcdir)/rpc/rpc-lib/src +-server_la_LDFLAGS = -module -avoidversion ++server_la_LDFLAGS = -module -avoid-version -shared + server_la_SOURCES = nfs.c nfs-common.c nfs-fops.c nfs-inodes.c \ + nfs-generics.c mount3.c nfs3-fh.c nfs3.c nfs3-helpers.c nlm4.c \ + nlmcbk_svc.c mount3udp_svc.c +diff --git a/xlators/performance/io-cache/src/Makefile.am b/xlators/performance/io-cache/src/Makefile.am +index 6dd270e..f066519 100644 +--- a/xlators/performance/io-cache/src/Makefile.am ++++ b/xlators/performance/io-cache/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = io-cache.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-io_cache_la_LDFLAGS = -module -avoidversion ++io_cache_la_LDFLAGS = -module -avoid-version -shared + + io_cache_la_SOURCES = io-cache.c page.c ioc-inode.c + io_cache_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/io-threads/src/Makefile.am b/xlators/performance/io-threads/src/Makefile.am +index 72f9a80..2de6cbb 100644 +--- a/xlators/performance/io-threads/src/Makefile.am ++++ b/xlators/performance/io-threads/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = io-threads.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-io_threads_la_LDFLAGS = -module -avoidversion ++io_threads_la_LDFLAGS = -module -avoid-version -shared + + io_threads_la_SOURCES = io-threads.c + io_threads_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/md-cache/src/Makefile.am b/xlators/performance/md-cache/src/Makefile.am +index 150e724..dc6fb54 100644 +--- a/xlators/performance/md-cache/src/Makefile.am ++++ b/xlators/performance/md-cache/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = md-cache.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-md_cache_la_LDFLAGS = -module -avoidversion ++md_cache_la_LDFLAGS = -module -avoid-version -shared + + md_cache_la_SOURCES = md-cache.c + md_cache_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/quick-read/src/Makefile.am b/xlators/performance/quick-read/src/Makefile.am +index db917f8..1da51b2 100644 +--- a/xlators/performance/quick-read/src/Makefile.am ++++ b/xlators/performance/quick-read/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = quick-read.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-quick_read_la_LDFLAGS = -module -avoidversion ++quick_read_la_LDFLAGS = -module -avoid-version -shared + + quick_read_la_SOURCES = quick-read.c + quick_read_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/read-ahead/src/Makefile.am b/xlators/performance/read-ahead/src/Makefile.am +index b46020a..1e17a3a 100644 +--- a/xlators/performance/read-ahead/src/Makefile.am ++++ b/xlators/performance/read-ahead/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = read-ahead.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-read_ahead_la_LDFLAGS = -module -avoidversion ++read_ahead_la_LDFLAGS = -module -avoid-version -shared + + read_ahead_la_SOURCES = read-ahead.c page.c + read_ahead_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/symlink-cache/src/Makefile.am b/xlators/performance/symlink-cache/src/Makefile.am +index 06e85fc..2f893ce 100644 +--- a/xlators/performance/symlink-cache/src/Makefile.am ++++ b/xlators/performance/symlink-cache/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = symlink-cache.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/testing/performance + +-symlink_cache_la_LDFLAGS = -module -avoidversion ++symlink_cache_la_LDFLAGS = -module -avoid-version -shared + + symlink_cache_la_SOURCES = symlink-cache.c + symlink_cache_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/write-behind/src/Makefile.am b/xlators/performance/write-behind/src/Makefile.am +index a5ebc90..838d6da 100644 +--- a/xlators/performance/write-behind/src/Makefile.am ++++ b/xlators/performance/write-behind/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = write-behind.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-write_behind_la_LDFLAGS = -module -avoidversion ++write_behind_la_LDFLAGS = -module -avoid-version -shared + + write_behind_la_SOURCES = write-behind.c + write_behind_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/protocol/auth/addr/src/Makefile.am b/xlators/protocol/auth/addr/src/Makefile.am +index f09d1c5..c77fce3 100644 +--- a/xlators/protocol/auth/addr/src/Makefile.am ++++ b/xlators/protocol/auth/addr/src/Makefile.am +@@ -1,7 +1,7 @@ + auth_LTLIBRARIES = addr.la + authdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/auth + +-addr_la_LDFLAGS = -module -avoidversion ++addr_la_LDFLAGS = -module -avoid-version -shared + + addr_la_SOURCES = addr.c + addr_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/protocol/auth/login/src/Makefile.am b/xlators/protocol/auth/login/src/Makefile.am +index b4719d1..5a5db4d 100644 +--- a/xlators/protocol/auth/login/src/Makefile.am ++++ b/xlators/protocol/auth/login/src/Makefile.am +@@ -1,7 +1,7 @@ + auth_LTLIBRARIES = login.la + authdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/auth + +-login_la_LDFLAGS = -module -avoidversion ++login_la_LDFLAGS = -module -avoid-version -shared + + login_la_SOURCES = login.c + login_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/protocol/client/src/Makefile.am b/xlators/protocol/client/src/Makefile.am +index 29c6e9d..19d2ed5 100644 +--- a/xlators/protocol/client/src/Makefile.am ++++ b/xlators/protocol/client/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = client.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/protocol + +-client_la_LDFLAGS = -module -avoidversion ++client_la_LDFLAGS = -module -avoid-version -shared + + client_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \ + $(top_builddir)/rpc/rpc-lib/src/libgfrpc.la \ +diff --git a/xlators/protocol/server/src/Makefile.am b/xlators/protocol/server/src/Makefile.am +index 0df5894..6eae10d 100644 +--- a/xlators/protocol/server/src/Makefile.am ++++ b/xlators/protocol/server/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = server.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/protocol + +-server_la_LDFLAGS = -module -avoidversion ++server_la_LDFLAGS = -module -avoid-version -shared + + server_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \ + $(top_builddir)/rpc/rpc-lib/src/libgfrpc.la \ +diff --git a/xlators/storage/posix/src/Makefile.am b/xlators/storage/posix/src/Makefile.am +index 408dcb8..3f6a4b6 100644 +--- a/xlators/storage/posix/src/Makefile.am ++++ b/xlators/storage/posix/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = posix.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/storage + +-posix_la_LDFLAGS = -module -avoidversion ++posix_la_LDFLAGS = -module -avoid-version -shared + + posix_la_SOURCES = posix.c posix-helpers.c posix-handle.c + posix_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/system/posix-acl/src/Makefile.am b/xlators/system/posix-acl/src/Makefile.am +index c095569..b799eb9 100644 +--- a/xlators/system/posix-acl/src/Makefile.am ++++ b/xlators/system/posix-acl/src/Makefile.am +@@ -1,6 +1,6 @@ + xlator_LTLIBRARIES = posix-acl.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/system +-posix_acl_la_LDFLAGS = -module -avoidversion ++posix_acl_la_LDFLAGS = -module -avoid-version -shared + posix_acl_la_SOURCES = posix-acl.c posix-acl-xattr.c + posix_acl_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + diff --git a/sys-cluster/glusterfs/files/glusterfs-3.3.0-docdir.patch b/sys-cluster/glusterfs/files/glusterfs-3.3.0-docdir.patch new file mode 100644 index 000000000000..83f3043d4ef5 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.3.0-docdir.patch @@ -0,0 +1,26 @@ +From 6a17bb8523c4c7810bf7797371df22cfb259f7a7 Mon Sep 17 00:00:00 2001 +From: MATSUU Takuto +Date: Sat, 16 May 2009 07:01:53 +0900 +Subject: [PATCH] Use the standard autoconf $docdir variable. + +--- a/extras/Makefile.am ++++ b/extras/Makefile.am +@@ -1,6 +1,5 @@ + +-docdir = $(datadir)/doc/glusterfs/ +-EditorModedir = $(docdir)/ ++EditorModedir = $(docdir) + EditorMode_DATA = glusterfs-mode.el glusterfs.vim + + SUBDIRS = init.d benchmarking +--- a/extras/benchmarking/Makefile.am ++++ b/extras/benchmarking/Makefile.am +@@ -1,7 +1,5 @@ + +-docdir = $(datadir)/doc/$(PACKAGE_NAME)/benchmarking +- +-benchmarkingdir = $(docdir) ++benchmarkingdir = $(docdir)/benchmarking + + benchmarking_DATA = rdd.c glfs-bm.c README launch-script.sh local-script.sh + diff --git a/sys-cluster/glusterfs/files/glusterfs-3.3.0-parallel-build.patch b/sys-cluster/glusterfs/files/glusterfs-3.3.0-parallel-build.patch new file mode 100644 index 000000000000..ab3a3d1547ca --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.3.0-parallel-build.patch @@ -0,0 +1,20 @@ +--- a/glusterfsd/src/Makefile.am ++++ b/glusterfsd/src/Makefile.am +@@ -25,6 +25,7 @@ + install-data-local: + $(INSTALL) -d -m 755 $(DESTDIR)$(localstatedir)/run + $(INSTALL) -d -m 755 $(DESTDIR)$(localstatedir)/log/glusterfs ++ $(INSTALL) -d -m 755 $(DESTDIR)$(sbindir) + rm -f $(DESTDIR)$(sbindir)/glusterfs + rm -f $(DESTDIR)$(sbindir)/glusterd + ln -s glusterfsd $(DESTDIR)$(sbindir)/glusterfs +--- a/libglusterfs/src/Makefile.am ++++ b/libglusterfs/src/Makefile.am +@@ -43,6 +43,7 @@ + graph.lex.c: graph.l y.tab.h + $(LEX) -t $(srcdir)/graph.l > $@ + ++y.tab.c: y.tab.h + y.tab.h: graph.y + $(YACC) -d $(srcdir)/graph.y + diff --git a/sys-cluster/glusterfs/files/glusterfs-3.3.0-silent_rules.patch b/sys-cluster/glusterfs/files/glusterfs-3.3.0-silent_rules.patch new file mode 100644 index 000000000000..d9e25494b64c --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.3.0-silent_rules.patch @@ -0,0 +1,25 @@ +diff --git a/configure.ac b/configure.ac +index 4551fcf..a30c62e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -19,20 +19,6 @@ AC_INIT([glusterfs],[3.3.0],[gluster-users@gluster.org]) + + AM_INIT_AUTOMAKE + +-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 +- + AM_CONFIG_HEADER([config.h]) + + AC_CONFIG_FILES([Makefile diff --git a/sys-cluster/glusterfs/files/glusterfs-3.4.0-build-shared-only.patch b/sys-cluster/glusterfs/files/glusterfs-3.4.0-build-shared-only.patch new file mode 100644 index 000000000000..38afa6c4f387 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.4.0-build-shared-only.patch @@ -0,0 +1,505 @@ +From 96dfc056d9525dd102bd78dc2f25fa51e00fbab5 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tiziano=20M=C3=BCller?= +Date: Fri, 26 Jul 2013 10:28:25 +0200 +Subject: [PATCH 2/2] Build shared plugins only. + +--- + rpc/rpc-transport/rdma/src/Makefile.am | 2 +- + rpc/rpc-transport/socket/src/Makefile.am | 2 +- + xlators/cluster/afr/src/Makefile.am | 4 ++-- + xlators/cluster/dht/src/Makefile.am | 6 +++--- + xlators/cluster/stripe/src/Makefile.am | 2 +- + xlators/debug/error-gen/src/Makefile.am | 2 +- + xlators/debug/io-stats/src/Makefile.am | 2 +- + xlators/debug/trace/src/Makefile.am | 2 +- + xlators/encryption/rot-13/src/Makefile.am | 2 +- + xlators/features/index/src/Makefile.am | 2 +- + xlators/features/locks/src/Makefile.am | 2 +- + xlators/features/mac-compat/src/Makefile.am | 2 +- + xlators/features/marker/src/Makefile.am | 2 +- + xlators/features/quiesce/src/Makefile.am | 2 +- + xlators/features/quota/src/Makefile.am | 2 +- + xlators/features/read-only/src/Makefile.am | 4 ++-- + xlators/mgmt/glusterd/src/Makefile.am | 2 +- + xlators/mount/fuse/src/Makefile.am | 2 +- + xlators/nfs/server/src/Makefile.am | 2 +- + xlators/performance/io-cache/src/Makefile.am | 2 +- + xlators/performance/io-threads/src/Makefile.am | 2 +- + xlators/performance/md-cache/src/Makefile.am | 2 +- + xlators/performance/open-behind/src/Makefile.am | 2 +- + xlators/performance/quick-read/src/Makefile.am | 2 +- + xlators/performance/read-ahead/src/Makefile.am | 2 +- + xlators/performance/symlink-cache/src/Makefile.am | 2 +- + xlators/performance/write-behind/src/Makefile.am | 2 +- + xlators/protocol/auth/addr/src/Makefile.am | 2 +- + xlators/protocol/auth/login/src/Makefile.am | 2 +- + xlators/protocol/client/src/Makefile.am | 2 +- + xlators/protocol/server/src/Makefile.am | 2 +- + xlators/storage/bd_map/src/Makefile.am | 2 +- + xlators/storage/posix/src/Makefile.am | 2 +- + xlators/system/posix-acl/src/Makefile.am | 2 +- + 34 files changed, 38 insertions(+), 38 deletions(-) + +diff --git a/rpc/rpc-transport/rdma/src/Makefile.am b/rpc/rpc-transport/rdma/src/Makefile.am +index 2bf7cf2..8e52d70 100644 +--- a/rpc/rpc-transport/rdma/src/Makefile.am ++++ b/rpc/rpc-transport/rdma/src/Makefile.am +@@ -3,7 +3,7 @@ + transport_LTLIBRARIES = rdma.la + transportdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/rpc-transport + +-rdma_la_LDFLAGS = -module -avoid-version ++rdma_la_LDFLAGS = -module -avoid-version -shared + + rdma_la_SOURCES = rdma.c name.c + rdma_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \ +diff --git a/rpc/rpc-transport/socket/src/Makefile.am b/rpc/rpc-transport/socket/src/Makefile.am +index 71e6ed6..b481fe9 100644 +--- a/rpc/rpc-transport/socket/src/Makefile.am ++++ b/rpc/rpc-transport/socket/src/Makefile.am +@@ -3,7 +3,7 @@ noinst_HEADERS = socket.h name.h + rpctransport_LTLIBRARIES = socket.la + rpctransportdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/rpc-transport + +-socket_la_LDFLAGS = -module -avoid-version ++socket_la_LDFLAGS = -module -avoid-version -shared + + socket_la_SOURCES = socket.c name.c + socket_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la -lssl +diff --git a/xlators/cluster/afr/src/Makefile.am b/xlators/cluster/afr/src/Makefile.am +index 35d18a6..959fea8 100644 +--- a/xlators/cluster/afr/src/Makefile.am ++++ b/xlators/cluster/afr/src/Makefile.am +@@ -7,11 +7,11 @@ afr_common_source = afr-dir-read.c afr-dir-write.c afr-inode-read.c \ + afr-self-heal-algorithm.c afr-lk-common.c afr-self-heald.c \ + $(top_builddir)/xlators/lib/src/libxlator.c + +-afr_la_LDFLAGS = -module -avoid-version ++afr_la_LDFLAGS = -module -avoid-version -shared + afr_la_SOURCES = $(afr_common_source) afr.c + afr_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-pump_la_LDFLAGS = -module -avoid-version ++pump_la_LDFLAGS = -module -avoid-version -shared + pump_la_SOURCES = $(afr_common_source) pump.c + pump_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +diff --git a/xlators/cluster/dht/src/Makefile.am b/xlators/cluster/dht/src/Makefile.am +index 5324d21..d5f36ea 100644 +--- a/xlators/cluster/dht/src/Makefile.am ++++ b/xlators/cluster/dht/src/Makefile.am +@@ -12,13 +12,13 @@ dht_la_SOURCES = $(dht_common_source) dht.c + nufa_la_SOURCES = $(dht_common_source) nufa.c + switch_la_SOURCES = $(dht_common_source) switch.c + +-dht_la_LDFLAGS = -module -avoid-version ++dht_la_LDFLAGS = -module -avoid-version -shared + dht_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-nufa_la_LDFLAGS = -module -avoid-version ++nufa_la_LDFLAGS = -module -avoid-version -shared + nufa_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-switch_la_LDFLAGS = -module -avoid-version ++switch_la_LDFLAGS = -module -avoid-version -shared + switch_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + + noinst_HEADERS = dht-common.h dht-mem-types.h \ +diff --git a/xlators/cluster/stripe/src/Makefile.am b/xlators/cluster/stripe/src/Makefile.am +index 2d15142..6989de9 100644 +--- a/xlators/cluster/stripe/src/Makefile.am ++++ b/xlators/cluster/stripe/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = stripe.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/cluster + +-stripe_la_LDFLAGS = -module -avoid-version ++stripe_la_LDFLAGS = -module -avoid-version -shared + + stripe_la_SOURCES = stripe.c stripe-helpers.c \ + $(top_builddir)/xlators/lib/src/libxlator.c +diff --git a/xlators/debug/error-gen/src/Makefile.am b/xlators/debug/error-gen/src/Makefile.am +index 5075c59..a7681c4 100644 +--- a/xlators/debug/error-gen/src/Makefile.am ++++ b/xlators/debug/error-gen/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = error-gen.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/debug + +-error_gen_la_LDFLAGS = -module -avoid-version ++error_gen_la_LDFLAGS = -module -avoid-version -shared + + error_gen_la_SOURCES = error-gen.c + error_gen_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/debug/io-stats/src/Makefile.am b/xlators/debug/io-stats/src/Makefile.am +index 332d790..bf62017 100644 +--- a/xlators/debug/io-stats/src/Makefile.am ++++ b/xlators/debug/io-stats/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = io-stats.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/debug + +-io_stats_la_LDFLAGS = -module -avoid-version ++io_stats_la_LDFLAGS = -module -avoid-version -shared + + io_stats_la_SOURCES = io-stats.c + io_stats_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/debug/trace/src/Makefile.am b/xlators/debug/trace/src/Makefile.am +index 7b2597b..2030ed4 100644 +--- a/xlators/debug/trace/src/Makefile.am ++++ b/xlators/debug/trace/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = trace.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/debug + +-trace_la_LDFLAGS = -module -avoid-version ++trace_la_LDFLAGS = -module -avoid-version -shared + + trace_la_SOURCES = trace.c + trace_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/encryption/rot-13/src/Makefile.am b/xlators/encryption/rot-13/src/Makefile.am +index 94e8d18..d13894e 100644 +--- a/xlators/encryption/rot-13/src/Makefile.am ++++ b/xlators/encryption/rot-13/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = rot-13.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/encryption + +-rot_13_la_LDFLAGS = -module -avoid-version ++rot_13_la_LDFLAGS = -module -avoid-version -shared + + rot_13_la_SOURCES = rot-13.c + rot_13_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/index/src/Makefile.am b/xlators/features/index/src/Makefile.am +index 73bb897..5519798 100644 +--- a/xlators/features/index/src/Makefile.am ++++ b/xlators/features/index/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = index.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-index_la_LDFLAGS = -module -avoid-version ++index_la_LDFLAGS = -module -avoid-version -shared + + index_la_SOURCES = index.c + index_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/locks/src/Makefile.am b/xlators/features/locks/src/Makefile.am +index 8908c1f..1a17a0f 100644 +--- a/xlators/features/locks/src/Makefile.am ++++ b/xlators/features/locks/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = locks.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-locks_la_LDFLAGS = -module -avoid-version ++locks_la_LDFLAGS = -module -avoid-version -shared + + locks_la_SOURCES = common.c posix.c entrylk.c inodelk.c reservelk.c \ + clear.c +diff --git a/xlators/features/mac-compat/src/Makefile.am b/xlators/features/mac-compat/src/Makefile.am +index f8567ed..a283eb0 100644 +--- a/xlators/features/mac-compat/src/Makefile.am ++++ b/xlators/features/mac-compat/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = mac-compat.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-mac_compat_la_LDFLAGS = -module -avoid-version ++mac_compat_la_LDFLAGS = -module -avoid-version -shared + + mac_compat_la_SOURCES = mac-compat.c + mac_compat_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/marker/src/Makefile.am b/xlators/features/marker/src/Makefile.am +index a7c6764..477fe0f 100644 +--- a/xlators/features/marker/src/Makefile.am ++++ b/xlators/features/marker/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = marker.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-marker_la_LDFLAGS = -module -avoid-version ++marker_la_LDFLAGS = -module -avoid-version -shared + + marker_la_SOURCES = marker.c marker-quota.c marker-quota-helper.c marker-common.c + marker_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/quiesce/src/Makefile.am b/xlators/features/quiesce/src/Makefile.am +index 15e4662..b3cd9d1 100644 +--- a/xlators/features/quiesce/src/Makefile.am ++++ b/xlators/features/quiesce/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = quiesce.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-quiesce_la_LDFLAGS = -module -avoid-version ++quiesce_la_LDFLAGS = -module -avoid-version -shared + + quiesce_la_SOURCES = quiesce.c + quiesce_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/quota/src/Makefile.am b/xlators/features/quota/src/Makefile.am +index 9546f42..4cfa983 100644 +--- a/xlators/features/quota/src/Makefile.am ++++ b/xlators/features/quota/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = quota.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-quota_la_LDFLAGS = -module -avoid-version ++quota_la_LDFLAGS = -module -avoid-version -shared + + quota_la_SOURCES = quota.c + quota_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/read-only/src/Makefile.am b/xlators/features/read-only/src/Makefile.am +index 4c14621..a3f79fa 100644 +--- a/xlators/features/read-only/src/Makefile.am ++++ b/xlators/features/read-only/src/Makefile.am +@@ -4,12 +4,12 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + + noinst_HEADERS = read-only-common.h + +-read_only_la_LDFLAGS = -module -avoid-version ++read_only_la_LDFLAGS = -module -avoid-version -shared + + read_only_la_SOURCES = read-only.c read-only-common.c + read_only_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-worm_la_LDFLAGS = -module -avoid-version ++worm_la_LDFLAGS = -module -avoid-version -shared + + worm_la_SOURCES = read-only-common.c worm.c + worm_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/mgmt/glusterd/src/Makefile.am b/xlators/mgmt/glusterd/src/Makefile.am +index df15453..d03d653 100644 +--- a/xlators/mgmt/glusterd/src/Makefile.am ++++ b/xlators/mgmt/glusterd/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = glusterd.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/mgmt + glusterd_la_CPPFLAGS = $(AM_CPPFLAGS) "-DFILTERDIR=\"$(libdir)/glusterfs/$(PACKAGE_VERSION)/filter\"" +-glusterd_la_LDFLAGS = -module -avoid-version ++glusterd_la_LDFLAGS = -module -avoid-version -shared + if ENABLE_BD_XLATOR + glusterd_la_LDFLAGS += -llvm2app + endif +diff --git a/xlators/mount/fuse/src/Makefile.am b/xlators/mount/fuse/src/Makefile.am +index 653121d..3f221d8 100644 +--- a/xlators/mount/fuse/src/Makefile.am ++++ b/xlators/mount/fuse/src/Makefile.am +@@ -24,7 +24,7 @@ endif + fuse_la_SOURCES = fuse-helpers.c fuse-resolve.c fuse-bridge.c \ + $(CONTRIBDIR)/fuse-lib/misc.c $(mount_source) + +-fuse_la_LDFLAGS = -module -avoid-version ++fuse_la_LDFLAGS = -module -avoid-version -shared + fuse_la_LIBADD = @GF_FUSE_LDADD@ + + AM_CPPFLAGS = $(GF_CPPFLAGS) \ +diff --git a/xlators/nfs/server/src/Makefile.am b/xlators/nfs/server/src/Makefile.am +index 2795a93..2614822 100644 +--- a/xlators/nfs/server/src/Makefile.am ++++ b/xlators/nfs/server/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = server.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/nfs + nfsrpclibdir = $(top_srcdir)/rpc/rpc-lib/src +-server_la_LDFLAGS = -module -avoid-version ++server_la_LDFLAGS = -module -avoid-version -shared + server_la_SOURCES = nfs.c nfs-common.c nfs-fops.c nfs-inodes.c \ + nfs-generics.c mount3.c nfs3-fh.c nfs3.c nfs3-helpers.c nlm4.c \ + nlmcbk_svc.c mount3udp_svc.c acl3.c +diff --git a/xlators/performance/io-cache/src/Makefile.am b/xlators/performance/io-cache/src/Makefile.am +index 155be99..ba0738c 100644 +--- a/xlators/performance/io-cache/src/Makefile.am ++++ b/xlators/performance/io-cache/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = io-cache.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-io_cache_la_LDFLAGS = -module -avoid-version ++io_cache_la_LDFLAGS = -module -avoid-version -shared + + io_cache_la_SOURCES = io-cache.c page.c ioc-inode.c + io_cache_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/io-threads/src/Makefile.am b/xlators/performance/io-threads/src/Makefile.am +index d63042e..aba1fdb 100644 +--- a/xlators/performance/io-threads/src/Makefile.am ++++ b/xlators/performance/io-threads/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = io-threads.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-io_threads_la_LDFLAGS = -module -avoid-version ++io_threads_la_LDFLAGS = -module -avoid-version -shared + + io_threads_la_SOURCES = io-threads.c + io_threads_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/md-cache/src/Makefile.am b/xlators/performance/md-cache/src/Makefile.am +index 8c9f5a8..4d714fa 100644 +--- a/xlators/performance/md-cache/src/Makefile.am ++++ b/xlators/performance/md-cache/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = md-cache.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-md_cache_la_LDFLAGS = -module -avoid-version ++md_cache_la_LDFLAGS = -module -avoid-version -shared + + md_cache_la_SOURCES = md-cache.c + md_cache_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/open-behind/src/Makefile.am b/xlators/performance/open-behind/src/Makefile.am +index 1252857..568434a 100644 +--- a/xlators/performance/open-behind/src/Makefile.am ++++ b/xlators/performance/open-behind/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = open-behind.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-open_behind_la_LDFLAGS = -module -avoid-version ++open_behind_la_LDFLAGS = -module -avoid-version -shared + + open_behind_la_SOURCES = open-behind.c + open_behind_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/quick-read/src/Makefile.am b/xlators/performance/quick-read/src/Makefile.am +index 4906f40..8d42116 100644 +--- a/xlators/performance/quick-read/src/Makefile.am ++++ b/xlators/performance/quick-read/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = quick-read.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-quick_read_la_LDFLAGS = -module -avoid-version ++quick_read_la_LDFLAGS = -module -avoid-version -shared + + quick_read_la_SOURCES = quick-read.c + quick_read_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/read-ahead/src/Makefile.am b/xlators/performance/read-ahead/src/Makefile.am +index be80ae7..eae0540 100644 +--- a/xlators/performance/read-ahead/src/Makefile.am ++++ b/xlators/performance/read-ahead/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = read-ahead.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-read_ahead_la_LDFLAGS = -module -avoid-version ++read_ahead_la_LDFLAGS = -module -avoid-version -shared + + read_ahead_la_SOURCES = read-ahead.c page.c + read_ahead_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/symlink-cache/src/Makefile.am b/xlators/performance/symlink-cache/src/Makefile.am +index 4091c32..0d600d6 100644 +--- a/xlators/performance/symlink-cache/src/Makefile.am ++++ b/xlators/performance/symlink-cache/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = symlink-cache.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/testing/performance + +-symlink_cache_la_LDFLAGS = -module -avoid-version ++symlink_cache_la_LDFLAGS = -module -avoid-version -shared + + symlink_cache_la_SOURCES = symlink-cache.c + symlink_cache_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/write-behind/src/Makefile.am b/xlators/performance/write-behind/src/Makefile.am +index 6c829d8..746e5c1 100644 +--- a/xlators/performance/write-behind/src/Makefile.am ++++ b/xlators/performance/write-behind/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = write-behind.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-write_behind_la_LDFLAGS = -module -avoid-version ++write_behind_la_LDFLAGS = -module -avoid-version -shared + + write_behind_la_SOURCES = write-behind.c + write_behind_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/protocol/auth/addr/src/Makefile.am b/xlators/protocol/auth/addr/src/Makefile.am +index 426e7c2..fa7234d 100644 +--- a/xlators/protocol/auth/addr/src/Makefile.am ++++ b/xlators/protocol/auth/addr/src/Makefile.am +@@ -1,7 +1,7 @@ + auth_LTLIBRARIES = addr.la + authdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/auth + +-addr_la_LDFLAGS = -module -avoid-version ++addr_la_LDFLAGS = -module -avoid-version -shared + + addr_la_SOURCES = addr.c + addr_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/protocol/auth/login/src/Makefile.am b/xlators/protocol/auth/login/src/Makefile.am +index d84db91..022739d 100644 +--- a/xlators/protocol/auth/login/src/Makefile.am ++++ b/xlators/protocol/auth/login/src/Makefile.am +@@ -1,7 +1,7 @@ + auth_LTLIBRARIES = login.la + authdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/auth + +-login_la_LDFLAGS = -module -avoid-version ++login_la_LDFLAGS = -module -avoid-version -shared + + login_la_SOURCES = login.c + login_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/protocol/client/src/Makefile.am b/xlators/protocol/client/src/Makefile.am +index cf89d42..8f2612c 100644 +--- a/xlators/protocol/client/src/Makefile.am ++++ b/xlators/protocol/client/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = client.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/protocol + +-client_la_LDFLAGS = -module -avoid-version ++client_la_LDFLAGS = -module -avoid-version -shared + + client_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \ + $(top_builddir)/rpc/rpc-lib/src/libgfrpc.la \ +diff --git a/xlators/protocol/server/src/Makefile.am b/xlators/protocol/server/src/Makefile.am +index 25d6706..15a2548 100644 +--- a/xlators/protocol/server/src/Makefile.am ++++ b/xlators/protocol/server/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = server.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/protocol + +-server_la_LDFLAGS = -module -avoid-version ++server_la_LDFLAGS = -module -avoid-version -shared + + server_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \ + $(top_builddir)/rpc/rpc-lib/src/libgfrpc.la \ +diff --git a/xlators/storage/bd_map/src/Makefile.am b/xlators/storage/bd_map/src/Makefile.am +index 91412e9..5c59626 100644 +--- a/xlators/storage/bd_map/src/Makefile.am ++++ b/xlators/storage/bd_map/src/Makefile.am +@@ -3,7 +3,7 @@ if ENABLE_BD_XLATOR + xlator_LTLIBRARIES = bd_map.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/storage + +-bd_map_la_LDFLAGS = -module -avoid-version ++bd_map_la_LDFLAGS = -module -avoid-version -shared + LIBBD = -llvm2app -lrt + bd_map_la_SOURCES = bd_map.c bd_map_help.c + bd_map_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la $(LIBBD) +diff --git a/xlators/storage/posix/src/Makefile.am b/xlators/storage/posix/src/Makefile.am +index 88efcc7..79ca903 100644 +--- a/xlators/storage/posix/src/Makefile.am ++++ b/xlators/storage/posix/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = posix.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/storage + +-posix_la_LDFLAGS = -module -avoid-version ++posix_la_LDFLAGS = -module -avoid-version -shared + + posix_la_SOURCES = posix.c posix-helpers.c posix-handle.c posix-aio.c + posix_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la $(LIBAIO) +diff --git a/xlators/system/posix-acl/src/Makefile.am b/xlators/system/posix-acl/src/Makefile.am +index 11c939f..561c52d 100644 +--- a/xlators/system/posix-acl/src/Makefile.am ++++ b/xlators/system/posix-acl/src/Makefile.am +@@ -1,6 +1,6 @@ + xlator_LTLIBRARIES = posix-acl.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/system +-posix_acl_la_LDFLAGS = -module -avoid-version ++posix_acl_la_LDFLAGS = -module -avoid-version -shared + posix_acl_la_SOURCES = posix-acl.c posix-acl-xattr.c + posix_acl_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-- +1.8.2.1 + diff --git a/sys-cluster/glusterfs/files/glusterfs-3.4.0-nfs-exit-when-all-volumes-are-disabled.patch b/sys-cluster/glusterfs/files/glusterfs-3.4.0-nfs-exit-when-all-volumes-are-disabled.patch new file mode 100644 index 000000000000..5a1bdec89e62 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.4.0-nfs-exit-when-all-volumes-are-disabled.patch @@ -0,0 +1,42 @@ +From fdc83183263e04bee56672e9d9922cc9457146cb Mon Sep 17 00:00:00 2001 +From: Rajesh Amaravathi +Date: Fri, 21 Jun 2013 14:58:23 +0530 +Subject: [PATCH 1/1] nfs: exit when all volumes are disabled + +Instead of triggering 4-5 error logs, when nfs is +disabled for all volumes, exit the process. + +Change-Id: Ib286f143c4f74ba22f502aca0e7dcd0907db6563 +BUG: 976750 +Signed-off-by: Rajesh Amaravathi +Reviewed-on: http://review.gluster.org/5245 +Reviewed-by: Santosh Pradhan +Tested-by: Gluster Build System +Reviewed-by: Vijay Bellur +--- + xlators/nfs/server/src/nfs.c | 9 +++++---- + 1 files changed, 5 insertions(+), 4 deletions(-) + +diff --git a/xlators/nfs/server/src/nfs.c b/xlators/nfs/server/src/nfs.c +index 6cd0594..c3a76c6 100644 +--- a/xlators/nfs/server/src/nfs.c ++++ b/xlators/nfs/server/src/nfs.c +@@ -533,10 +533,11 @@ nfs_init_state (xlator_t *this) + if (!this) + return NULL; + +- if ((!this->children) || (!this->children->xlator)) { +- gf_log (GF_NFS, GF_LOG_ERROR, "nfs must have at least one" +- " child subvolume"); +- return NULL; ++ if (!this->children) { ++ gf_log (GF_NFS, GF_LOG_INFO, ++ "NFS is manually disabled: Exiting"); ++ /* Nothing for nfs process to do, exit cleanly */ ++ kill (getpid (), SIGTERM); + } + + nfs = GF_CALLOC (1, sizeof (*nfs), gf_nfs_mt_nfs_state); +-- +1.7.4.1 + diff --git a/sys-cluster/glusterfs/files/glusterfs-3.4.0-silent_rules.patch b/sys-cluster/glusterfs/files/glusterfs-3.4.0-silent_rules.patch new file mode 100644 index 000000000000..1b79e0d079e4 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.4.0-silent_rules.patch @@ -0,0 +1,23 @@ +--- configure.ac 2013-07-12 19:43:26.000000000 +0200 ++++ configure.ac2 2013-07-25 13:58:48.294091861 +0200 +@@ -10,20 +10,6 @@ + + AM_INIT_AUTOMAKE + +-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]) + + AC_CONFIG_FILES([Makefile diff --git a/sys-cluster/glusterfs/files/glusterfs-3.4.4-cluster-dht-Don-t-do-extra-unref-in-dht-migration-ch.patch b/sys-cluster/glusterfs/files/glusterfs-3.4.4-cluster-dht-Don-t-do-extra-unref-in-dht-migration-ch.patch new file mode 100644 index 000000000000..c26085a9dfe7 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.4.4-cluster-dht-Don-t-do-extra-unref-in-dht-migration-ch.patch @@ -0,0 +1,48 @@ +From 2b789331dc933b186360fc8cbffb06289ee60ee9 Mon Sep 17 00:00:00 2001 +From: Vijay Bellur +Date: Tue, 10 Jun 2014 22:21:28 +0530 +Subject: [PATCH 1/3] cluster/dht: Don't do extra unref in dht-migration checks + +Problem: +syncop_open used to perform a ref in syncop_open_cbk so the extra +unref was needed but now syncop_open_cbk does not take a ref so no +need to do extra unref. + +Fix: +remove the extra fd_unref and let dht_local_wipe do the final unref. + +Change-Id: Ibe8f9a678d456a0c7bff175306068b5cd297ecc4 +BUG: 961615 +Signed-off-by: Pranith Kumar K +Signed-off-by: Vijay Bellur +Reviewed-on: http://review.gluster.org/8029 +Tested-by: Gluster Build System +Tested-by: Joe Julian +Reviewed-by: Kaleb KEITHLEY +--- + xlators/cluster/dht/src/dht-helper.c | 7 ++----- + 1 file changed, 2 insertions(+), 5 deletions(-) + +diff --git a/xlators/cluster/dht/src/dht-helper.c b/xlators/cluster/dht/src/dht-helper.c +index ef29e3f..dd8dc49 100644 +--- a/xlators/cluster/dht/src/dht-helper.c ++++ b/xlators/cluster/dht/src/dht-helper.c +@@ -802,13 +802,10 @@ dht_migration_complete_check_task (void *data) + if (!local->fd) + goto out; + /* once we detect the migration complete, the fd-ctx is no more +- required.. delete the ctx, and do one extra 'fd_unref' for open fd */ ++ required.. delete the ctx */ + ret = fd_ctx_del (local->fd, this, NULL); +- if (!ret) { +- fd_unref (local->fd); +- ret = 0; ++ if (!ret) + goto out; +- } + + /* perform open as root:root. There is window between linkfile + * creation(root:root) and setattr with the correct uid/gid +-- +1.9.2 + diff --git a/sys-cluster/glusterfs/files/glusterfs-3.4.4-fuse-fix-memory-leak-in-fuse_getxattr.patch b/sys-cluster/glusterfs/files/glusterfs-3.4.4-fuse-fix-memory-leak-in-fuse_getxattr.patch new file mode 100644 index 000000000000..316e079322ca --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.4.4-fuse-fix-memory-leak-in-fuse_getxattr.patch @@ -0,0 +1,91 @@ +From 0cf6f0727482b5b8816b5e58cb67ef124eae808e Mon Sep 17 00:00:00 2001 +From: Justin Clift +Date: Tue, 24 Jun 2014 20:57:02 +0100 +Subject: [PATCH] fuse: fix memory leak in fuse_getxattr() + +The fuse_getxattr() function was not freeing fuse_state_t resulting in a +memory leak. As a result, when continuous writes (run dd command in a loop) +were done from a FUSE mount point, the OOM killer killed the client +process (glusterfs). + +Manual backport of: http://review.gluster.org/#/c/5392/, provided +by Martin Svec . + +BUG: 1112844 +Change-Id: Ic723675c53384d48c79ad1b11b21c1b17fb56866 +--- + xlators/mount/fuse/src/fuse-bridge.c | 27 ++++++++++++++------------- + 1 file changed, 14 insertions(+), 13 deletions(-) + +diff --git a/xlators/mount/fuse/src/fuse-bridge.c b/xlators/mount/fuse/src/fuse-bridge.c +index e531970..da5937b 100644 +--- a/xlators/mount/fuse/src/fuse-bridge.c ++++ b/xlators/mount/fuse/src/fuse-bridge.c +@@ -3207,6 +3207,7 @@ fuse_getxattr (xlator_t *this, fuse_in_header_t *finh, void *msg) + fuse_state_t *state = NULL; + struct fuse_private *priv = NULL; + int rv = 0; ++ int op_errno = EINVAL; + char *newkey = NULL; + + priv = this->private; +@@ -3227,26 +3228,23 @@ fuse_getxattr (xlator_t *this, fuse_in_header_t *finh, void *msg) + "%"PRIu64": GETXATTR %s/%"PRIu64" (%s):" + "refusing positioned getxattr", + finh->unique, state->loc.path, finh->nodeid, name); +- send_fuse_err (this, finh, EINVAL); +- FREE (finh); +- return; ++ op_errno = EINVAL; ++ goto err; + } + #endif + + if (!priv->acl) { + if ((strcmp (name, "system.posix_acl_access") == 0) || + (strcmp (name, "system.posix_acl_default") == 0)) { +- send_fuse_err (this, finh, ENOTSUP); +- GF_FREE (finh); +- return; ++ op_errno = ENOTSUP; ++ goto err; + } + } + + if (!priv->selinux) { + if (strncmp (name, "security.", 9) == 0) { +- send_fuse_err (this, finh, ENODATA); +- GF_FREE (finh); +- return; ++ op_errno = ENODATA; ++ goto err; + } + } + +@@ -3254,16 +3252,19 @@ fuse_getxattr (xlator_t *this, fuse_in_header_t *finh, void *msg) + + rv = fuse_flip_xattr_ns (priv, name, &newkey); + if (rv) { +- send_fuse_err (this, finh, ENOMEM); +- free_fuse_state (state); +- goto out; ++ op_errno = ENOMEM; ++ goto err; + } + + state->size = fgxi->size; + state->name = newkey; + + fuse_resolve_and_resume (state, fuse_getxattr_resume); +- out: ++ ++ return; ++ err: ++ send_fuse_err (this, finh, op_errno); ++ free_fuse_state (state); + return; + } + +-- +1.9.2 + diff --git a/sys-cluster/glusterfs/files/glusterfs-3.5.1-Add-libraries-using-LIBADD-instead-of-LDFLAGS.patch b/sys-cluster/glusterfs/files/glusterfs-3.5.1-Add-libraries-using-LIBADD-instead-of-LDFLAGS.patch new file mode 100644 index 000000000000..5c4df0c97025 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.5.1-Add-libraries-using-LIBADD-instead-of-LDFLAGS.patch @@ -0,0 +1,54 @@ +From 8bfe3752c3a0a4db49a879048cdd089da6c45ed0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tiziano=20M=C3=BCller?= +Date: Thu, 26 Jun 2014 19:04:54 +0200 +Subject: [PATCH] Add libraries using LIBADD instead of LDFLAGS + +--- + xlators/encryption/crypt/src/Makefile.am | 6 +++--- + xlators/features/compress/src/Makefile.am | 4 ++-- + 2 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/xlators/encryption/crypt/src/Makefile.am b/xlators/encryption/crypt/src/Makefile.am +index b13f650..d7ebac6 100644 +--- a/xlators/encryption/crypt/src/Makefile.am ++++ b/xlators/encryption/crypt/src/Makefile.am +@@ -3,10 +3,10 @@ if ENABLE_CRYPT_XLATOR + xlator_LTLIBRARIES = crypt.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/encryption + +-crypt_la_LDFLAGS = -module -avoid-version -lssl -lcrypto ++crypt_la_LDFLAGS = -module -avoid-version + + crypt_la_SOURCES = keys.c data.c metadata.c atom.c crypt.c +-crypt_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la ++crypt_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la -lssl -lcrypto + + noinst_HEADERS = crypt-common.h crypt-mem-types.h crypt.h metadata.h + +@@ -21,4 +21,4 @@ else + noinst_DIST = keys.c data.c metadata.c atom.c crypt.c + noinst_HEADERS = crypt-common.h crypt-mem-types.h crypt.h metadata.h + +-endif +\ No newline at end of file ++endif +diff --git a/xlators/features/compress/src/Makefile.am b/xlators/features/compress/src/Makefile.am +index 0bf757c..d3abe03 100644 +--- a/xlators/features/compress/src/Makefile.am ++++ b/xlators/features/compress/src/Makefile.am +@@ -4,10 +4,10 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + + noinst_HEADERS = cdc.h cdc-mem-types.h + +-cdc_la_LDFLAGS = -module -avoid-version $(LIBZ_LIBS) ++cdc_la_LDFLAGS = -module -avoid-version + + cdc_la_SOURCES = cdc.c cdc-helper.c +-cdc_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la ++cdc_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la $(LIBZ_LIBS) + + AM_CPPFLAGS = $(GF_CPPFLAGS) -I$(top_srcdir)/libglusterfs/src -fPIC -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D$(GF_HOST_OS) \ + -shared -nostartfiles $(LIBZ_CFLAGS) +-- +1.9.2 + diff --git a/sys-cluster/glusterfs/files/glusterfs-3.5.1-build-shared-only.patch b/sys-cluster/glusterfs/files/glusterfs-3.5.1-build-shared-only.patch new file mode 100644 index 000000000000..9acf0d7526cd --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-3.5.1-build-shared-only.patch @@ -0,0 +1,576 @@ +diff --git a/rpc/rpc-transport/rdma/src/Makefile.am b/rpc/rpc-transport/rdma/src/Makefile.am +index 2bf7cf2..8e52d70 100644 +--- a/rpc/rpc-transport/rdma/src/Makefile.am ++++ b/rpc/rpc-transport/rdma/src/Makefile.am +@@ -3,7 +3,7 @@ + transport_LTLIBRARIES = rdma.la + transportdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/rpc-transport + +-rdma_la_LDFLAGS = -module -avoid-version ++rdma_la_LDFLAGS = -module -avoid-version -shared + + rdma_la_SOURCES = rdma.c name.c + rdma_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \ +diff --git a/rpc/rpc-transport/socket/src/Makefile.am b/rpc/rpc-transport/socket/src/Makefile.am +index 71e6ed6..b481fe9 100644 +--- a/rpc/rpc-transport/socket/src/Makefile.am ++++ b/rpc/rpc-transport/socket/src/Makefile.am +@@ -3,7 +3,7 @@ noinst_HEADERS = socket.h name.h + rpctransport_LTLIBRARIES = socket.la + rpctransportdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/rpc-transport + +-socket_la_LDFLAGS = -module -avoid-version ++socket_la_LDFLAGS = -module -avoid-version -shared + + socket_la_SOURCES = socket.c name.c + socket_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la -lssl +diff --git a/xlators/cluster/afr/src/Makefile.am b/xlators/cluster/afr/src/Makefile.am +index 35d18a6..959fea8 100644 +--- a/xlators/cluster/afr/src/Makefile.am ++++ b/xlators/cluster/afr/src/Makefile.am +@@ -7,11 +7,11 @@ afr_common_source = afr-dir-read.c afr-dir-write.c afr-inode-read.c \ + afr-self-heal-algorithm.c afr-lk-common.c afr-self-heald.c \ + $(top_builddir)/xlators/lib/src/libxlator.c + +-afr_la_LDFLAGS = -module -avoid-version ++afr_la_LDFLAGS = -module -avoid-version -shared + afr_la_SOURCES = $(afr_common_source) afr.c + afr_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-pump_la_LDFLAGS = -module -avoid-version ++pump_la_LDFLAGS = -module -avoid-version -shared + pump_la_SOURCES = $(afr_common_source) pump.c + pump_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +diff --git a/xlators/cluster/dht/src/Makefile.am b/xlators/cluster/dht/src/Makefile.am +index 174bea8..cab9993 100644 +--- a/xlators/cluster/dht/src/Makefile.am ++++ b/xlators/cluster/dht/src/Makefile.am +@@ -12,13 +12,13 @@ dht_la_SOURCES = $(dht_common_source) dht.c + nufa_la_SOURCES = $(dht_common_source) nufa.c + switch_la_SOURCES = $(dht_common_source) switch.c + +-dht_la_LDFLAGS = -module -avoid-version ++dht_la_LDFLAGS = -module -avoid-version -shared + dht_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-nufa_la_LDFLAGS = -module -avoid-version ++nufa_la_LDFLAGS = -module -avoid-version -shared + nufa_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-switch_la_LDFLAGS = -module -avoid-version ++switch_la_LDFLAGS = -module -avoid-version -shared + switch_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + + noinst_HEADERS = dht-common.h dht-mem-types.h \ +diff --git a/xlators/cluster/stripe/src/Makefile.am b/xlators/cluster/stripe/src/Makefile.am +index 2d15142..6989de9 100644 +--- a/xlators/cluster/stripe/src/Makefile.am ++++ b/xlators/cluster/stripe/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = stripe.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/cluster + +-stripe_la_LDFLAGS = -module -avoid-version ++stripe_la_LDFLAGS = -module -avoid-version -shared + + stripe_la_SOURCES = stripe.c stripe-helpers.c \ + $(top_builddir)/xlators/lib/src/libxlator.c +diff --git a/xlators/debug/error-gen/src/Makefile.am b/xlators/debug/error-gen/src/Makefile.am +index 5075c59..a7681c4 100644 +--- a/xlators/debug/error-gen/src/Makefile.am ++++ b/xlators/debug/error-gen/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = error-gen.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/debug + +-error_gen_la_LDFLAGS = -module -avoid-version ++error_gen_la_LDFLAGS = -module -avoid-version -shared + + error_gen_la_SOURCES = error-gen.c + error_gen_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/debug/io-stats/src/Makefile.am b/xlators/debug/io-stats/src/Makefile.am +index 332d790..bf62017 100644 +--- a/xlators/debug/io-stats/src/Makefile.am ++++ b/xlators/debug/io-stats/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = io-stats.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/debug + +-io_stats_la_LDFLAGS = -module -avoid-version ++io_stats_la_LDFLAGS = -module -avoid-version -shared + + io_stats_la_SOURCES = io-stats.c + io_stats_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/debug/trace/src/Makefile.am b/xlators/debug/trace/src/Makefile.am +index 7b2597b..2030ed4 100644 +--- a/xlators/debug/trace/src/Makefile.am ++++ b/xlators/debug/trace/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = trace.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/debug + +-trace_la_LDFLAGS = -module -avoid-version ++trace_la_LDFLAGS = -module -avoid-version -shared + + trace_la_SOURCES = trace.c + trace_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/encryption/crypt/src/Makefile.am b/xlators/encryption/crypt/src/Makefile.am +index d7ebac6..66ae6f5 100644 +--- a/xlators/encryption/crypt/src/Makefile.am ++++ b/xlators/encryption/crypt/src/Makefile.am +@@ -3,7 +3,7 @@ if ENABLE_CRYPT_XLATOR + xlator_LTLIBRARIES = crypt.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/encryption + +-crypt_la_LDFLAGS = -module -avoid-version ++crypt_la_LDFLAGS = -module -avoid-version -shared + + crypt_la_SOURCES = keys.c data.c metadata.c atom.c crypt.c + crypt_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la -lssl -lcrypto +diff --git a/xlators/encryption/rot-13/src/Makefile.am b/xlators/encryption/rot-13/src/Makefile.am +index 94e8d18..d13894e 100644 +--- a/xlators/encryption/rot-13/src/Makefile.am ++++ b/xlators/encryption/rot-13/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = rot-13.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/encryption + +-rot_13_la_LDFLAGS = -module -avoid-version ++rot_13_la_LDFLAGS = -module -avoid-version -shared + + rot_13_la_SOURCES = rot-13.c + rot_13_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/changelog/src/Makefile.am b/xlators/features/changelog/src/Makefile.am +index 54c21ac..d98f43f 100644 +--- a/xlators/features/changelog/src/Makefile.am ++++ b/xlators/features/changelog/src/Makefile.am +@@ -5,7 +5,7 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + noinst_HEADERS = changelog-helpers.h changelog-mem-types.h changelog-rt.h \ + changelog-misc.h changelog-encoders.h changelog-notifier.h + +-changelog_la_LDFLAGS = -module -avoid-version ++changelog_la_LDFLAGS = -module -avoid-version -shared + + changelog_la_SOURCES = changelog.c changelog-rt.c changelog-helpers.c \ + changelog-encoders.c changelog-notifier.c +diff --git a/xlators/features/compress/src/Makefile.am b/xlators/features/compress/src/Makefile.am +index d3abe03..659cd49 100644 +--- a/xlators/features/compress/src/Makefile.am ++++ b/xlators/features/compress/src/Makefile.am +@@ -4,7 +4,7 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + + noinst_HEADERS = cdc.h cdc-mem-types.h + +-cdc_la_LDFLAGS = -module -avoid-version ++cdc_la_LDFLAGS = -module -avoid-version -shared + + cdc_la_SOURCES = cdc.c cdc-helper.c + cdc_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la $(LIBZ_LIBS) +diff --git a/xlators/features/gfid-access/src/Makefile.am b/xlators/features/gfid-access/src/Makefile.am +index db53aff..4eeaa4f 100644 +--- a/xlators/features/gfid-access/src/Makefile.am ++++ b/xlators/features/gfid-access/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = gfid-access.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-gfid_access_la_LDFLAGS = -module -avoid-version ++gfid_access_la_LDFLAGS = -module -avoid-version -shared + + gfid_access_la_SOURCES = gfid-access.c + gfid_access_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/index/src/Makefile.am b/xlators/features/index/src/Makefile.am +index 73bb897..5519798 100644 +--- a/xlators/features/index/src/Makefile.am ++++ b/xlators/features/index/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = index.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-index_la_LDFLAGS = -module -avoid-version ++index_la_LDFLAGS = -module -avoid-version -shared + + index_la_SOURCES = index.c + index_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/locks/src/Makefile.am b/xlators/features/locks/src/Makefile.am +index 0f79731..eda6a05 100644 +--- a/xlators/features/locks/src/Makefile.am ++++ b/xlators/features/locks/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = locks.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-locks_la_LDFLAGS = -module -avoid-version ++locks_la_LDFLAGS = -module -avoid-version -shared + + locks_la_SOURCES = common.c posix.c entrylk.c inodelk.c reservelk.c \ + clear.c +diff --git a/xlators/features/mac-compat/src/Makefile.am b/xlators/features/mac-compat/src/Makefile.am +index f8567ed..a283eb0 100644 +--- a/xlators/features/mac-compat/src/Makefile.am ++++ b/xlators/features/mac-compat/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = mac-compat.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-mac_compat_la_LDFLAGS = -module -avoid-version ++mac_compat_la_LDFLAGS = -module -avoid-version -shared + + mac_compat_la_SOURCES = mac-compat.c + mac_compat_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/marker/src/Makefile.am b/xlators/features/marker/src/Makefile.am +index a7c6764..477fe0f 100644 +--- a/xlators/features/marker/src/Makefile.am ++++ b/xlators/features/marker/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = marker.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-marker_la_LDFLAGS = -module -avoid-version ++marker_la_LDFLAGS = -module -avoid-version -shared + + marker_la_SOURCES = marker.c marker-quota.c marker-quota-helper.c marker-common.c + marker_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/protect/src/Makefile.am b/xlators/features/protect/src/Makefile.am +index 968e88c..84ceec2 100644 +--- a/xlators/features/protect/src/Makefile.am ++++ b/xlators/features/protect/src/Makefile.am +@@ -2,15 +2,15 @@ xlator_LTLIBRARIES = prot_dht.la prot_client.la prot_server.la + + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-prot_dht_la_LDFLAGS = -module -avoid-version ++prot_dht_la_LDFLAGS = -module -avoid-version -shared + prot_dht_la_SOURCES = prot_dht.c + prot_dht_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-prot_client_la_LDFLAGS = -module -avoid-version ++prot_client_la_LDFLAGS = -module -avoid-version -shared + prot_client_la_SOURCES = prot_client.c + prot_client_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-prot_server_la_LDFLAGS = -module -avoid-version ++prot_server_la_LDFLAGS = -module -avoid-version -shared + prot_server_la_SOURCES = prot_server.c + prot_server_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +diff --git a/xlators/features/qemu-block/src/Makefile.am b/xlators/features/qemu-block/src/Makefile.am +index 08a7b62..30639e0 100644 +--- a/xlators/features/qemu-block/src/Makefile.am ++++ b/xlators/features/qemu-block/src/Makefile.am +@@ -2,7 +2,7 @@ if ENABLE_QEMU_BLOCK + xlator_LTLIBRARIES = qemu-block.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-qemu_block_la_LDFLAGS = -module -avoid-version ++qemu_block_la_LDFLAGS = -module -avoid-version -shared + qemu_block_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la $(GLIB_LIBS) -lz -lrt + + qemu_block_la_SOURCES_qemu = \ +diff --git a/xlators/features/quiesce/src/Makefile.am b/xlators/features/quiesce/src/Makefile.am +index 15e4662..b3cd9d1 100644 +--- a/xlators/features/quiesce/src/Makefile.am ++++ b/xlators/features/quiesce/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = quiesce.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-quiesce_la_LDFLAGS = -module -avoid-version ++quiesce_la_LDFLAGS = -module -avoid-version -shared + + quiesce_la_SOURCES = quiesce.c + quiesce_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/quota/src/Makefile.am b/xlators/features/quota/src/Makefile.am +index 7165adc..06905f3 100644 +--- a/xlators/features/quota/src/Makefile.am ++++ b/xlators/features/quota/src/Makefile.am +@@ -1,8 +1,8 @@ + xlator_LTLIBRARIES = quota.la quotad.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + +-quota_la_LDFLAGS = -module -avoid-version +-quotad_la_LDFLAGS = -module -avoid-version ++quota_la_LDFLAGS = -module -avoid-version -shared ++quotad_la_LDFLAGS = -module -avoid-version -shared + + quota_la_SOURCES = quota.c quota-enforcer-client.c + quota_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/features/read-only/src/Makefile.am b/xlators/features/read-only/src/Makefile.am +index 4c14621..a3f79fa 100644 +--- a/xlators/features/read-only/src/Makefile.am ++++ b/xlators/features/read-only/src/Makefile.am +@@ -4,12 +4,12 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features + + noinst_HEADERS = read-only-common.h + +-read_only_la_LDFLAGS = -module -avoid-version ++read_only_la_LDFLAGS = -module -avoid-version -shared + + read_only_la_SOURCES = read-only.c read-only-common.c + read_only_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + +-worm_la_LDFLAGS = -module -avoid-version ++worm_la_LDFLAGS = -module -avoid-version -shared + + worm_la_SOURCES = read-only-common.c worm.c + worm_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/mgmt/glusterd/src/Makefile.am b/xlators/mgmt/glusterd/src/Makefile.am +index a6f49ae..b071280 100644 +--- a/xlators/mgmt/glusterd/src/Makefile.am ++++ b/xlators/mgmt/glusterd/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = glusterd.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/mgmt + glusterd_la_CPPFLAGS = $(AM_CPPFLAGS) "-DFILTERDIR=\"$(libdir)/glusterfs/$(PACKAGE_VERSION)/filter\"" +-glusterd_la_LDFLAGS = -module -avoid-version ++glusterd_la_LDFLAGS = -module -avoid-version -shared + if ENABLE_BD_XLATOR + glusterd_la_LDFLAGS += -llvm2app + endif +diff --git a/xlators/mount/fuse/src/Makefile.am b/xlators/mount/fuse/src/Makefile.am +index 653121d..3f221d8 100644 +--- a/xlators/mount/fuse/src/Makefile.am ++++ b/xlators/mount/fuse/src/Makefile.am +@@ -24,7 +24,7 @@ endif + fuse_la_SOURCES = fuse-helpers.c fuse-resolve.c fuse-bridge.c \ + $(CONTRIBDIR)/fuse-lib/misc.c $(mount_source) + +-fuse_la_LDFLAGS = -module -avoid-version ++fuse_la_LDFLAGS = -module -avoid-version -shared + fuse_la_LIBADD = @GF_FUSE_LDADD@ + + AM_CPPFLAGS = $(GF_CPPFLAGS) \ +diff --git a/xlators/nfs/server/src/Makefile.am b/xlators/nfs/server/src/Makefile.am +index 62fbf65..1995f67 100644 +--- a/xlators/nfs/server/src/Makefile.am ++++ b/xlators/nfs/server/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = server.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/nfs + nfsrpclibdir = $(top_srcdir)/rpc/rpc-lib/src +-server_la_LDFLAGS = -module -avoid-version ++server_la_LDFLAGS = -module -avoid-version -shared + server_la_SOURCES = nfs.c nfs-common.c nfs-fops.c nfs-inodes.c \ + nfs-generics.c mount3.c nfs3-fh.c nfs3.c nfs3-helpers.c nlm4.c \ + nlmcbk_svc.c mount3udp_svc.c acl3.c +diff --git a/xlators/performance/io-cache/src/Makefile.am b/xlators/performance/io-cache/src/Makefile.am +index 155be99..ba0738c 100644 +--- a/xlators/performance/io-cache/src/Makefile.am ++++ b/xlators/performance/io-cache/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = io-cache.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-io_cache_la_LDFLAGS = -module -avoid-version ++io_cache_la_LDFLAGS = -module -avoid-version -shared + + io_cache_la_SOURCES = io-cache.c page.c ioc-inode.c + io_cache_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/io-threads/src/Makefile.am b/xlators/performance/io-threads/src/Makefile.am +index d63042e..aba1fdb 100644 +--- a/xlators/performance/io-threads/src/Makefile.am ++++ b/xlators/performance/io-threads/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = io-threads.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-io_threads_la_LDFLAGS = -module -avoid-version ++io_threads_la_LDFLAGS = -module -avoid-version -shared + + io_threads_la_SOURCES = io-threads.c + io_threads_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/md-cache/src/Makefile.am b/xlators/performance/md-cache/src/Makefile.am +index 8c9f5a8..4d714fa 100644 +--- a/xlators/performance/md-cache/src/Makefile.am ++++ b/xlators/performance/md-cache/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = md-cache.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-md_cache_la_LDFLAGS = -module -avoid-version ++md_cache_la_LDFLAGS = -module -avoid-version -shared + + md_cache_la_SOURCES = md-cache.c + md_cache_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/open-behind/src/Makefile.am b/xlators/performance/open-behind/src/Makefile.am +index 1252857..568434a 100644 +--- a/xlators/performance/open-behind/src/Makefile.am ++++ b/xlators/performance/open-behind/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = open-behind.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-open_behind_la_LDFLAGS = -module -avoid-version ++open_behind_la_LDFLAGS = -module -avoid-version -shared + + open_behind_la_SOURCES = open-behind.c + open_behind_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/quick-read/src/Makefile.am b/xlators/performance/quick-read/src/Makefile.am +index 4906f40..8d42116 100644 +--- a/xlators/performance/quick-read/src/Makefile.am ++++ b/xlators/performance/quick-read/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = quick-read.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-quick_read_la_LDFLAGS = -module -avoid-version ++quick_read_la_LDFLAGS = -module -avoid-version -shared + + quick_read_la_SOURCES = quick-read.c + quick_read_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/read-ahead/src/Makefile.am b/xlators/performance/read-ahead/src/Makefile.am +index be80ae7..eae0540 100644 +--- a/xlators/performance/read-ahead/src/Makefile.am ++++ b/xlators/performance/read-ahead/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = read-ahead.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-read_ahead_la_LDFLAGS = -module -avoid-version ++read_ahead_la_LDFLAGS = -module -avoid-version -shared + + read_ahead_la_SOURCES = read-ahead.c page.c + read_ahead_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/readdir-ahead/src/Makefile.am b/xlators/performance/readdir-ahead/src/Makefile.am +index 539d6ed..020b670 100644 +--- a/xlators/performance/readdir-ahead/src/Makefile.am ++++ b/xlators/performance/readdir-ahead/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = readdir-ahead.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-readdir_ahead_la_LDFLAGS = -module -avoid-version ++readdir_ahead_la_LDFLAGS = -module -avoid-version -shared + + readdir_ahead_la_SOURCES = readdir-ahead.c + readdir_ahead_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/symlink-cache/src/Makefile.am b/xlators/performance/symlink-cache/src/Makefile.am +index 4091c32..0d600d6 100644 +--- a/xlators/performance/symlink-cache/src/Makefile.am ++++ b/xlators/performance/symlink-cache/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = symlink-cache.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/testing/performance + +-symlink_cache_la_LDFLAGS = -module -avoid-version ++symlink_cache_la_LDFLAGS = -module -avoid-version -shared + + symlink_cache_la_SOURCES = symlink-cache.c + symlink_cache_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/performance/write-behind/src/Makefile.am b/xlators/performance/write-behind/src/Makefile.am +index 6c829d8..746e5c1 100644 +--- a/xlators/performance/write-behind/src/Makefile.am ++++ b/xlators/performance/write-behind/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = write-behind.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance + +-write_behind_la_LDFLAGS = -module -avoid-version ++write_behind_la_LDFLAGS = -module -avoid-version -shared + + write_behind_la_SOURCES = write-behind.c + write_behind_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/playground/template/src/Makefile.am b/xlators/playground/template/src/Makefile.am +index 21f1c5f..3161bc8 100644 +--- a/xlators/playground/template/src/Makefile.am ++++ b/xlators/playground/template/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = template.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/testing/features + +-template_la_LDFLAGS = -module -avoid-version ++template_la_LDFLAGS = -module -avoid-version -shared + + template_la_SOURCES = template.c + template_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/protocol/auth/addr/src/Makefile.am b/xlators/protocol/auth/addr/src/Makefile.am +index 426e7c2..fa7234d 100644 +--- a/xlators/protocol/auth/addr/src/Makefile.am ++++ b/xlators/protocol/auth/addr/src/Makefile.am +@@ -1,7 +1,7 @@ + auth_LTLIBRARIES = addr.la + authdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/auth + +-addr_la_LDFLAGS = -module -avoid-version ++addr_la_LDFLAGS = -module -avoid-version -shared + + addr_la_SOURCES = addr.c + addr_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/protocol/auth/login/src/Makefile.am b/xlators/protocol/auth/login/src/Makefile.am +index d84db91..022739d 100644 +--- a/xlators/protocol/auth/login/src/Makefile.am ++++ b/xlators/protocol/auth/login/src/Makefile.am +@@ -1,7 +1,7 @@ + auth_LTLIBRARIES = login.la + authdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/auth + +-login_la_LDFLAGS = -module -avoid-version ++login_la_LDFLAGS = -module -avoid-version -shared + + login_la_SOURCES = login.c + login_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la +diff --git a/xlators/protocol/client/src/Makefile.am b/xlators/protocol/client/src/Makefile.am +index cf89d42..8f2612c 100644 +--- a/xlators/protocol/client/src/Makefile.am ++++ b/xlators/protocol/client/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = client.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/protocol + +-client_la_LDFLAGS = -module -avoid-version ++client_la_LDFLAGS = -module -avoid-version -shared + + client_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \ + $(top_builddir)/rpc/rpc-lib/src/libgfrpc.la \ +diff --git a/xlators/protocol/server/src/Makefile.am b/xlators/protocol/server/src/Makefile.am +index 6a18bf0..9a0393f 100644 +--- a/xlators/protocol/server/src/Makefile.am ++++ b/xlators/protocol/server/src/Makefile.am +@@ -1,7 +1,7 @@ + xlator_LTLIBRARIES = server.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/protocol + +-server_la_LDFLAGS = -module -avoid-version ++server_la_LDFLAGS = -module -avoid-version -shared + + server_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \ + $(top_builddir)/rpc/rpc-lib/src/libgfrpc.la \ +diff --git a/xlators/storage/bd/src/Makefile.am b/xlators/storage/bd/src/Makefile.am +index 3d93f74..589185d 100644 +--- a/xlators/storage/bd/src/Makefile.am ++++ b/xlators/storage/bd/src/Makefile.am +@@ -2,7 +2,7 @@ if ENABLE_BD_XLATOR + xlator_LTLIBRARIES = bd.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/storage + +-bd_la_LDFLAGS = -module -avoid-version ++bd_la_LDFLAGS = -module -avoid-version -shared + LIBBD = -llvm2app -lrt + bd_la_SOURCES = bd.c bd-helper.c bd-aio.c + bd_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la $(LIBBD) $(LIBAIO) +diff --git a/xlators/storage/posix/src/Makefile.am b/xlators/storage/posix/src/Makefile.am +index 88efcc7..79ca903 100644 +--- a/xlators/storage/posix/src/Makefile.am ++++ b/xlators/storage/posix/src/Makefile.am +@@ -2,7 +2,7 @@ + xlator_LTLIBRARIES = posix.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/storage + +-posix_la_LDFLAGS = -module -avoid-version ++posix_la_LDFLAGS = -module -avoid-version -shared + + posix_la_SOURCES = posix.c posix-helpers.c posix-handle.c posix-aio.c + posix_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la $(LIBAIO) +diff --git a/xlators/system/posix-acl/src/Makefile.am b/xlators/system/posix-acl/src/Makefile.am +index 11c939f..561c52d 100644 +--- a/xlators/system/posix-acl/src/Makefile.am ++++ b/xlators/system/posix-acl/src/Makefile.am +@@ -1,6 +1,6 @@ + xlator_LTLIBRARIES = posix-acl.la + xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/system +-posix_acl_la_LDFLAGS = -module -avoid-version ++posix_acl_la_LDFLAGS = -module -avoid-version -shared + posix_acl_la_SOURCES = posix-acl.c posix-acl-xattr.c + posix_acl_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la + diff --git a/sys-cluster/glusterfs/files/glusterfs-docdir.patch b/sys-cluster/glusterfs/files/glusterfs-docdir.patch new file mode 100644 index 000000000000..5e26f637b22a --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-docdir.patch @@ -0,0 +1,51 @@ +From 6a17bb8523c4c7810bf7797371df22cfb259f7a7 Mon Sep 17 00:00:00 2001 +From: MATSUU Takuto +Date: Sat, 16 May 2009 07:01:53 +0900 +Subject: [PATCH] Use the standard autoconf $docdir variable. + +--- + doc/examples/Makefile.am | 1 - + extras/Makefile.am | 3 +-- + extras/benchmarking/Makefile.am | 4 +--- + 3 files changed, 2 insertions(+), 6 deletions(-) + +diff --git a/doc/examples/Makefile.am b/doc/examples/Makefile.am +index b4c93f4..5296d83 100644 +--- a/doc/examples/Makefile.am ++++ b/doc/examples/Makefile.am +@@ -1,7 +1,6 @@ + EXTRA = README unify.vol replicate.vol stripe.vol protocol-client.vol protocol-server.vol posix-locks.vol trash.vol write-behind.vol io-threads.vol io-cache.vol read-ahead.vol filter.vol trace.vol + EXTRA_DIST = $(EXTRA) + +-docdir = $(datadir)/doc/$(PACKAGE_NAME) + Examplesdir = $(docdir)/examples + Examples_DATA = $(EXTRA) + +diff --git a/extras/Makefile.am b/extras/Makefile.am +index 9be3973..ea0b33d 100644 +--- a/extras/Makefile.am ++++ b/extras/Makefile.am +@@ -1,6 +1,5 @@ + +-docdir = $(datadir)/doc/glusterfs/ +-EditorModedir = $(docdir)/ ++EditorModedir = $(docdir) + EditorMode_DATA = glusterfs-mode.el glusterfs.vim + + SUBDIRS = init.d benchmarking +diff --git a/extras/benchmarking/Makefile.am b/extras/benchmarking/Makefile.am +index 04cc061..bfcc592 100644 +--- a/extras/benchmarking/Makefile.am ++++ b/extras/benchmarking/Makefile.am +@@ -1,7 +1,5 @@ + +-docdir = $(datadir)/doc/$(PACKAGE_NAME)/benchmarking +- +-benchmarkingdir = $(docdir) ++benchmarkingdir = $(docdir)/benchmarking + + benchmarking_DATA = rdd.c glfs-bm.c README launch-script.sh local-script.sh + +-- +1.6.3 + diff --git a/sys-cluster/glusterfs/files/glusterfs-r1.initd b/sys-cluster/glusterfs/files/glusterfs-r1.initd new file mode 100644 index 000000000000..0a974a8eae34 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-r1.initd @@ -0,0 +1,122 @@ +#!/sbin/runscript +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +if [[ "${SVCNAME}" != "glusterfs" ]] +then + GLUSTERFS_NAME="${SVCNAME#glusterfs.}" +else + GLUSTERFS_NAME="glusterfs" +fi + +GLUSTERFS_PIDFILE="/var/run/${SVCNAME}.pid" + +eval 'GLUSTERFS_LOGFILE="${'${GLUSTERFS_NAME}'_log:-/var/log/glusterfs/'${GLUSTERFS_NAME}'.log}"' +eval 'GLUSTERFS_VOLFILE="${'${GLUSTERFS_NAME}'_vol:-/etc/glusterfs/'${GLUSTERFS_NAME}'.vol}"' +eval 'GLUSTERFS_SERVER="${'${GLUSTERFS_NAME}'_server}"' +eval 'GLUSTERFS_PORT="${'${GLUSTERFS_NAME}'_port:-6996}"' +eval 'GLUSTERFS_TRANSPORT="${'${GLUSTERFS_NAME}'_transport:-socket}"' +eval 'GLUSTERFS_OPTS="${'${GLUSTERFS_NAME}'_opts}"' +eval 'GLUSTERFS_MOUNTPOINT="${'${GLUSTERFS_NAME}'_mountpoint}"' + +depend() { + need net + [[ -n "${GLUSTERFS_MOUNTPOINT}" ]] && need fuse + use dns + before netmount + after firewall ntp-client ntpd +} + +checkconfig() { + if [[ -z "${GLUSTERFS_NAME}" ]] + then + eerror "The service name is not properly formatted." + return 1 + fi + + if [[ -z "${GLUSTERFS_SERVER}" ]] + then + if [[ -z "${GLUSTERFS_VOLFILE}" ]] + then + eerror "No GlusterFS volume file source has been defined. Edit /etc/conf.d/glusterfs" + eerror "and configure a volume file source for ${SVCNAME}." + return 1 + else + if [[ ! -f "${GLUSTERFS_VOLFILE}" ]] + then + eerror "Cannot find volume file: ${GLUSTERFS_VOLFILE}" + return 1 + fi + fi + fi + + if [[ -n "${GLUSTERFS_MOUNTPOINT}" && ! -d "${GLUSTERFS_MOUNTPOINT}" ]] + then + eerror "The mountpoint ${GLUSTERFS_MOUNTPOINT} does not exist." + return 1 + fi +} + +start() { + local status daemon + + checkconfig || return 1 + + ebegin "Starting GlusterFS (${SVCNAME})" + eindent + + if [[ -z "${GLUSTERFS_MOUNTPOINT}" ]] + then + einfo "Starting in server mode ..." + daemon="glusterfsd" + else + einfo "Starting in client mode. Mounting filesystem ..." + daemon="glusterfs" + fi + + if [[ -n "${GLUSTERFS_SERVER}" ]] + then + einfo "Using server supplied volume file" + start-stop-daemon --start --pidfile ${GLUSTERFS_PIDFILE} \ + --exec /usr/sbin/${daemon} -- \ + --pid-file=${GLUSTERFS_PIDFILE} \ + --log-file=${GLUSTERFS_LOGFILE} \ + --volfile-server=${GLUSTERFS_SERVER} \ + --volfile-server-port=${GLUSTERFS_PORT} \ + --volfile-server-transport=${GLUSTERFS_TRANSPORT} \ + ${GLUSTERFS_OPTS} ${GLUSTERFS_MOUNTPOINT} + status="$?" + else + einfo "Using local volume file" + start-stop-daemon --start --pidfile ${GLUSTERFS_PIDFILE} \ + --exec /usr/sbin/${daemon} -- \ + --pid-file=${GLUSTERFS_PIDFILE} \ + --log-file=${GLUSTERFS_LOGFILE} \ + --volfile=${GLUSTERFS_VOLFILE} \ + ${GLUSTERFS_OPTS} ${GLUSTERFS_MOUNTPOINT} + status="$?" + fi + + eoutdent + eend ${status} +} + +stop() { + local status + + ebegin "Stopping GlusterFS (${SVCNAME})" + eindent + if [[ -z "${GLUSTERFS_MOUNTPOINT}" ]] + then + einfo "Stopping server process ..." + start-stop-daemon --stop --pidfile ${GLUSTERFS_PIDFILE} + status="$?" + else + einfo "Unmounting ${GLUSTERFS_MOUNTPOINT} ..." + umount "${GLUSTERFS_MOUNTPOINT}" + status="$?" + fi + eoutdent + eend ${status} +} diff --git a/sys-cluster/glusterfs/files/glusterfs.confd b/sys-cluster/glusterfs/files/glusterfs.confd new file mode 100644 index 000000000000..257d0a887cff --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs.confd @@ -0,0 +1,6 @@ +#glusterfsd_mountpoint="" +#glusterfsd_log="" +#glusterfsd_vol="" +#glusterfsd_port="" +#glusterfsd_transport="" +#glusterfsd_opts="" diff --git a/sys-cluster/glusterfs/files/glusterfs.initd b/sys-cluster/glusterfs/files/glusterfs.initd new file mode 100644 index 000000000000..7f8759af594d --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs.initd @@ -0,0 +1,120 @@ +#!/sbin/runscript +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +if [[ "${SVCNAME}" != "glusterfs" ]] +then + GLUSTERFS_NAME="${SVCNAME#glusterfs.}" +else + GLUSTERFS_NAME="glusterfs" +fi + +GLUSTERFS_PIDFILE="/var/run/${SVCNAME}.pid" + +eval 'GLUSTERFS_LOGFILE="${'${GLUSTERFS_NAME}'_log:-/var/log/glusterfs/'${GLUSTERFS_NAME}'.log}"' +eval 'GLUSTERFS_VOLFILE="${'${GLUSTERFS_NAME}'_vol:-/etc/glusterfs/'${GLUSTERFS_NAME}'.vol}"' +eval 'GLUSTERFS_SERVER="${'${GLUSTERFS_NAME}'_server}"' +eval 'GLUSTERFS_PORT="${'${GLUSTERFS_NAME}'_port:-6996}"' +eval 'GLUSTERFS_TRANSPORT="${'${GLUSTERFS_NAME}'_transport:-socket}"' +eval 'GLUSTERFS_OPTS="${'${GLUSTERFS_NAME}'_opts}"' +eval 'GLUSTERFS_MOUNTPOINT="${'${GLUSTERFS_NAME}'_mountpoint}"' + +depend() { + need net + [[ -n "${GLUSTERFS_MOUNTPOINT}" ]] && need fuse + use dns + before netmount + after firewall ntp-client ntpd +} + +checkconfig() { + if [[ -z "${GLUSTERFS_NAME}" ]] + then + eerror "The service name is not properly formatted." + return 1 + fi + + if [[ -z "${GLUSTERFS_SERVER}" ]] + then + if [[ -z "${GLUSTERFS_VOLFILE}" ]] + then + eerror "No GlusterFS volume file source has been defined. Edit /etc/conf.d/glusterfs" + eerror "and configure a volume file source for ${SVCNAME}." + return 1 + else + if [[ ! -f "${GLUSTERFS_VOLFILE}" ]] + then + eerror "Cannot find volume file: ${GLUSTERFS_VOLFILE}" + return 1 + fi + fi + fi + + if [[ -n "${GLUSTERFS_MOUNTPOINT}" && ! -d "${GLUSTERFS_MOUNTPOINT}" ]] + then + eerror "The mountpoint ${GLUSTERFS_MOUNTPOINT} does not exist." + return 1 + fi +} + +start() { + local status + + checkconfig || return 1 + + ebegin "Starting GlusterFS (${SVCNAME})" + eindent + + if [[ -z "${GLUSTERFS_MOUNTPOINT}" ]] + then + einfo "Starting in server mode ..." + else + einfo "Starting in client mode. Mounting filesystem ..." + fi + + if [[ -n "${GLUSTERFS_SERVER}" ]] + then + einfo "Using server supplied volume file" + start-stop-daemon --start --pidfile ${GLUSTERFS_PIDFILE} \ + --exec /usr/sbin/glusterfsd -- \ + --pid-file=${GLUSTERFS_PIDFILE} \ + --log-file=${GLUSTERFS_LOGFILE} \ + --volfile-server=${GLUSTERFS_SERVER} \ + --volfile-server-port=${GLUSTERFS_PORT} \ + --volfile-server-transport=${GLUSTERFS_TRANSPORT} \ + ${GLUSTERFS_OPTS} ${GLUSTERFS_MOUNTPOINT} + status="$?" + else + einfo "Using local volume file" + start-stop-daemon --start --pidfile ${GLUSTERFS_PIDFILE} \ + --exec /usr/sbin/glusterfsd -- \ + --pid-file=${GLUSTERFS_PIDFILE} \ + --log-file=${GLUSTERFS_LOGFILE} \ + --volfile=${GLUSTERFS_VOLFILE} \ + ${GLUSTERFS_OPTS} ${GLUSTERFS_MOUNTPOINT} + status="$?" + fi + + eoutdent + eend ${status} +} + +stop() { + local status + + ebegin "Stopping GlusterFS (${SVCNAME})" + eindent + if [[ -z "${GLUSTERFS_MOUNTPOINT}" ]] + then + einfo "Stopping server process ..." + start-stop-daemon --stop --pidfile ${GLUSTERFS_PIDFILE} + status="$?" + else + einfo "Unmounting ${GLUSTERFS_MOUNTPOINT} ..." + umount "${GLUSTERFS_MOUNTPOINT}" + status="$?" + fi + eoutdent + eend ${status} +} diff --git a/sys-cluster/glusterfs/files/glusterfs.logrotate b/sys-cluster/glusterfs/files/glusterfs.logrotate new file mode 100644 index 000000000000..07ae7b9e54dc --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs.logrotate @@ -0,0 +1,34 @@ +# Rotate client logs +/var/log/glusterfs/*.log { + weekly + rotate 52 + missingok + + # compress the logs, but from the .2 onwards + compress + delaycompress + notifempty + + sharedscripts + postrotate + /usr/bin/killall -HUP glusterfs > /dev/null 2>&1 || true + /usr/bin/killall -HUP glusterd > /dev/null 2>&1 || true + endscript +} + +# Rotate server logs +/var/log/glusterfs/bricks/*.log { + weekly + rotate 52 + missingok + + # compress the logs, but from the .2 onwards + compress + delaycompress + notifempty + + sharedscripts + postrotate + /usr/bin/killall -HUP glusterfsd > /dev/null 2>&1 || true + endscript +} diff --git a/sys-cluster/glusterfs/files/glusterfs.vim b/sys-cluster/glusterfs/files/glusterfs.vim new file mode 100644 index 000000000000..bbb9cb1efa97 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs.vim @@ -0,0 +1,8 @@ +if &compatible || v:version < 603 + finish +endif + + +" GlusterFS Volume files +au BufNewFile,BufRead *.vol + \ set filetype=glusterfs diff --git a/sys-cluster/glusterfs/glusterfs-3.1.2.ebuild b/sys-cluster/glusterfs/glusterfs-3.1.2.ebuild new file mode 100644 index 000000000000..b21ad7a52608 --- /dev/null +++ b/sys-cluster/glusterfs/glusterfs-3.1.2.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" + +inherit autotools elisp-common eutils multilib versionator + +DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" +HOMEPAGE="http://www.gluster.org/" +SRC_URI="http://ftp.gluster.com/pub/gluster/${PN}/$(get_version_component_range '1-2')/${PV}/${P}.tar.gz" + +LICENSE="AGPL-3" +SLOT="0" +KEYWORDS="amd64 ~ppc ~ppc64 x86" +IUSE="emacs extras +fuse infiniband static-libs vim-syntax" + +RDEPEND="emacs? ( virtual/emacs ) + fuse? ( >=sys-fs/fuse-2.7.0 ) + infiniband? ( sys-infiniband/libibverbs )" +DEPEND="${RDEPEND} + virtual/pkgconfig + sys-devel/bison + sys-devel/flex" + +SITEFILE="50${PN}-mode-gentoo.el" + +src_prepare() { + epatch "${FILESDIR}/${PN}-3.1.0-parallel-build.patch" \ + "${FILESDIR}/${PN}-docdir.patch" \ + "${FILESDIR}/glusterd-workdir.patch" + sed -i -e "s/ -ggdb3//g" argp-standalone/configure.ac || die + eautoreconf +} + +src_configure() { + econf \ + $(use_enable fuse fuse-client) \ + $(use_enable infiniband ibverbs) \ + $(use_enable static-libs static) \ + --disable-bdb \ + --docdir=/usr/share/doc/${PF} \ + --localstatedir=/var +} + +src_compile() { + emake || die + if use emacs ; then + elisp-compile extras/glusterfs-mode.el || die + fi +} + +src_install() { + emake DESTDIR="${D}" install || die + + if use emacs ; then + elisp-install ${PN} extras/glusterfs-mode.el* || die + elisp-site-file-install "${FILESDIR}/${SITEFILE}" + fi + + if use vim-syntax ; then + insinto /usr/share/vim/vimfiles/ftdetect; doins "${FILESDIR}/glusterfs.vim" || die + insinto /usr/share/vim/vimfiles/syntax; doins extras/glusterfs.vim || die + fi + + if use extras ; then + newbin extras/volgen/glusterfs-volgen glusterfs-volgen || die + newbin extras/backend-xattr-sanitize.sh glusterfs-backend-xattr-sanitize || die + newbin extras/migrate-unify-to-distribute.sh glusterfs-migrate-unify-to-distribute || die + fi + + dodoc AUTHORS ChangeLog NEWS README THANKS || die + + newinitd "${FILESDIR}/${PN}.initd" glusterfsd || die + newinitd "${FILESDIR}/glusterd.initd" glusterd || die + newconfd "${FILESDIR}/${PN}.confd" glusterfsd || die + + keepdir /var/log/${PN} || die + keepdir /var/lib/glusterd || 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" + elog + 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." + elog + 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" + elog + elog "For more information on how to mount exported GlusterFS filesystems visit:" + elog "http://www.gluster.org/docs/index.php/Mounting_a_GlusterFS_Volume" + elog + elog "If you are upgrading from glusterfs 3.0.x please read:" + elog "http://www.gluster.com/community/documentation/index.php/Gluster_3.0_to_3.1_Upgrade_Guide" + elog + 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." + + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/sys-cluster/glusterfs/glusterfs-3.2.7.ebuild b/sys-cluster/glusterfs/glusterfs-3.2.7.ebuild new file mode 100644 index 000000000000..ffd564e4b2b9 --- /dev/null +++ b/sys-cluster/glusterfs/glusterfs-3.2.7.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +PYTHON_DEPEND="2" +inherit autotools elisp-common eutils multilib python versionator + +DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" +HOMEPAGE="http://www.gluster.org/" +SRC_URI="http://ftp.gluster.com/pub/gluster/${PN}/$(get_version_component_range '1-2')/${PV}/${P}.tar.gz" + +LICENSE="AGPL-3" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +IUSE="emacs extras +fuse infiniband static-libs vim-syntax" + +RDEPEND="emacs? ( virtual/emacs ) + fuse? ( >=sys-fs/fuse-2.7.0 ) + infiniband? ( sys-infiniband/libibverbs )" +DEPEND="${RDEPEND} + virtual/pkgconfig + sys-devel/bison + sys-devel/flex" + +SITEFILE="50${PN}-mode-gentoo.el" + +pkg_setup() { + python_set_active_version 2 + python_pkg_setup +} + +src_prepare() { + epatch "${FILESDIR}/${PN}-3.1.0-parallel-build.patch" \ + "${FILESDIR}/${PN}-docdir.patch" \ + "${FILESDIR}/glusterd-3.2.0-workdir.patch" + sed -i -e "s/ -ggdb3//g" -e "s/ -m64//g" argp-standalone/configure.ac || die + eautoreconf +} + +src_configure() { + econf \ + $(use_enable fuse fuse-client) \ + $(use_enable infiniband ibverbs) \ + $(use_enable static-libs static) \ + --enable-georeplication \ + --disable-bdb \ + --docdir=/usr/share/doc/${PF} \ + --localstatedir=/var +} + +src_compile() { + emake + if use emacs ; then + elisp-compile extras/glusterfs-mode.el || die + fi +} + +src_install() { + emake DESTDIR="${D}" install + + if use emacs ; then + elisp-install ${PN} extras/glusterfs-mode.el* || die + elisp-site-file-install "${FILESDIR}/${SITEFILE}" + fi + + if use vim-syntax ; then + insinto /usr/share/vim/vimfiles/ftdetect; doins "${FILESDIR}/glusterfs.vim" + insinto /usr/share/vim/vimfiles/syntax; doins extras/glusterfs.vim + fi + + if use extras ; then + newbin extras/backend-xattr-sanitize.sh glusterfs-backend-xattr-sanitize + newbin extras/backend-cleanup.sh glusterfs-backend-cleanup + newbin extras/migrate-unify-to-distribute.sh glusterfs-migrate-unify-to-distribute + newbin extras/disk_usage_sync.sh glusterfs-disk-usage-sync + fi + + dodoc AUTHORS ChangeLog NEWS README THANKS + + newinitd "${FILESDIR}/${PN}.initd" glusterfsd + newinitd "${FILESDIR}/glusterd.initd" glusterd + newconfd "${FILESDIR}/${PN}.confd" glusterfsd + + keepdir /var/log/${PN} + keepdir /var/lib/glusterd + + python_convert_shebangs -r 2 "${ED}" +} + +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" + elog + 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." + elog + 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" + elog + 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." + + if [[ ${REPLACING_VERSIONS} < 3.1 ]]; then + elog + elog "You are upgrading from a previous version of ${PN}, please read:" + elog "http://www.gluster.com/community/documentation/index.php/Gluster_3.0_to_3.2_Upgrade_Guide" + fi + + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/sys-cluster/glusterfs/glusterfs-3.3.1-r2.ebuild b/sys-cluster/glusterfs/glusterfs-3.3.1-r2.ebuild new file mode 100644 index 000000000000..fd8b7dd11614 --- /dev/null +++ b/sys-cluster/glusterfs/glusterfs-3.3.1-r2.ebuild @@ -0,0 +1,135 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +PYTHON_DEPEND="2" +AUTOTOOLS_AUTORECONF=1 + +inherit autotools-utils elisp-common eutils multilib python versionator + +DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" +HOMEPAGE="http://www.gluster.org/" +SRC_URI="http://download.gluster.org/pub/gluster/${PN}/$(get_version_component_range '1-2')/${PV}/${P}.tar.gz" + +LICENSE="AGPL-3" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +IUSE="emacs extras +fuse infiniband static-libs vim-syntax" + +RDEPEND="emacs? ( virtual/emacs ) + fuse? ( >=sys-fs/fuse-2.7.0 ) + infiniband? ( sys-infiniband/libibverbs )" +DEPEND="${RDEPEND} + virtual/pkgconfig + sys-devel/bison + sys-devel/flex" + +SITEFILE="50${PN}-mode-gentoo.el" + +PATCHES=( + "${FILESDIR}/${PN}-3.3.0-parallel-build.patch" + "${FILESDIR}/${PN}-3.3.0-docdir.patch" + "${FILESDIR}/${PN}-3.3.0-silent_rules.patch" + "${FILESDIR}/${PN}-3.3.0-avoid-version.patch" +) + +DOCS=( AUTHORS ChangeLog NEWS README THANKS ) + +pkg_setup() { + python_set_active_version 2 + python_pkg_setup +} + +src_prepare() { + sed -e "s/ -ggdb3//g" \ + -i argp-standalone/configure.ac || die + sed -e "s:\$(PYTHON):${PREFIX}/usr/bin/python2:g" \ + -i xlators/features/marker/utils/src/Makefile.am || die #446330 + sed -e 's:"/usr/local/libexec/glusterfs:GSYNCD_PREFIX":' \ + -i xlators/mgmt/glusterd/src/glusterd.c || die #464196 + autotools-utils_src_prepare + cd argp-standalone && eautoreconf +} + +src_configure() { + local myeconfargs=( + --disable-dependency-tracking + --disable-silent-rules + $(use_enable fuse fuse-client) + $(use_enable infiniband ibverbs) + $(use_enable static-libs static) + --enable-georeplication + --docdir=/usr/share/doc/${PF} + --localstatedir=/var + ) + autotools-utils_src_configure +} + +src_compile() { + autotools-utils_src_compile + if use emacs ; then + elisp-compile extras/glusterfs-mode.el || die + fi +} + +src_install() { + autotools-utils_src_install + + if use emacs ; then + elisp-install ${PN} extras/glusterfs-mode.el* || die + 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 + + if use extras ; then + newbin extras/backend-xattr-sanitize.sh ${PN}-backend-xattr-sanitize + newbin extras/backend-cleanup.sh ${PN}-backend-cleanup + newbin extras/migrate-unify-to-distribute.sh ${PN}-migrate-unify-to-distribute + newbin extras/disk_usage_sync.sh ${PN}-disk-usage-sync + fi + + newinitd "${FILESDIR}/${PN}-r1.initd" glusterfsd + newinitd "${FILESDIR}/glusterd.initd" glusterd + newconfd "${FILESDIR}/${PN}.confd" glusterfsd + + keepdir /var/log/${PN} + keepdir /var/lib/glusterd + + python_convert_shebangs -r 2 "${ED}" +} + +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" + elog + 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." + elog + 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" + elog + 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." + + elog + elog "You are upgrading from a previous version of ${PN}, please read:" + elog "http://vbellur.wordpress.com/2012/05/31/upgrading-to-glusterfs-3-3/" + + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/sys-cluster/glusterfs/glusterfs-3.5.3.ebuild b/sys-cluster/glusterfs/glusterfs-3.5.3.ebuild new file mode 100644 index 000000000000..e818b4129403 --- /dev/null +++ b/sys-cluster/glusterfs/glusterfs-3.5.3.ebuild @@ -0,0 +1,174 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) +AUTOTOOLS_AUTORECONF=1 + +inherit autotools-utils elisp-common eutils multilib python-single-r1 versionator + +DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" +HOMEPAGE="http://www.gluster.org/" +SRC_URI="http://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 ~ppc ~ppc64 ~x86" +IUSE="bd-xlator crypt-xlator debug emacs +fuse +georeplication glupy infiniband qemu-block rsyslog static-libs +syslog systemtap vim-syntax +xml" + +REQUIRED_USE="georeplication? ( ${PYTHON_REQUIRED_USE} ) + glupy? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND="bd-xlator? ( sys-fs/lvm2 ) + emacs? ( virtual/emacs ) + fuse? ( >=sys-fs/fuse-2.7.0 ) + georeplication? ( ${PYTHON_DEPS} ) + infiniband? ( sys-infiniband/libibverbs:* sys-infiniband/librdmacm:* ) + qemu-block? ( dev-libs/glib:2 ) + systemtap? ( dev-util/systemtap ) + xml? ( dev-libs/libxml2 ) + sys-libs/readline:= + dev-libs/libaio + dev-libs/openssl:= + || ( sys-libs/glibc sys-libs/argp-standalone )" +DEPEND="${RDEPEND} + virtual/pkgconfig + sys-devel/bison + sys-devel/flex" + +SITEFILE="50${PN}-mode-gentoo.el" + +PATCHES=( + "${FILESDIR}/${PN}-3.4.0-silent_rules.patch" + "${FILESDIR}/${PN}-3.5.1-Add-libraries-using-LIBADD-instead-of-LDFLAGS.patch" + "${FILESDIR}/${PN}-3.5.1-build-shared-only.patch" +) + +DOCS=( AUTHORS ChangeLog NEWS README 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() { + ( use georeplication || use glupy ) && python-single-r1_pkg_setup +} + +src_configure() { + local myeconfargs=( + --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 xml xml-output) + --docdir=/usr/share/doc/${PF} + --localstatedir=/var + ) + autotools-utils_src_configure +} + +src_compile() { + autotools-utils_src_compile + + use emacs && elisp-compile extras/glusterfs-mode.el +} + +src_install() { + autotools-utils_src_install + + rm \ + "${D}"/etc/glusterfs/glusterfs-{georep-,}logrotate \ + "${D}"/etc/glusterfs/gluster-rsyslog-*.conf \ + "${D}"/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-r2.initd" glusterd + newconfd "${FILESDIR}/${PN}.confd" glusterfsd + + keepdir /var/log/${PN} + keepdir /var/lib/glusterd + + # QA + rm -rf "${ED}/var/run/" || die + + use georeplication && python_fix_shebang "${ED}" +} + +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." + + elog + elog "If you are upgrading from a previous version of ${PN}, please read:" + elog " http://www.gluster.org/community/documentation/index.php/Upgrade_to_3.5" + + 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 new file mode 100644 index 000000000000..7ca776b6ff2c --- /dev/null +++ b/sys-cluster/glusterfs/metadata.xml @@ -0,0 +1,21 @@ + + + + cluster + + GlusterFS is a cluster file-system capable of scaling to several peta-bytes. It aggregates various storage bricks over Infiniband RDMA or TCP/IP interconnect into one large parallel network file system. GlusterFS is based on a stackable user space design without compromising performance. + + + Enable the blockdevice translator (requires sys-fs/lvm2) + Enable the encryption translator + Add FUSE mount helper + Enable support for translators written in Python + Enable support for georeplication (requires dev-lang/python) + Install extra helper scripts + Add support for Infiniband ibverbs transport. + Libraries can be found in science overlay + Install configuration snippet for app-admin/rsyslog + Transparently create files as QCow2/QED images in the backend, including the possibility to snapshot. + Enable support for dev-util/systemtap + + -- cgit v1.2.3-65-gdbad