Index: glusterfs/Makefile =================================================================== --- glusterfs/Makefile +++ glusterfs/Makefile @@ -0,0 +1,53 @@ +# $FreeBSD$ + +PORTNAME= glusterfs +PORTVERSION= 3.7.6 +CATEGORIES= net +MASTER_SITES= http://bits.gluster.org/pub/gluster/glusterfs/src/ +DISTNAME= ${PORTNAME}-3.7.6 + +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 + +.if ${OSVERSION} < 1000000 +WITH_OPENSSL_PORT= yes +RUN_DEPENDS+= ${KMODDIR}/fuse.ko:${PORTSDIR}/sysutils/fusefs-kmod +.endif + +.include Index: glusterfs/distinfo =================================================================== --- glusterfs/distinfo +++ glusterfs/distinfo @@ -0,0 +1,2 @@ +SHA256 (glusterfs-3.7.6.tar.gz) = bb83f0b6bd95599d3742d1c7c12dbbe7b4ef4d4908c5056ee97b3f32c508cf05 +SIZE (glusterfs-3.7.6.tar.gz) = 7690697 Index: glusterfs/files/glusterd.in =================================================================== --- glusterfs/files/glusterd.in +++ 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" Index: glusterfs/files/patch-configure =================================================================== --- glusterfs/files/patch-configure +++ glusterfs/files/patch-configure @@ -0,0 +1,21 @@ +--- configure.orig 2015-02-16 21:13:46.743376747 +0000 ++++ configure 2015-02-16 21:20:20.085666758 +0000 +@@ -16076,6 +16076,9 @@ + linux*) + #do nothing + ;; ++ freebsd*) ++#do nothing ++ ;; + netbsd*) + #do nothing + ;; +@@ -19518,7 +19521,7 @@ + + + +-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 Index: glusterfs/files/patch-extras-Makefile.in =================================================================== --- glusterfs/files/patch-extras-Makefile.in +++ glusterfs/files/patch-extras-Makefile.in @@ -0,0 +1,22 @@ +--- extras/Makefile.in.orig 2014-10-01 03:18:08.000000000 +0900 ++++ extras/Makefile.in 2014-11-25 05:50:23.000000000 +0900 +@@ -443,8 +443,8 @@ + 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: +@@ -773,7 +773,7 @@ + install-data-local: + $(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. Index: glusterfs/files/patch-fuse-lib-mount =================================================================== --- glusterfs/files/patch-fuse-lib-mount +++ glusterfs/files/patch-fuse-lib-mount @@ -0,0 +1,10 @@ +--- contrib/fuse-lib/mount.c.orig 2015-11-26 00:02:04.760234061 +0000 ++++ contrib/fuse-lib/mount.c 2015-11-26 00:03:54.733212503 +0000 +@@ -256,6 +256,7 @@ + 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, Index: glusterfs/pkg-descr =================================================================== --- glusterfs/pkg-descr +++ 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 Index: glusterfs/pkg-plist =================================================================== --- glusterfs/pkg-plist +++ 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 +%%PORTDOCS%%%%DOCSDIR%%/benchmarking/README +%%PORTDOCS%%%%DOCSDIR%%/benchmarking/glfs-bm.c +%%PORTDOCS%%%%DOCSDIR%%/benchmarking/launch-script.sh +%%PORTDOCS%%%%DOCSDIR%%/benchmarking/local-script.sh +%%PORTDOCS%%%%DOCSDIR%%/benchmarking/rdd.c +%%PORTDOCS%%%%DOCSDIR%%/glusterfs-mode.el +%%PORTDOCS%%%%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