pkgsrc/filesystems/glusterfs/Makefile

96 lines
2.6 KiB
Makefile
Raw Normal View History

# $NetBSD: Makefile,v 1.43 2014/08/13 22:37:37 joerg Exp $
DISTNAME= glusterfs-3.5.0
PKGREVISION= 4
CATEGORIES= filesystems
MASTER_SITES= http://bits.gluster.org/pub/gluster/glusterfs/src/
MAINTAINER= pkgsrc-users@NetBSD.org
2011-05-08 10:26:43 +02:00
HOMEPAGE= http://www.gluster.org/
COMMENT= Cluster filesystem
LICENSE= gnu-gpl-v3
GNU_CONFIGURE= yes
USE_LIBTOOL= yes
USE_TOOLS+= flex bison
Update glusterfs to 3.4.0. Here are the changes since 3.3.x * Improvements for Virtual Machine Image Storage A number of improvements have been performed to let Gluster volumes provide storage for Virtual Machine Images. Some of them include: - qemu / libgfapi integration. - Causal ordering in write-behind translator. - Tunables for a gluster volume in group-virt.example. The above results in significant improvements in performance for VM image hosting. * Synchronous Replication Improvements GlusterFS 3.4 features significant improvements in performance for the replication (AFR) translator. This is in addition to bug fixes for volumes that used replica 3. * Open Cluster Framework compliant Resource Agents Resource Agents (RA) plug glusterd into Open Cluster Framework (OCF) compliant cluster resource managers, like Pacemaker. The glusterd RA manages the glusterd daemon like any upstart or systemd job would, except that Pacemaker can do it in a cluster-aware fashion. The volume RA starts a volume and monitors individual brick?s daemons in a cluster aware fashion, recovering bricks when their processes fail. * POSIX ACL support over NFSv3 setfacl and getfacl commands now can be used on a nfs mount that exports a gluster volume to set or read posix ACLs. * 3.3.x compatibility The new op-version infrastructure provides compatibility with 3.3.x release of GlusterFS. 3.3.x clients can talk to 3.4.x servers and the vice-versa is also possible. If a volume option that corresponds to 3.4 is enabled, then 3.3 clients cannot mount the volume. * Packaging changes New RPMs for libgfapi and OCF RA are present with 3.4.0. * Experimental Features - RDMA-connection manager (RDMA-CM) - New Block Device translator - Support for NUFA As experimental features, we don?t expect them to work perfectly for this release, but you can expect them to improve dramatically as we make successive 3.4.x releases. * Minor Improvements: - The Ext4 file system change which affected readdir workloads for Gluster volumes has been addressed. - More options for selecting read-child with afr available now. - Custom layouts possible with distribute translator. - No 32-aux-gid limit - SSL support for socket connections. - Known issues with replica count greater than 2 addressed. - quick-read and md-cache translators have been refactored. - open-behind translator introduced. - Ability to avoid glusterfs bind to reserved ports. - statedumps are now created in /var/run/gluster instead of /tmp by default.
2013-09-08 05:38:52 +02:00
CONFIGURE_ARGS+= --disable-fusermount
CONFIGURE_ARGS+= --localstatedir=${VARBASE}
CONFIGURE_ARGS+= CFLAGS=${CFLAGS:M*:Q}\ -DDEBUG
# Make sure we do not attept to link with -lfl
# Only libfl.a is available, and libtool wants libfl.so
MAKE_FLAGS+= LEXLIB=""
MAKE_FLAGS+= libglusterfs_la_LIBADD=""
MAKE_ENV+= AM_MAKEFLAGS=${MAKE_FLAGS:Q}
REPLACE_PYTHON= api/examples/gfapi.py
REPLACE_PYTHON+= contrib/ipaddr-py/ipaddr.py
REPLACE_PYTHON+= gen-headers.py
REPLACE_PYTHON+= tests/bugs/overlap.py
REPLACE_PYTHON+= tests/utils/create-files.py
SUBST_CLASSES+= mtab
SUBST_STAGE.mtab= post-build
SUBST_FILES.mtab= doc/mount.glusterfs.8
SUBST_FILES.mtab= libglusterfs/src/compat.h
SUBST_FILES.mtab= xlators/mount/fuse/utils/mount.glusterfs.in
SUBST_SED.mtab= -e "s,/etc/mtab,/proc/mounts,g"
SUBST_CLASSES+= etc
SUBST_STAGE.etc= pre-build
SUBST_FILES.etc+= libglusterfs/src/logging.c
SUBST_FILES.etc+= extras/ocf/volume
SUBST_FILES.etc+= doc/glusterfsd.8
SUBST_SED.etc= -e "s,/etc/gluster,${PREFIX}/etc/gluster,g"
SUBST_CLASSES+= vol
SUBST_STAGE.vol= post-build
SUBST_FILES.vol= extras/Makefile
SUBST_SED.vol= -e "s/glusterd.vol/glusterd.vol.sample/g"
EGDIR= ${PREFIX}/etc/glusterfs
CONF_FILES+= ${EGDIR}/glusterd.vol.sample ${EGDIR}/glusterd.vol
OWN_DIRS+= ${VARBASE}/log/glusterfs
BUILD_DEFS+= VARBASE
RCD_SCRIPTS= glusterfsd
2011-07-19 09:54:30 +02:00
PLIST_SRC= ${PLIST_SRC_DFLT}
PLIST_SUBST+= VARBASE=${VARBASE}
PLIST_SUBST+= PKG_SYSCONFDIR=${PKG_SYSCONFDIR}
PLIST_SUBST+= PYSITELIB=${PYSITELIB:Q}
MESSAGE_SRC= ${PKGDIR}/MESSAGE.${OPSYS}
2011-07-19 09:54:30 +02:00
pre-build:
cd ${WRKSRC} && ./gen-headers.py
post-build:
cp ${WRKSRC}/extras/glusterd.vol ${WRKSRC}/extras/glusterd.vol.sample
post-install:
${INSTALL_SCRIPT} ${DESTDIR}/sbin/mount.glusterfs \
${DESTDIR}/${PREFIX}/sbin/mount.glusterfs
# Debug
CFLAGS+= -g
INSTALL_UNSTRIPPED= yes
.include "../../devel/boehm-gc/buildlink3.mk"
CFLAGS+=-DGC_DEBUG
CFLAGS+=-include gc.h
LIBS+=-lgc
2011-07-19 09:54:30 +02:00
.include "options.mk"
.include "../../mk/bsd.prefs.mk"
.include "../../devel/argp/buildlink3.mk"
.include "../../lang/python/application.mk"
.include "../../lang/python/extension.mk"
2014-05-18 23:21:32 +02:00
.if (${OPSYS} == "NetBSD" || ${OPSYS} == "FreeBSD") && exists(/usr/include/execinfo.h)
LIBS+= -lexecinfo
.endif
.include "../../mk/bsd.pkg.mk"