summaryrefslogtreecommitdiffstats
path: root/glusterfsd
Commit message (Expand)AuthorAgeFilesLines
* core: Global timer-wheelVenky Shankar2015-05-102-1/+15
* glusterd: gluster volume status should show status of bitrot and scrubber daemonGaurav Kumar Garg2015-05-061-0/+8
* protocol: increase default group-cache-timeout to 300 secondsNiels de Vos2015-05-061-1/+1
* glusterfsd: add "print-netgroups" and "print-exports" commandNiels de Vos2015-03-183-3/+246
* protocol/client: sequence CHILD_UP, CHILD_DOWN etc notificationsKrishnan Parthasarathi2015-02-071-0/+2
* epoll: Adding the ability to configure epoll threadsShyam2015-02-071-1/+2
* uss: disable memory accounting for the snapshot daemonRaghavendra Bhat2015-01-281-2/+20
* api, glusterfsd: Cleanup upon failure in glusterfs_ctx_defaults_init()Vijay Bellur2014-12-091-0/+6
* rdma: client connection establishment takes more timeMohammed Rafi KC2014-11-181-6/+22
* rdma:rdma fuse mount hangs for tcp,rdma volumes if brick is down.Mohammed Rafi KC2014-11-171-1/+1
* mem_acct : Check return value of xlator_mem_acct_init().Humble Chirammal2014-11-152-2/+7
* Enable aux-gfid-mount option on non Linux systemsEmmanuel Dreyfus2014-08-181-3/+0
* osx: Enable qemu feature build on DarwinHarshavardhana2014-08-111-1/+1
* build: make GLUSTERD_WORKDIR rely on localstatedirHarshavardhana2014-08-071-2/+2
* socket/glusterd/client: enable SSL for managementJeff Darcy2014-07-102-0/+24
* rpcsvc: Validate RPC procedure number before fetchSantosh Kumar Pradhan2014-05-171-2/+2
* glusterd/snashot: Perform missed snap createsAvra Sengupta2014-05-061-0/+10
* meta: (re-)Implement Meta translatorAnand Avati2014-05-051-0/+2
* mem-accounting: enable memory accounting by defaultAnand Avati2014-05-051-19/+1
* features/changelog: Barrier in changelog during snapshot.Kotresh H R2014-05-011-8/+16
* logging: Introduce suppression of repetitive log messagesKrutika Dhananjay2014-04-302-0/+78
* glusterd: Add a barrier brick-opKaushal M2014-04-291-0/+111
* build: MacOSX Porting fixesHarshavardhana2014-04-242-2/+2
* logging: Make logger and log format configurable through cliKrutika Dhananjay2014-04-112-0/+34
* gluster: GlusterFS Volume Snapshot FeatureAvra Sengupta2014-04-111-0/+78
* log: Add missing log message from glusterfsd.c to glusterfsd-messages.hKrutika Dhananjay2014-04-052-8/+7
* log: enhance gluster log format with message ID and standardize errno reportingShyamsundarR2014-03-283-167/+221
* glusterfsd: Remove dead code.Raghavendra Talur2014-03-221-2/+0
* glusterfsd: Use gf_strdup instead of assigning a literal.Raghavendra Talur2014-02-161-1/+1
* glusterfsd: Check for NULL before dereference.Jose A. Rivera2014-02-141-1/+2
* protocol/server: do not do root-squashing for trusted clientsRaghavendra Bhat2014-02-102-0/+34
* mount.glusterfs/glusterfsd: Add dummy deprecated *fetch-attempts optionsHarshavardhana2014-02-031-0/+16
* glusterd: Fix race in pid file updateRavishankar N2014-02-031-20/+0
* tests: Add sanity check for mount-optionsPranith Kumar K2014-01-291-2/+3
* core:Fixing NULL dereference issue.surabhi2014-01-221-1/+3
* core: Coverity issue "Use of uninitialized scalar variable"Lalatendu Mohanty2014-01-181-2/+2
* glusterfsd: fix small memory leaks in glusterfsd-mgmt.cKaleb S. KEITHLEY2013-11-301-0/+5
* cli/glusterd: Changes to quota command Quota featureRaghavendra G2013-11-261-0/+5
* mount/fuse: handle --gid-timeout=0 properlyAnand Avati2013-11-201-2/+4
* bd_map: Remove bd_map xlatorM. Mohan Kumar2013-11-131-72/+0
* client_t: phase 2, refactor server_ctx and locks_ctx outKaleb S. KEITHLEY2013-10-311-40/+26
* glusterfsd, libgfapi: destroy the temporary graphs constructed for comparisonRaghavendra Bhat2013-10-031-181/+2
* logging: Expose set_log_file_path() in libglusterfs.Vijay Bellur2013-09-241-60/+1
* logging: Remove multiple definitions of DEFAULT_LOG_FILE_DIRECTORYVijay Bellur2013-09-241-2/+0
* fuse-bridge: enable --fopen-keep-cache based on FUSE_AUTO_INVAL_DATA.Anand Avati2013-09-171-3/+33
* glusterfsd: use-readdirp w/o arguments should not turn off readdirpHarshavardhana2013-09-091-1/+1
* glusterfsd: Round robin DNS should not be relied upon withHarshavardhana2013-09-063-36/+96
* glusterfs, gfapi: fix symbol clashAnand Avati2013-09-051-2/+2
* synctask: minor enhancementsAnand Avati2013-08-281-1/+1
* core: changes to support gfid-accessAmar Tumballi2013-08-212-0/+20
E extras/benchmarking/Makefile glusterfs.spec]) AC_CANONICAL_HOST AC_PROG_CC AC_PROG_LIBTOOL AC_ARG_WITH(mountutildir, [ --with-mountutildir=DIR mount helper utility in DIR @<:@/sbin@:>@], [mountutildir=$withval], [mountutildir='/sbin']) AC_SUBST(mountutildir) # LEX needs a check AC_PROG_LEX if test "x${LEX}" != "xflex" -a "x${FLEX}" != "xlex"; then AC_MSG_ERROR([Flex or lex required to build glusterfs.]) fi # YACC needs a check AC_PROG_YACC if test "x${YACC}" = "xbyacc" -o "x${YACC}" = "xyacc" -o "x${YACC}" = "x"; then AC_MSG_ERROR([GNU Bison required to build glusterfs.]) fi AC_CHECK_TOOL([LD],[ld]) AC_CHECK_LIB([pthread], [pthread_mutex_init], , AC_MSG_ERROR([Posix threads library is required to build glusterfs])) AC_CHECK_FUNC([dlopen], [has_dlopen=yes], AC_CHECK_LIB([dl], [dlopen], , AC_MSG_ERROR([Dynamic linking library required to build glusterfs]))) AC_CHECK_HEADERS([sys/xattr.h]) AC_CHECK_HEADERS([sys/extattr.h]) dnl Mac OS X does not have spinlocks AC_CHECK_FUNC([pthread_spin_init], [have_spinlock=yes]) if test "x${have_spinlock}" = "xyes"; then AC_DEFINE(HAVE_SPINLOCK, 1, [define if found spinlock]) fi AC_SUBST(HAVE_SPINLOCK) dnl some os may not have GNU defined strnlen function AC_CHECK_FUNC([strnlen], [have_strnlen=yes]) if test "x${have_strnlen}" = "xyes"; then AC_DEFINE(HAVE_STRNLEN, 1, [define if found strnlen]) fi AC_SUBST(HAVE_STRNLEN) AC_CHECK_FUNC([setfsuid], [have_setfsuid=yes]) AC_CHECK_FUNC([setfsgid], [have_setfsgid=yes]) if test "x${have_setfsuid}" = "xyes" -a "x${have_setfsgid}" = "xyes"; then AC_DEFINE(HAVE_SET_FSID, 1, [define if found setfsuid setfsgid]) fi # LIBGLUSTERFSCLIENT section AC_ARG_ENABLE([libglusterfsclient], AC_HELP_STRING([--disable-libglusterfsclient], [Do not build libglusterfsclient])) BUILD_LIBGLUSTERFSCLIENT="yes" if test "x$enable_libglusterfsclient" != "xno"; then LIBGLUSTERFSCLIENT_SUBDIR="libglusterfsclient" BUILD_LIBGLUSTERFSCLIENT="yes" fi AC_SUBST(LIBGLUSTERFSCLIENT_SUBDIR) # end LIBGLUSTERFSCLIENT section # FUSE section AC_ARG_ENABLE([fuse-client], AC_HELP_STRING([--disable-fuse-client], [Do not build the fuse client. NOTE: you cannot mount glusterfs without the client])) if test "x$enable_fuse_client" != "xno"; then AC_CHECK_LIB([fuse], [fuse_req_interrupt_func], [HAVE_LIBFUSE="yes"], [HAVE_LIBFUSE="no"]) if test "x$HAVE_LIBFUSE" = "xyes"; then AC_TRY_COMPILE([#define FUSE_USE_VERSION 26 #define _FILE_OFFSET_BITS 64 #include <fuse.h>], #define _GLFS_FUSE_VERSION_28 28 #if (FUSE_VERSION < _GLFS_FUSE_VERSION_28) #error "fuse version 2.8 not found" #endif , [HAVE_FUSE_VERSION_28="yes"], [HAVE_FUSE_VERSION_28="no"]) AC_CHECK_LIB([fuse], [fuse_reply_iov], [HAVE_FUSE_REPLY_IOV="yes"], [HAVE_FUSE_REPLY_IOV="no"]) fi fi if test "x$HAVE_FUSE_REPLY_IOV" = "xyes"; then AC_DEFINE(HAVE_FUSE_REPLY_IOV, 1, [found fuse_reply_iov]) fi if test "x$HAVE_LIBFUSE" = "xyes" -a "x$HAVE_FUSE_VERSION_28" = "xyes"; then AC_DEFINE(HAVE_FUSE_VERSION_28, 1, [found fuse 2.8 version]) fi if test "x$enable_fuse_client" = "xyes" -a "x$HAVE_LIBFUSE" = "xno"; then echo "FUSE requested but not found." exit 1 fi BUILD_FUSE_CLIENT=no if test "x$enable_fuse_client" != "xno" -a "x$HAVE_LIBFUSE" = "xyes"; then FUSE_CLIENT_SUBDIR=fuse BUILD_FUSE_CLIENT="yes" fi AC_SUBST(FUSE_CLIENT_SUBDIR) # end FUSE section # EPOLL section AC_ARG_ENABLE([epoll], AC_HELP_STRING([--disable-epoll], [Use poll instead of epoll.])) BUILD_EPOLL=no if test "x$enable_epoll" != "xno"; then AC_CHECK_HEADERS([sys/epoll.h], [BUILD_EPOLL=yes], [BUILD_EPOLL=no]) fi # end EPOLL section # IBVERBS section AC_ARG_ENABLE([ibverbs], AC_HELP_STRING([--disable-ibverbs], [Do not build the ibverbs transport])) if test "x$enable_ibverbs" != "xno"; then AC_CHECK_LIB([ibverbs], [ibv_get_device_list], [HAVE_LIBIBVERBS="yes"], [HAVE_LIBIBVERBS="no"]) fi if test "x$enable_ibverbs" = "xyes" -a "x$HAVE_LIBIBVERBS" = "xno"; then echo "ibverbs requested but not found." exit 1 fi BUILD_IBVERBS=no if test "x$enable_ibverbs" != "xno" -a "x$HAVE_LIBIBVERBS" = "xyes"; then IBVERBS_SUBDIR=ib-verbs BUILD_IBVERBS=yes fi AC_SUBST(IBVERBS_SUBDIR) # end IBVERBS section # Berkely-DB section # storage/bdb requires Berkeley-DB version 4.6.21 or higher _GLFS_DB_VERSION_MAJOR=4 _GLFS_DB_VERSION_MINOR=6 _GLFS_DB_VERSION_PATCH=21 AC_ARG_ENABLE([db], AC_HELP_STRING([--disable-bdb], [Do not build the Berkeley-DB translator])) if test "x$enable_bdb" != "xno"; then AC_CHECK_HEADERS([db.h], [HAVE_BDB="yes"], [HAVE_BDB="no"]) if test "x$HAVE_BDB" = "xyes"; then AC_CHECK_LIB([db], [db_create], [HAVE_BDB="yes"], [HAVE_BDB="no"]) fi if test "x$HAVE_BDB" = "xyes"; then AC_TRY_COMPILE([#include <db.h>], #if (DB_VERSION_MAJOR < $_GLFS_DB_VERSION_MAJOR) ||\ (DB_VERSION_MAJOR == $_GLFS_DB_VERSION_MAJOR && \ DB_VERSION_MINOR < $_GLFS_DB_VERSION_MINOR) || \ (DB_VERSION_MAJOR == $_GLFS_DB_VERSION_MAJOR && \ DB_VERSION_MINOR == $_GLFS_DB_VERSION_MINOR && \ DB_VERSION_PATCH < $_GLFS_DB_VERSION_PATCH) #error "bdb older than required" #endif , [HAVE_BDB_VERSION="yes"], [HAVE_BDB_VERSION="no"]) dnl check for DB->stat having 4 arguments. AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <db.h>]], [[DB *bdb; bdb->stat (NULL, NULL, NULL, 0);]])], [HAVE_BDB_VERSION=yes], [HAVE_BDB_VERSION=no]) dnl check for DBC->c_get presence. AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <db.h>]], [[DBC *cursor; cursor->get (NULL, NULL, NULL, 0);]])], [HAVE_BDB_CURSOR_GET=yes], [HAVE_BDB_CURSOR_GET=no]) fi fi if test "x$HAVE_BDB_CURSOR_GET" = "xyes" -a "x$HAVE_BDB_VERSION" = "xyes"; then AC_DEFINE(HAVE_BDB_CURSOR_GET, 1, [Berkeley-DB version has cursor->get()]) fi if test "x$enable_bdb" = "xyes" -a "x$HAVE_BDB" = "xno" -a "x$HAVE_BDB_VERSION" = "xno" -a "x$HAVE_BDB_CURSOR_GET" = "xno"; then echo "Berkeley-DB requested but not found. glusterfs bdb feature requires db version 4.6.21 or higher" exit 1 fi BUILD_BDB=no if test "x$enable_bdb" != "xno" -a "x$HAVE_BDB" = "xyes"; then BDB_SUBDIR=bdb BUILD_BDB=yes fi AC_SUBST(BDB_SUBDIR) # end BDB section dnl FreeBSD > 5 has execinfo as a Ported library for giving a workaround dnl solution to GCC backtrace functionality AC_CHECK_HEADERS([execinfo.h], [have_backtrace=yes], AC_CHECK_LIB([execinfo], [backtrace], [have_backtrace=yes])) dnl AC_MSG_ERROR([libexecinfo not found libexecinfo required.]))) if test "x${have_backtrace}" = "xyes"; then AC_DEFINE(HAVE_BACKTRACE, 1, [define if found backtrace]) fi AC_SUBST(HAVE_BACKTRACE) dnl glusterfs prints memory usage to stderr by sending it SIGUSR1 AC_CHECK_FUNC([malloc_stats], [have_malloc_stats=yes]) if test "x${have_malloc_stats}" = "xyes"; then AC_DEFINE(HAVE_MALLOC_STATS, 1, [define if found malloc_stats]) fi AC_SUBST(HAVE_MALLOC_STATS) dnl Linux, Solaris, Cygwin AC_CHECK_MEMBERS([struct stat.st_atim.tv_nsec]) dnl FreeBSD, NetBSD AC_CHECK_MEMBERS([struct stat.st_atimespec.tv_nsec]) dnl Check for argp AC_CHECK_HEADER([argp.h], AC_DEFINE(HAVE_ARGP, 1, [have argp])) AC_CONFIG_SUBDIRS(argp-standalone) BUILD_ARGP_STANDALONE=no if test "x${ac_cv_header_argp_h}" = "xno"; then BUILD_ARGP_STANDALONE=yes ARGP_STANDALONE_CPPFLAGS='-I${top_srcdir}/argp-standalone' ARGP_STANDALONE_LDADD='${top_builddir}/argp-standalone/libargp.a' fi AC_SUBST(ARGP_STANDALONE_CPPFLAGS) AC_SUBST(ARGP_STANDALONE_LDADD) AC_CHECK_HEADER([malloc.h], AC_DEFINE(HAVE_MALLOC_H, 1, [have malloc.h])) AC_CHECK_FUNC([llistxattr], [have_llistxattr=yes]) if test "x${have_llistxattr}" = "xyes"; then AC_DEFINE(HAVE_LLISTXATTR, 1, [define if llistxattr exists]) fi AC_CHECK_FUNC([fdatasync], [have_fdatasync=yes]) if test "x${have_fdatasync}" = "xyes"; then AC_DEFINE(HAVE_FDATASYNC, 1, [define if fdatasync exists]) fi # Check the distribution where you are compiling glusterfs on GF_DISTRIBUTION= AC_CHECK_FILE([/etc/debian_version]) AC_CHECK_FILE([/etc/SuSE-release]) AC_CHECK_FILE([/etc/redhat-release]) if test "x$ac_cv_file__etc_debian_version" = "xyes"; then GF_DISTRIBUTION=Debian fi if test "x$ac_cv_file__etc_SuSE_release" = "xyes"; then GF_DISTRIBUTION=SuSE fi if test "x$ac_cv_file__etc_redhat_release" = "xyes"; then GF_DISTRIBUTION=Redhat fi AC_SUBST(GF_DISTRIBUTION) GF_HOST_OS="" GF_LDFLAGS="-rdynamic" if test "x$BUILD_LIBGLUSTERFSCLIENT" = "xyes"; then GF_BOOSTER_SUBDIR="booster" fi GF_FUSE_LDADD="-lfuse" case $host_os in linux*) dnl GF_LINUX_HOST_OS=1 GF_HOST_OS="GF_LINUX_HOST_OS" GF_CFLAGS="${ARGP_STANDALONE_CPPFLAGS}" GF_GLUSTERFS_CFLAGS="${GF_CFLAGS}" GF_LDADD="${ARGP_STANDALONE_LDADD}" ;; solaris*) GF_HOST_OS="GF_SOLARIS_HOST_OS" GF_CFLAGS="${ARGP_STANDALONE_CPPFLAGS} -D_REENTRANT" GF_LDFLAGS="" GF_GLUSTERFS_CFLAGS="${GF_CFLAGS}" GF_LDADD="${ARGP_STANDALONE_LDADD}" GF_GLUSTERFS_LDFLAGS="-lnsl -lresolv -lsocket" GF_BOOSTER_SUBDIR="" ;; *bsd*) GF_HOST_OS="GF_BSD_HOST_OS" GF_CFLAGS="${ARGP_STANDALONE_CPPFLAGS}" GF_GLUSTERFS_CFLAGS="${GF_CFLAGS}" GF_LDADD="${ARGP_STANDALONE_LDADD}" if test "x$ac_cv_header_execinfo_h" = "xyes"; then GF_GLUSTERFS_LDFLAGS="-lexecinfo" fi GF_FUSE_LDADD="-liconv -lfuse" BUILD_LIBGLUSTERFSCLIENT=no LIBGLUSTERFSCLIENT_SUBDIR="" GF_BOOSTER_SUBDIR="" ;; darwin*) GF_HOST_OS="GF_DARWIN_HOST_OS" LIBTOOL=glibtool GF_CFLAGS="${ARGP_STANDALONE_CPPFLAGS} -D__DARWIN_64_BIT_INO_T -bundle -undefined suppress -flat_namespace" GF_GLUSTERFS_CFLAGS="${ARGP_STANDALONE_CPPFLAGS} -D__DARWIN_64_BIT_INO_T -undefined suppress -flat_namespace" GF_LDADD="${ARGP_STANDALONE_LDADD}" GF_FUSE_LDADD="-liconv -lfuse_ino64" BUILD_LIBGLUSTERFSCLIENT=no LIBGLUSTERFSCLIENT_SUBDIR="" GF_BOOSTER_SUBDIR="" ;; esac AC_SUBST(GF_HOST_OS) AC_SUBST(GF_GLUSTERFS_LDFLAGS) AC_SUBST(GF_GLUSTERFS_CFLAGS) AC_SUBST(GF_CFLAGS) AC_SUBST(GF_LDFLAGS) AC_SUBST(GF_LDADD) AC_SUBST(GF_FUSE_LDADD) AC_SUBST(GF_BOOSTER_SUBDIR) AM_CONDITIONAL([GF_DARWIN_HOST_OS], test "${GF_HOST_OS}" = "GF_DARWIN_HOST_OS") AC_OUTPUT echo echo "GlusterFS configure summary" echo "===========================" echo "FUSE client : $BUILD_FUSE_CLIENT" echo "Infiniband verbs : $BUILD_IBVERBS" echo "epoll IO multiplex : $BUILD_EPOLL" echo "Berkeley-DB : $BUILD_BDB" echo "libglusterfsclient : $BUILD_LIBGLUSTERFSCLIENT" echo "argp-standalone : $BUILD_ARGP_STANDALONE" echo