aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorhrs <hrs@FreeBSD.org>2016-02-25 03:44:45 +0800
committerhrs <hrs@FreeBSD.org>2016-02-25 03:44:45 +0800
commit0d4ff658c570dda8bc8c2d1cffe7f944fbbc55a3 (patch)
tree4ffdaeae02110a71d49097dea24d7588be8b4028 /net
parentfca4a437c3a64f0718209ade3524aee95f894626 (diff)
downloadfreebsd-ports-gnome-0d4ff658c570dda8bc8c2d1cffe7f944fbbc55a3.tar.gz
freebsd-ports-gnome-0d4ff658c570dda8bc8c2d1cffe7f944fbbc55a3.tar.zst
freebsd-ports-gnome-0d4ff658c570dda8bc8c2d1cffe7f944fbbc55a3.zip
Add net/glusterfs, an open source, distributed file system capable of
scaling to several petabytes and handling thousands of clients. Submitted by: Craig Butler (maintainer) PR: 194409
Diffstat (limited to 'net')
-rw-r--r--net/Makefile1
-rw-r--r--net/glusterfs/Makefile52
-rw-r--r--net/glusterfs/distinfo2
-rw-r--r--net/glusterfs/files/glusterd.in27
-rw-r--r--net/glusterfs/files/patch-configure21
-rw-r--r--net/glusterfs/files/patch-contrib-fuse-lib-mount.c10
-rw-r--r--net/glusterfs/files/patch-extras-Makefile.in22
-rw-r--r--net/glusterfs/pkg-descr9
-rw-r--r--net/glusterfs/pkg-plist198
9 files changed, 342 insertions, 0 deletions
diff --git a/net/Makefile b/net/Makefile
index 7ae0b162b49b..ae08d8fe6414 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -155,6 +155,7 @@
SUBDIR += gkrellmwireless2
SUBDIR += glflow
SUBDIR += glib-networking
+ SUBDIR += glusterfs
SUBDIR += gnet2
SUBDIR += gnetcat
SUBDIR += gnome-nettool
diff --git a/net/glusterfs/Makefile b/net/glusterfs/Makefile
new file mode 100644
index 000000000000..ba2f5e281d66
--- /dev/null
+++ b/net/glusterfs/Makefile
@@ -0,0 +1,52 @@
+# $FreeBSD$
+
+PORTNAME= glusterfs
+PORTVERSION= 3.7.6
+CATEGORIES= net
+MASTER_SITES= http://bits.gluster.org/pub/gluster/glusterfs/src/
+
+MAINTAINER= craig001@lerwick.hopto.org
+COMMENT= GlusterFS distributed file system
+
+LICENSE= GPLv2 LGPL3
+LICENSE_COMB= dual
+
+LIB_DEPENDS= libargp.so:${PORTSDIR}/devel/argp-standalone liburcu-bp.so:${PORTSDIR}/sysutils/liburcu
+
+USE_GCC= any
+
+USES= bison gettext libtool pkgconfig python:build readline \
+ shebangfix
+SHEBANG_FILES= extras/peer_add_secret_pub.in \
+ tools/glusterfind/S57glusterfind-delete-post.py \
+ extras/ganesha/scripts/ganesha-ha.sh
+
+USE_GNOME= glib20 libxml2
+USE_LDCONFIG= yes
+USE_OPENSSL= yes
+USE_SQLITE= yes
+USE_RC_SUBR= glusterd
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --with-pkgconfigdir=${PREFIX}/libdata/pkgconfig \
+ --with-mountutildir=${PREFIX}/sbin \
+ --localstatedir=/var \
+ --disable-epoll \
+ --enable-glupy \
+ --disable-georeplication \
+ ac_cv_lib_aio_io_setup=no ac_cv_func_fallocate=no \
+ ac_cv_func_setfsuid=no ac_cv_func_fdatasync=no \
+ ac_cv_func_llistxattr=no ac_cv_func_malloc_stats=no
+CPPFLAGS+= -I"${LOCALBASE}/include"
+LDFLAGS+= -L"${LOCALBASE}/lib" -largp
+INSTALL_TARGET= install-strip
+PLIST_SUB= GLUSTERLIBDIR="lib/${PORTNAME}/3.7.6"
+KMODDIR?= /boot/modules
+
+.include <bsd.port.options.mk>
+
+.if ${OSVERSION} < 1000000
+WITH_OPENSSL_PORT= yes
+RUN_DEPENDS+= ${KMODDIR}/fuse.ko:${PORTSDIR}/sysutils/fusefs-kmod
+.endif
+
+.include <bsd.port.mk>
diff --git a/net/glusterfs/distinfo b/net/glusterfs/distinfo
new file mode 100644
index 000000000000..7f0b577c61d6
--- /dev/null
+++ b/net/glusterfs/distinfo
@@ -0,0 +1,2 @@
+SHA256 (glusterfs-3.7.6.tar.gz) = bb83f0b6bd95599d3742d1c7c12dbbe7b4ef4d4908c5056ee97b3f32c508cf05
+SIZE (glusterfs-3.7.6.tar.gz) = 7690697
diff --git a/net/glusterfs/files/glusterd.in b/net/glusterfs/files/glusterd.in
new file mode 100644
index 000000000000..22f19b0385ec
--- /dev/null
+++ b/net/glusterfs/files/glusterd.in
@@ -0,0 +1,27 @@
+#!/bin/sh
+#
+# $FreeBSD$
+
+# PROVIDE: glusterd
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+
+. /etc/rc.subr
+
+name="glusterd"
+rcvar="${name}_enable"
+start_precmd="glusterd_prestart"
+
+glusterd_prestart()
+{
+
+ mkdir -p /var/db/glusterd /var/log/glusterfs
+}
+
+load_rc_config $name
+: ${glusterd_program:="%%PREFIX%%/sbin/$name"}
+: ${glusterd_pidfile:="/var/run/${name}.pid"}
+pidfile="$glusterd_pidfile"
+glusterd_flags="--pid-file=\"${glusterd_pidfile}\" ${glusterd_flags}"
+
+run_rc_command "$1"
diff --git a/net/glusterfs/files/patch-configure b/net/glusterfs/files/patch-configure
new file mode 100644
index 000000000000..47854c9de995
--- /dev/null
+++ b/net/glusterfs/files/patch-configure
@@ -0,0 +1,21 @@
+--- configure.orig 2015-11-08 21:57:53 UTC
++++ configure
+@@ -17172,6 +17172,9 @@ case $host_os in
+ linux*)
+ #do nothing
+ ;;
++ freebsd*)
++#do nothing
++ ;;
+ netbsd*)
+ #do nothing
+ ;;
+@@ -20758,7 +20761,7 @@ CPPFLAGS=$CFLAGS
+ LDFLAGS="${PYTHON_LIBS} -L`${PYTHON}-config --prefix`/lib -L`${PYTHON}-config --prefix`/$libdir `${PYTHON}-config --ldflags`"
+
+
+-for ac_header in python$PYTHON_VERSION/Python.h
++for ac_header in python$PYTHON_VERSION/Python.h Python.h
+ do
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
diff --git a/net/glusterfs/files/patch-contrib-fuse-lib-mount.c b/net/glusterfs/files/patch-contrib-fuse-lib-mount.c
new file mode 100644
index 000000000000..47d0eb7e6e8a
--- /dev/null
+++ b/net/glusterfs/files/patch-contrib-fuse-lib-mount.c
@@ -0,0 +1,10 @@
+--- contrib/fuse-lib/mount.c.orig 2015-11-08 21:57:46 UTC
++++ contrib/fuse-lib/mount.c
+@@ -256,6 +256,7 @@ fuse_mount_sys (const char *mountpoint,
+ build_iovec (&iov, &iovlen, "from", "/dev/fuse", -1);
+ build_iovec (&iov, &iovlen, "volname", source, -1);
+ build_iovec (&iov, &iovlen, "fd", fdstr, -1);
++ build_iovec (&iov, &iovlen, "allow_other", NULL, -1);
+ ret = nmount (iov, iovlen, mountflags);
+ #else
+ ret = mount (source, mountpoint, fstype, mountflags,
diff --git a/net/glusterfs/files/patch-extras-Makefile.in b/net/glusterfs/files/patch-extras-Makefile.in
new file mode 100644
index 000000000000..c227b092877e
--- /dev/null
+++ b/net/glusterfs/files/patch-extras-Makefile.in
@@ -0,0 +1,22 @@
+--- extras/Makefile.in.orig 2015-11-08 21:57:56 UTC
++++ extras/Makefile.in
+@@ -529,8 +529,8 @@ install-volDATA: $(vol_DATA)
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+- echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(voldir)'"; \
+- $(INSTALL_DATA) $$files "$(DESTDIR)$(voldir)" || exit $$?; \
++ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(voldir)/$${files}.sample'"; \
++ $(INSTALL_DATA) $$files "$(DESTDIR)$(voldir)/$${files}.sample" || exit $$?; \
+ done
+
+ uninstall-volDATA:
+@@ -865,7 +865,7 @@ install-data-local:
+ fi
+ $(MKDIR_P) $(DESTDIR)$(GLUSTERD_WORKDIR)/groups
+ $(INSTALL_DATA) $(top_srcdir)/extras/group-virt.example \
+- $(DESTDIR)$(GLUSTERD_WORKDIR)/groups/virt
++ $(DESTDIR)$(GLUSTERD_WORKDIR)/groups/virt.sample
+
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/net/glusterfs/pkg-descr b/net/glusterfs/pkg-descr
new file mode 100644
index 000000000000..6b523f4ae0dd
--- /dev/null
+++ b/net/glusterfs/pkg-descr
@@ -0,0 +1,9 @@
+GlusterFS is an open source, distributed file system capable of
+scaling to several petabytes and handling thousands of
+clients. GlusterFS clusters together storage building blocks over
+Infiniband RDMA or TCP/IP interconnect, aggregating disk and memory
+resources and managing data in a single global namespace. GlusterFS
+is based on a stackable user space design and can deliver exceptional
+performance for diverse workloads.
+
+WWW: http://www.gluster.org
diff --git a/net/glusterfs/pkg-plist b/net/glusterfs/pkg-plist
new file mode 100644
index 000000000000..c5f5cd599318
--- /dev/null
+++ b/net/glusterfs/pkg-plist
@@ -0,0 +1,198 @@
+bin/glusterfind
+@sample etc/ganesha/ganesha-ha.conf.sample
+%%ETCDIR%%/gluster-rsyslog-5.8.conf
+%%ETCDIR%%/gluster-rsyslog-7.2.conf
+@sample %%ETCDIR%%/glusterd.vol.sample
+%%ETCDIR%%/glusterfs-georep-logrotate
+%%ETCDIR%%/glusterfs-logrotate
+%%ETCDIR%%/group-virt.example
+%%ETCDIR%%/logger.conf.example
+include/glusterfs/api/glfs-handles.h
+include/glusterfs/api/glfs.h
+include/glusterfs/gfchangelog/changelog.h
+include/glusterfs/gfdb/gfdb_data_store.h
+include/glusterfs/gfdb/gfdb_data_store_helper.h
+include/glusterfs/gfdb/gfdb_data_store_types.h
+include/glusterfs/gfdb/gfdb_mem-types.h
+include/glusterfs/gfdb/gfdb_sqlite3.h
+include/glusterfs/gfdb/gfdb_sqlite3_helper.h
+%%GLUSTERLIBDIR%%/auth/addr.so
+%%GLUSTERLIBDIR%%/auth/login.so
+%%GLUSTERLIBDIR%%/rpc-transport/socket.so
+%%GLUSTERLIBDIR%%/xlator/cluster/afr.so
+%%GLUSTERLIBDIR%%/xlator/cluster/dht.so
+%%GLUSTERLIBDIR%%/xlator/cluster/disperse.so
+%%GLUSTERLIBDIR%%/xlator/cluster/distribute.so
+%%GLUSTERLIBDIR%%/xlator/cluster/ec.so
+%%GLUSTERLIBDIR%%/xlator/cluster/nufa.so
+%%GLUSTERLIBDIR%%/xlator/cluster/pump.so
+%%GLUSTERLIBDIR%%/xlator/cluster/replicate.so
+%%GLUSTERLIBDIR%%/xlator/cluster/stripe.so
+%%GLUSTERLIBDIR%%/xlator/cluster/switch.so
+%%GLUSTERLIBDIR%%/xlator/cluster/tier.so
+%%GLUSTERLIBDIR%%/xlator/debug/error-gen.so
+%%GLUSTERLIBDIR%%/xlator/debug/io-stats.so
+%%GLUSTERLIBDIR%%/xlator/debug/trace.so
+%%GLUSTERLIBDIR%%/xlator/encryption/crypt.so
+%%GLUSTERLIBDIR%%/xlator/encryption/rot-13.so
+%%GLUSTERLIBDIR%%/xlator/features/access-control.so
+%%GLUSTERLIBDIR%%/xlator/features/arbiter.so
+%%GLUSTERLIBDIR%%/xlator/features/barrier.so
+%%GLUSTERLIBDIR%%/xlator/features/bit-rot.so
+%%GLUSTERLIBDIR%%/xlator/features/bitrot-stub.so
+%%GLUSTERLIBDIR%%/xlator/features/cdc.so
+%%GLUSTERLIBDIR%%/xlator/features/changelog.so
+%%GLUSTERLIBDIR%%/xlator/features/changetimerecorder.so
+%%GLUSTERLIBDIR%%/xlator/features/ganesha.so
+%%GLUSTERLIBDIR%%/xlator/features/gfid-access.so
+%%GLUSTERLIBDIR%%/xlator/features/glupy.so
+%%GLUSTERLIBDIR%%/xlator/features/glupy/debug-trace.py
+%%GLUSTERLIBDIR%%/xlator/features/glupy/debug-trace.pyc
+%%GLUSTERLIBDIR%%/xlator/features/glupy/debug-trace.pyo
+%%GLUSTERLIBDIR%%/xlator/features/glupy/helloworld.py
+%%GLUSTERLIBDIR%%/xlator/features/glupy/helloworld.pyc
+%%GLUSTERLIBDIR%%/xlator/features/glupy/helloworld.pyo
+%%GLUSTERLIBDIR%%/xlator/features/glupy/negative.py
+%%GLUSTERLIBDIR%%/xlator/features/glupy/negative.pyc
+%%GLUSTERLIBDIR%%/xlator/features/glupy/negative.pyo
+%%GLUSTERLIBDIR%%/xlator/features/index.so
+%%GLUSTERLIBDIR%%/xlator/features/locks.so
+%%GLUSTERLIBDIR%%/xlator/features/mac-compat.so
+%%GLUSTERLIBDIR%%/xlator/features/marker.so
+%%GLUSTERLIBDIR%%/xlator/features/posix-locks.so
+%%GLUSTERLIBDIR%%/xlator/features/prot_client.so
+%%GLUSTERLIBDIR%%/xlator/features/prot_dht.so
+%%GLUSTERLIBDIR%%/xlator/features/prot_server.so
+%%GLUSTERLIBDIR%%/xlator/features/qemu-block.so
+%%GLUSTERLIBDIR%%/xlator/features/quiesce.so
+%%GLUSTERLIBDIR%%/xlator/features/quota.so
+%%GLUSTERLIBDIR%%/xlator/features/quotad.so
+%%GLUSTERLIBDIR%%/xlator/features/read-only.so
+%%GLUSTERLIBDIR%%/xlator/features/shard.so
+%%GLUSTERLIBDIR%%/xlator/features/snapview-client.so
+%%GLUSTERLIBDIR%%/xlator/features/snapview-server.so
+%%GLUSTERLIBDIR%%/xlator/features/trash.so
+%%GLUSTERLIBDIR%%/xlator/features/upcall.so
+%%GLUSTERLIBDIR%%/xlator/features/worm.so
+%%GLUSTERLIBDIR%%/xlator/meta.so
+%%GLUSTERLIBDIR%%/xlator/mgmt/glusterd.so
+%%GLUSTERLIBDIR%%/xlator/mount/api.so
+%%GLUSTERLIBDIR%%/xlator/mount/fuse.so
+%%GLUSTERLIBDIR%%/xlator/nfs/server.so
+%%GLUSTERLIBDIR%%/xlator/performance/io-cache.so
+%%GLUSTERLIBDIR%%/xlator/performance/io-threads.so
+%%GLUSTERLIBDIR%%/xlator/performance/md-cache.so
+%%GLUSTERLIBDIR%%/xlator/performance/open-behind.so
+%%GLUSTERLIBDIR%%/xlator/performance/quick-read.so
+%%GLUSTERLIBDIR%%/xlator/performance/read-ahead.so
+%%GLUSTERLIBDIR%%/xlator/performance/readdir-ahead.so
+%%GLUSTERLIBDIR%%/xlator/performance/stat-prefetch.so
+%%GLUSTERLIBDIR%%/xlator/performance/write-behind.so
+%%GLUSTERLIBDIR%%/xlator/protocol/client.so
+%%GLUSTERLIBDIR%%/xlator/protocol/server.so
+%%GLUSTERLIBDIR%%/xlator/storage/posix.so
+%%GLUSTERLIBDIR%%/xlator/system/posix-acl.so
+%%GLUSTERLIBDIR%%/xlator/testing/features/template.so
+%%GLUSTERLIBDIR%%/xlator/testing/performance/symlink-cache.so
+lib/libgfapi.so
+lib/libgfapi.so.0
+lib/libgfapi.so.0.0.0
+lib/libgfchangelog.so
+lib/libgfchangelog.so.0
+lib/libgfchangelog.so.0.0.1
+lib/libgfdb.so
+lib/libgfdb.so.0
+lib/libgfdb.so.0.0.1
+lib/libgfrpc.so
+lib/libgfrpc.so.0
+lib/libgfrpc.so.0.0.1
+lib/libgfxdr.so
+lib/libgfxdr.so.0
+lib/libgfxdr.so.0.0.1
+lib/libglusterfs.so
+lib/libglusterfs.so.0
+lib/libglusterfs.so.0.0.1
+lib/ocf/resource.d/glusterfs/glusterd
+lib/ocf/resource.d/glusterfs/volume
+lib/ocf/resource.d/heartbeat/ganesha_grace
+lib/ocf/resource.d/heartbeat/ganesha_mon
+lib/ocf/resource.d/heartbeat/ganesha_nfsd
+%%PYTHON_SITELIBDIR%%/gluster/__init__.py
+%%PYTHON_SITELIBDIR%%/gluster/__init__.pyc
+%%PYTHON_SITELIBDIR%%/gluster/__init__.pyo
+%%PYTHON_SITELIBDIR%%/gluster/glupy/__init__.py
+%%PYTHON_SITELIBDIR%%/gluster/glupy/__init__.pyc
+%%PYTHON_SITELIBDIR%%/gluster/glupy/__init__.pyo
+libdata/pkgconfig/glusterfs-api.pc
+libdata/pkgconfig/libgfchangelog.pc
+libdata/pkgconfig/libgfdb.pc
+libexec/ganesha/create-export-ganesha.sh
+libexec/ganesha/dbus-send.sh
+libexec/ganesha/ganesha-ha.sh
+libexec/glusterfs/gfind_missing_files/gcrawler
+libexec/glusterfs/gfind_missing_files/gfid_to_path.py
+libexec/glusterfs/gfind_missing_files/gfid_to_path.sh
+libexec/glusterfs/gfind_missing_files/gfind_missing_files.sh
+libexec/glusterfs/glusterfind/S57glusterfind-delete-post.py
+libexec/glusterfs/glusterfind/__init__.py
+libexec/glusterfs/glusterfind/__init__.pyc
+libexec/glusterfs/glusterfind/__init__.pyo
+libexec/glusterfs/glusterfind/brickfind.py
+libexec/glusterfs/glusterfind/changelog.py
+libexec/glusterfs/glusterfind/changelogdata.py
+libexec/glusterfs/glusterfind/changelogdata.pyc
+libexec/glusterfs/glusterfind/changelogdata.pyo
+libexec/glusterfs/glusterfind/conf.py
+libexec/glusterfs/glusterfind/conf.pyc
+libexec/glusterfs/glusterfind/conf.pyo
+libexec/glusterfs/glusterfind/libgfchangelog.py
+libexec/glusterfs/glusterfind/libgfchangelog.pyc
+libexec/glusterfs/glusterfind/libgfchangelog.pyo
+libexec/glusterfs/glusterfind/main.py
+libexec/glusterfs/glusterfind/main.pyc
+libexec/glusterfs/glusterfind/main.pyo
+libexec/glusterfs/glusterfind/nodeagent.py
+libexec/glusterfs/glusterfind/tool.conf
+libexec/glusterfs/glusterfind/utils.py
+libexec/glusterfs/glusterfind/utils.pyc
+libexec/glusterfs/glusterfind/utils.pyo
+libexec/glusterfs/peer_add_secret_pub
+man/man8/gluster.8.gz
+man/man8/glusterd.8.gz
+man/man8/glusterfs.8.gz
+man/man8/glusterfsd.8.gz
+man/man8/mount.glusterfs.8.gz
+sbin/gcron.py
+sbin/gfind_missing_files
+sbin/glfsheal
+sbin/gluster
+sbin/glusterd
+sbin/glusterfs
+sbin/glusterfsd
+sbin/mount_glusterfs
+sbin/snap_scheduler.py
+sbin/umountd
+%%DOCSDIR%%/benchmarking/README
+%%DOCSDIR%%/benchmarking/glfs-bm.c
+%%DOCSDIR%%/benchmarking/launch-script.sh
+%%DOCSDIR%%/benchmarking/local-script.sh
+%%DOCSDIR%%/benchmarking/rdd.c
+%%DOCSDIR%%/glusterfs-mode.el
+%%DOCSDIR%%/glusterfs.vim
+%%DATADIR%%/scripts/post-upgrade-script-for-quota.sh
+%%DATADIR%%/scripts/pre-upgrade-script-for-quota.sh
+%%DATADIR%%/scripts/stop-all-gluster-processes.sh
+@sample /var/db/glusterd/groups/virt.sample
+/var/db/glusterd/hooks/1/delete/post/S57glusterfind-delete-post.py
+@dir /var/db/glusterd/glusterfind/.keys
+@dir /var/db/glusterd/glusterfind
+@dir /var/db/glusterd/groups
+@dir /var/db/glusterd/hooks/1/delete/post
+@dir /var/db/glusterd/hooks/1/delete
+@dir /var/db/glusterd/hooks/1/gsync-create/post
+@dir /var/db/glusterd/hooks/1/gsync-create
+@dir /var/db/glusterd/hooks/1
+@dir /var/db/glusterd/hooks
+@dir /var/db/glusterd
+@dir /var/log/glusterfs
+@dir /var/run/gluster