[Gluster-devel] [PATCH 15/15] build: make use of system libuuid
Jan Engelhardt
jengelh at inai.de
Tue Sep 25 16:41:13 UTC 2012
Bundled libraries are considered harmful.
(http://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries )
Therefore, make use of a system-installed libuuid if present.
Signed-off-by: Jan Engelhardt <jengelh at inai.de>
---
api/src/Makefile.am | 2 +-
configure.ac | 8 +-
libglusterfs/src/Makefile.am | 28 +++-
libglusterfs/src/common-utils.h | 2 +-
libglusterfs/src/iatt.h | 2 +-
libglusterfs/src/inode.h | 2 +-
xlators/cluster/afr/src/Makefile.am | 6 +-
xlators/cluster/dht/src/Makefile.am | 9 +-
xlators/cluster/stripe/src/Makefile.am | 3 +-
xlators/debug/io-stats/src/Makefile.am | 3 +-
xlators/features/index/src/Makefile.am | 3 +-
xlators/features/marker/src/Makefile.am | 3 +-
xlators/features/marker/src/marker.h | 2 +-
xlators/features/marker/utils/src/gsyncd | 210 ++++++++++++++++++++++++
xlators/features/quota/src/Makefile.am | 3 +-
xlators/mgmt/glusterd/src/Makefile.am | 2 +-
xlators/mgmt/glusterd/src/glusterd-op-sm.c | 2 +-
xlators/mgmt/glusterd/src/glusterd-op-sm.h | 2 +-
xlators/mgmt/glusterd/src/glusterd-pmap.h | 2 +-
xlators/mgmt/glusterd/src/glusterd-sm.c | 2 +-
xlators/mgmt/glusterd/src/glusterd-sm.h | 2 +-
xlators/mgmt/glusterd/src/glusterd-store.h | 2 +-
xlators/mgmt/glusterd/src/glusterd-utils.h | 2 +-
xlators/mgmt/glusterd/src/glusterd.c | 2 +-
xlators/mgmt/glusterd/src/glusterd.h | 2 +-
xlators/mount/fuse/src/Makefile.am | 2 +-
xlators/nfs/server/src/Makefile.am | 3 +-
xlators/nfs/server/src/mount3.h | 2 +-
xlators/nfs/server/src/nfs-common.h | 2 +-
xlators/nfs/server/src/nfs3-fh.h | 2 +-
xlators/nfs/server/src/nlm4.h | 2 +-
xlators/performance/md-cache/src/Makefile.am | 3 +-
xlators/performance/quick-read/src/Makefile.am | 3 +-
xlators/protocol/client/src/Makefile.am | 3 +-
xlators/protocol/server/src/Makefile.am | 3 +-
xlators/storage/posix/src/Makefile.am | 3 +-
36 files changed, 288 insertions(+), 46 deletions(-)
create mode 100755 xlators/features/marker/utils/src/gsyncd
diff --git a/api/src/Makefile.am b/api/src/Makefile.am
index 954a71f..3174744 100644
--- a/api/src/Makefile.am
+++ b/api/src/Makefile.am
@@ -7,7 +7,7 @@ libgfapi_la_SOURCES = glfs.c glfs-mgmt.c glfs-fops.c glfs-resolve.c
libgfapi_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
$(top_builddir)/rpc/rpc-lib/src/libgfrpc.la \
$(top_builddir)/rpc/xdr/src/libgfxdr.la \
- $(GF_LDADD)
+ $(libuuid_LIBS) $(GF_LDADD)
libgfapi_la_CPPFLAGS = $(GF_CPPFLAGS) -D__USE_FILE_OFFSET64 \
-I$(top_srcdir)/libglusterfs/src \
diff --git a/configure.ac b/configure.ac
index db32fee..9a15d09 100644
--- a/configure.ac
+++ b/configure.ac
@@ -362,6 +362,12 @@ AC_SUBST(SYNCDAEMON_COMPILE)
AC_SUBST(SYNCDAEMON_SUBDIR)
# end SYNCDAEMON section
+PKG_CHECK_MODULES([libuuid], [uuid], [], [
+ libuuid_CFLAGS='-I$(CONTRIBDIR)/uuid'
+ with_bundled_libuuid=1
+])
+AM_CONDITIONAL([WITH_BUNDLED_LIBUUID], [test "$with_bundled_libuuid" = 1])
+
#check if libxml is present if so enable HAVE_LIB_XML
echo -n "checking if libxml2 is present... "
@@ -563,7 +569,7 @@ CONTRIBDIR='$(top_srcdir)/contrib'
AC_SUBST(CONTRIBDIR)
GF_CPPFLAGS='-D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D$(GF_HOST_OS) \
- -I$(top_srcdir)/libglusterfs/src -I$(CONTRIBDIR)/uuid'
+ -I$(top_srcdir)/libglusterfs/src $(libuuid_CFLAGS)'
AC_SUBST([GF_CPPFLAGS])
AM_CONDITIONAL([GF_DARWIN_HOST_OS], test "${GF_HOST_OS}" = "GF_DARWIN_HOST_OS")
diff --git a/libglusterfs/src/Makefile.am b/libglusterfs/src/Makefile.am
index eb102a4..0a8a7af 100644
--- a/libglusterfs/src/Makefile.am
+++ b/libglusterfs/src/Makefile.am
@@ -5,7 +5,7 @@ libglusterfs_la_CPPFLAGS = $(GF_CPPFLAGS) -D__USE_FILE_OFFSET64 \
-DXLATORDIR=\"$(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator\" \
-I$(CONTRIBDIR)/rbtree
-libglusterfs_la_LIBADD = @LEXLIB@
+libglusterfs_la_LIBADD = @LEXLIB@ $(libuuid_LIBS)
lib_LTLIBRARIES = libglusterfs.la
@@ -16,16 +16,21 @@ libglusterfs_la_SOURCES = dict.c xlator.c logging.c \
compat.c fd.c compat-errno.c event.c mem-pool.c gf-dirent.c syscall.c \
iobuf.c globals.c statedump.c stack.c checksum.c daemon.c \
$(CONTRIBDIR)/rbtree/rb.c rbthash.c latency.c \
- graph.c $(CONTRIBDIR)/uuid/clear.c $(CONTRIBDIR)/uuid/copy.c \
- $(CONTRIBDIR)/uuid/gen_uuid.c $(CONTRIBDIR)/uuid/pack.c \
- $(CONTRIBDIR)/uuid/parse.c $(CONTRIBDIR)/uuid/unparse.c \
- $(CONTRIBDIR)/uuid/uuid_time.c $(CONTRIBDIR)/uuid/compare.c \
- $(CONTRIBDIR)/uuid/isnull.c $(CONTRIBDIR)/uuid/unpack.c syncop.c \
+ graph.c syncop.c \
graph-print.c trie.c run.c options.c fd-lk.c circ-buff.c \
event-history.c gidcache.c ctx.c \
$(CONTRIBDIR)/libgen/basename_r.c $(CONTRIBDIR)/libgen/dirname_r.c \
event-poll.c event-epoll.c
+if WITH_BUNDLED_LIBUUID
+libglusterfs_la_SOURCES +=
+ $(CONTRIBDIR)/uuid/clear.c $(CONTRIBDIR)/uuid/copy.c \
+ $(CONTRIBDIR)/uuid/gen_uuid.c $(CONTRIBDIR)/uuid/pack.c \
+ $(CONTRIBDIR)/uuid/parse.c $(CONTRIBDIR)/uuid/unparse.c \
+ $(CONTRIBDIR)/uuid/uuid_time.c $(CONTRIBDIR)/uuid/compare.c \
+ $(CONTRIBDIR)/uuid/isnull.c $(CONTRIBDIR)/uuid/unpack.c
+endif
+
nodist_libglusterfs_la_SOURCES = y.tab.c graph.lex.c
@@ -36,11 +41,16 @@ noinst_HEADERS = common-utils.h defaults.h dict.h glusterfs.h hashfn.h \
fd.h revision.h compat-errno.h event.h mem-pool.h byte-order.h \
gf-dirent.h locking.h syscall.h iobuf.h globals.h statedump.h \
checksum.h daemon.h $(CONTRIBDIR)/rbtree/rb.h \
- rbthash.h iatt.h latency.h mem-types.h $(CONTRIBDIR)/uuid/uuidd.h \
- $(CONTRIBDIR)/uuid/uuid.h $(CONTRIBDIR)/uuid/uuidP.h \
- $(CONTRIB_BUILDDIR)/uuid/uuid_types.h syncop.h graph-utils.h trie.h run.h \
+ rbthash.h iatt.h latency.h mem-types.h \
+ syncop.h graph-utils.h trie.h run.h \
options.h lkowner.h fd-lk.h circ-buff.h event-history.h gidcache.h
+if WITH_BUNDLED_LIBUUID
+noinst_HEADERS += $(CONTRIBDIR)/uuid/uuidd.h \
+ $(CONTRIBDIR)/uuid/uuid.h $(CONTRIBDIR)/uuid/uuidP.h \
+ $(CONTRIB_BUILDDIR)/uuid/uuid_types.h
+endif
+
EXTRA_DIST = graph.l graph.y
graph.lex.c: graph.l y.tab.h
diff --git a/libglusterfs/src/common-utils.h b/libglusterfs/src/common-utils.h
index 5968cd0..a0ff0bb 100644
--- a/libglusterfs/src/common-utils.h
+++ b/libglusterfs/src/common-utils.h
@@ -38,7 +38,7 @@ void trap (void);
#include "glusterfs.h"
#include "locking.h"
#include "mem-pool.h"
-#include "uuid.h"
+#include <uuid.h>
diff --git a/libglusterfs/src/iatt.h b/libglusterfs/src/iatt.h
index 60ae590..54f7e63 100644
--- a/libglusterfs/src/iatt.h
+++ b/libglusterfs/src/iatt.h
@@ -22,7 +22,7 @@
#include <unistd.h>
#include "compat.h"
-#include "uuid.h"
+#include <uuid.h>
typedef enum {
IA_INVAL = 0,
diff --git a/libglusterfs/src/inode.h b/libglusterfs/src/inode.h
index 20e28f6..2f54a5d 100644
--- a/libglusterfs/src/inode.h
+++ b/libglusterfs/src/inode.h
@@ -33,7 +33,7 @@ typedef struct _dentry dentry_t;
#include "list.h"
#include "xlator.h"
#include "iatt.h"
-#include "uuid.h"
+#include <uuid.h>
struct _inode_table {
diff --git a/xlators/cluster/afr/src/Makefile.am b/xlators/cluster/afr/src/Makefile.am
index ef6bf97..0a67f8b 100644
--- a/xlators/cluster/afr/src/Makefile.am
+++ b/xlators/cluster/afr/src/Makefile.am
@@ -9,11 +9,13 @@ afr_common_source = afr-dir-read.c afr-dir-write.c afr-inode-read.c \
afr_la_LDFLAGS = -module -avoidversion
afr_la_SOURCES = $(afr_common_source) afr.c
-afr_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+afr_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
pump_la_LDFLAGS = -module -avoidversion
pump_la_SOURCES = $(afr_common_source) pump.c
-pump_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+pump_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
noinst_HEADERS = afr.h afr-transaction.h afr-inode-write.h afr-inode-read.h \
afr-dir-read.h afr-dir-write.h afr-self-heal.h afr-self-heal-common.h \
diff --git a/xlators/cluster/dht/src/Makefile.am b/xlators/cluster/dht/src/Makefile.am
index b78af1f..8edf746 100644
--- a/xlators/cluster/dht/src/Makefile.am
+++ b/xlators/cluster/dht/src/Makefile.am
@@ -13,13 +13,16 @@ nufa_la_SOURCES = $(dht_common_source) nufa.c
switch_la_SOURCES = $(dht_common_source) switch.c
dht_la_LDFLAGS = -module -avoidversion
-dht_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+dht_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
nufa_la_LDFLAGS = -module -avoidversion
-nufa_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+nufa_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
switch_la_LDFLAGS = -module -avoidversion
-switch_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+switch_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
noinst_HEADERS = dht-common.h dht-mem-types.h \
$(top_builddir)/xlators/lib/src/libxlator.h
diff --git a/xlators/cluster/stripe/src/Makefile.am b/xlators/cluster/stripe/src/Makefile.am
index 42846df..d343c8e 100644
--- a/xlators/cluster/stripe/src/Makefile.am
+++ b/xlators/cluster/stripe/src/Makefile.am
@@ -7,7 +7,8 @@ stripe_la_LDFLAGS = -module -avoidversion
stripe_la_SOURCES = stripe.c stripe-helpers.c \
$(top_builddir)/xlators/lib/src/libxlator.c
-stripe_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+stripe_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
noinst_HEADERS = stripe.h stripe-mem-types.h $(top_builddir)/xlators/lib/src/libxlator.h
diff --git a/xlators/debug/io-stats/src/Makefile.am b/xlators/debug/io-stats/src/Makefile.am
index 08d2611..c885ddc 100644
--- a/xlators/debug/io-stats/src/Makefile.am
+++ b/xlators/debug/io-stats/src/Makefile.am
@@ -5,7 +5,8 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/debug
io_stats_la_LDFLAGS = -module -avoidversion
io_stats_la_SOURCES = io-stats.c
-io_stats_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+io_stats_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
noinst_HEADERS = io-stats-mem-types.h
diff --git a/xlators/features/index/src/Makefile.am b/xlators/features/index/src/Makefile.am
index a550c1f..1bdd860 100644
--- a/xlators/features/index/src/Makefile.am
+++ b/xlators/features/index/src/Makefile.am
@@ -4,7 +4,8 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features
index_la_LDFLAGS = -module -avoidversion
index_la_SOURCES = index.c
-index_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+index_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
noinst_HEADERS = index.h index-mem-types.h
diff --git a/xlators/features/marker/src/Makefile.am b/xlators/features/marker/src/Makefile.am
index 5c350b6..2400c0b 100644
--- a/xlators/features/marker/src/Makefile.am
+++ b/xlators/features/marker/src/Makefile.am
@@ -4,7 +4,8 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features
marker_la_LDFLAGS = -module -avoidversion
marker_la_SOURCES = marker.c marker-quota.c marker-quota-helper.c marker-common.c
-marker_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+marker_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
noinst_HEADERS = marker-mem-types.h marker.h marker-quota.h marker-quota-helper.h marker-common.h $(top_builddir)/xlators/lib/src/libxlator.h
diff --git a/xlators/features/marker/src/marker.h b/xlators/features/marker/src/marker.h
index 63491ab..a090169 100644
--- a/xlators/features/marker/src/marker.h
+++ b/xlators/features/marker/src/marker.h
@@ -18,7 +18,7 @@
#include "marker-quota.h"
#include "xlator.h"
#include "defaults.h"
-#include "uuid.h"
+#include <uuid.h>
#include "call-stub.h"
#define MARKER_XATTR_PREFIX "trusted.glusterfs"
diff --git a/xlators/features/marker/utils/src/gsyncd b/xlators/features/marker/utils/src/gsyncd
new file mode 100755
index 0000000..e737030
--- /dev/null
+++ b/xlators/features/marker/utils/src/gsyncd
@@ -0,0 +1,210 @@
+#! /bin/sh
+
+# gsyncd - temporary wrapper script for .libs/gsyncd
+# Generated by libtool (GNU libtool) 2.4.2
+#
+# The gsyncd program cannot be directly executed until all the libtool
+# libraries that it depends on are installed.
+#
+# This wrapper script should never be moved out of the build directory.
+# If it is, it will not operate correctly.
+
+# Sed substitution that helps us do robust quoting. It backslashifies
+# metacharacters that are still active within double-quoted strings.
+sed_quote_subst='s/\([`"$\\]\)/\\\1/g'
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
+fi
+BIN_SH=xpg4; export BIN_SH # for Tru64
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+relink_command=""
+
+# This environment variable determines our operation mode.
+if test "$libtool_install_magic" = "%%%MAGIC variable%%%"; then
+ # install mode needs the following variables:
+ generated_by_libtool_version='2.4.2'
+ notinst_deplibs=' ../../../../../libglusterfs/src/libglusterfs.la'
+else
+ # When we are sourced in execute mode, $file and $ECHO are already set.
+ if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then
+ file="$0"
+
+# A function that is used when there is no print builtin or printf.
+func_fallback_echo ()
+{
+ eval 'cat <<_LTECHO_EOF
+$1
+_LTECHO_EOF'
+}
+ ECHO="printf %s\\n"
+ fi
+
+# Very basic option parsing. These options are (a) specific to
+# the libtool wrapper, (b) are identical between the wrapper
+# /script/ and the wrapper /executable/ which is used only on
+# windows platforms, and (c) all begin with the string --lt-
+# (application programs are unlikely to have options which match
+# this pattern).
+#
+# There are only two supported options: --lt-debug and
+# --lt-dump-script. There is, deliberately, no --lt-help.
+#
+# The first argument to this parsing function should be the
+# script's ../../../../../libtool value, followed by no.
+lt_option_debug=
+func_parse_lt_options ()
+{
+ lt_script_arg0=$0
+ shift
+ for lt_opt
+ do
+ case "$lt_opt" in
+ --lt-debug) lt_option_debug=1 ;;
+ --lt-dump-script)
+ lt_dump_D=`$ECHO "X$lt_script_arg0" | /usr/bin/sed -e 's/^X//' -e 's%/[^/]*$%%'`
+ test "X$lt_dump_D" = "X$lt_script_arg0" && lt_dump_D=.
+ lt_dump_F=`$ECHO "X$lt_script_arg0" | /usr/bin/sed -e 's/^X//' -e 's%^.*/%%'`
+ cat "$lt_dump_D/$lt_dump_F"
+ exit 0
+ ;;
+ --lt-*)
+ $ECHO "Unrecognized --lt- option: '$lt_opt'" 1>&2
+ exit 1
+ ;;
+ esac
+ done
+
+ # Print the debug banner immediately:
+ if test -n "$lt_option_debug"; then
+ echo "gsyncd:gsyncd:${LINENO}: libtool wrapper (GNU libtool) 2.4.2" 1>&2
+ fi
+}
+
+# Used when --lt-debug. Prints its arguments to stdout
+# (redirection is the responsibility of the caller)
+func_lt_dump_args ()
+{
+ lt_dump_args_N=1;
+ for lt_arg
+ do
+ $ECHO "gsyncd:gsyncd:${LINENO}: newargv[$lt_dump_args_N]: $lt_arg"
+ lt_dump_args_N=`expr $lt_dump_args_N + 1`
+ done
+}
+
+# Core function for launching the target application
+func_exec_program_core ()
+{
+
+ if test -n "$lt_option_debug"; then
+ $ECHO "gsyncd:gsyncd:${LINENO}: newargv[0]: $progdir/$program" 1>&2
+ func_lt_dump_args ${1+"$@"} 1>&2
+ fi
+ exec "$progdir/$program" ${1+"$@"}
+
+ $ECHO "$0: cannot exec $program $*" 1>&2
+ exit 1
+}
+
+# A function to encapsulate launching the target application
+# Strips options in the --lt-* namespace from $@ and
+# launches target application with the remaining arguments.
+func_exec_program ()
+{
+ case " $* " in
+ *\ --lt-*)
+ for lt_wr_arg
+ do
+ case $lt_wr_arg in
+ --lt-*) ;;
+ *) set x "$@" "$lt_wr_arg"; shift;;
+ esac
+ shift
+ done ;;
+ esac
+ func_exec_program_core ${1+"$@"}
+}
+
+ # Parse options
+ func_parse_lt_options "$0" ${1+"$@"}
+
+ # Find the directory that this script lives in.
+ thisdir=`$ECHO "$file" | /usr/bin/sed 's%/[^/]*$%%'`
+ test "x$thisdir" = "x$file" && thisdir=.
+
+ # Follow symbolic links until we get to the real thisdir.
+ file=`ls -ld "$file" | /usr/bin/sed -n 's/.*-> //p'`
+ while test -n "$file"; do
+ destdir=`$ECHO "$file" | /usr/bin/sed 's%/[^/]*$%%'`
+
+ # If there was a directory component, then change thisdir.
+ if test "x$destdir" != "x$file"; then
+ case "$destdir" in
+ [\\/]* | [A-Za-z]:[\\/]*) thisdir="$destdir" ;;
+ *) thisdir="$thisdir/$destdir" ;;
+ esac
+ fi
+
+ file=`$ECHO "$file" | /usr/bin/sed 's%^.*/%%'`
+ file=`ls -ld "$thisdir/$file" | /usr/bin/sed -n 's/.*-> //p'`
+ done
+
+ # Usually 'no', except on cygwin/mingw when embedded into
+ # the cwrapper.
+ WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=no
+ if test "$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR" = "yes"; then
+ # special case for '.'
+ if test "$thisdir" = "."; then
+ thisdir=`pwd`
+ fi
+ # remove .libs from thisdir
+ case "$thisdir" in
+ *[\\/].libs ) thisdir=`$ECHO "$thisdir" | /usr/bin/sed 's%[\\/][^\\/]*$%%'` ;;
+ .libs ) thisdir=. ;;
+ esac
+ fi
+
+ # Try to get the absolute directory name.
+ absdir=`cd "$thisdir" && pwd`
+ test -n "$absdir" && thisdir="$absdir"
+
+ program='gsyncd'
+ progdir="$thisdir/.libs"
+
+
+ if test -f "$progdir/$program"; then
+ # Add our own library path to LD_LIBRARY_PATH
+ LD_LIBRARY_PATH="/home/jengelh/obs/zu/filesystems/glusterfs/glusterfs/libglusterfs/src/.libs:$LD_LIBRARY_PATH"
+
+ # Some systems cannot cope with colon-terminated LD_LIBRARY_PATH
+ # The second colon is a workaround for a bug in BeOS R4 sed
+ LD_LIBRARY_PATH=`$ECHO "$LD_LIBRARY_PATH" | /usr/bin/sed 's/::*$//'`
+
+ export LD_LIBRARY_PATH
+
+ if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then
+ # Run the actual program with our arguments.
+ func_exec_program ${1+"$@"}
+ fi
+ else
+ # The program doesn't exist.
+ $ECHO "$0: error: \`$progdir/$program' does not exist" 1>&2
+ $ECHO "This script is just a wrapper for $program." 1>&2
+ $ECHO "See the libtool documentation for more information." 1>&2
+ exit 1
+ fi
+fi
diff --git a/xlators/features/quota/src/Makefile.am b/xlators/features/quota/src/Makefile.am
index 6c97e75..48d25c9 100644
--- a/xlators/features/quota/src/Makefile.am
+++ b/xlators/features/quota/src/Makefile.am
@@ -4,7 +4,8 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/features
quota_la_LDFLAGS = -module -avoidversion
quota_la_SOURCES = quota.c
-quota_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+quota_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
noinst_HEADERS = quota-mem-types.h quota.h
diff --git a/xlators/mgmt/glusterd/src/Makefile.am b/xlators/mgmt/glusterd/src/Makefile.am
index 95d2aba..3d7fdb1 100644
--- a/xlators/mgmt/glusterd/src/Makefile.am
+++ b/xlators/mgmt/glusterd/src/Makefile.am
@@ -13,7 +13,7 @@ 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 \
- $(LIBXML2_LIBS) -lcrypto
+ $(LIBXML2_LIBS) -lcrypto $(libuuid_LIBS)
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/mgmt/glusterd/src/glusterd-op-sm.c b/xlators/mgmt/glusterd/src/glusterd-op-sm.c
index f85ed81..4a21f17 100644
--- a/xlators/mgmt/glusterd/src/glusterd-op-sm.c
+++ b/xlators/mgmt/glusterd/src/glusterd-op-sm.c
@@ -18,7 +18,7 @@
#include <sys/mount.h>
#include <libgen.h>
-#include "uuid.h"
+#include <uuid.h>
#include "fnmatch.h"
#include "xlator.h"
diff --git a/xlators/mgmt/glusterd/src/glusterd-op-sm.h b/xlators/mgmt/glusterd/src/glusterd-op-sm.h
index 62ebcba..5da22bc 100644
--- a/xlators/mgmt/glusterd/src/glusterd-op-sm.h
+++ b/xlators/mgmt/glusterd/src/glusterd-op-sm.h
@@ -20,7 +20,7 @@
#endif
#include <pthread.h>
-#include "uuid.h"
+#include <uuid.h>
#include "glusterfs.h"
#include "xlator.h"
diff --git a/xlators/mgmt/glusterd/src/glusterd-pmap.h b/xlators/mgmt/glusterd/src/glusterd-pmap.h
index 6336ee9..63ed201 100644
--- a/xlators/mgmt/glusterd/src/glusterd-pmap.h
+++ b/xlators/mgmt/glusterd/src/glusterd-pmap.h
@@ -16,7 +16,7 @@
#endif
#include <pthread.h>
-#include "uuid.h"
+#include <uuid.h>
#include "glusterfs.h"
#include "xlator.h"
diff --git a/xlators/mgmt/glusterd/src/glusterd-sm.c b/xlators/mgmt/glusterd/src/glusterd-sm.c
index a60eb53..0731c08 100644
--- a/xlators/mgmt/glusterd/src/glusterd-sm.c
+++ b/xlators/mgmt/glusterd/src/glusterd-sm.c
@@ -17,7 +17,7 @@
#include <sys/resource.h>
#include <libgen.h>
-#include "uuid.h"
+#include <uuid.h>
#include "fnmatch.h"
#include "xlator.h"
diff --git a/xlators/mgmt/glusterd/src/glusterd-sm.h b/xlators/mgmt/glusterd/src/glusterd-sm.h
index 011578d..a4288a0 100644
--- a/xlators/mgmt/glusterd/src/glusterd-sm.h
+++ b/xlators/mgmt/glusterd/src/glusterd-sm.h
@@ -16,7 +16,7 @@
#endif
#include <pthread.h>
-#include "uuid.h"
+#include <uuid.h>
#include "rpc-clnt.h"
#include "glusterfs.h"
diff --git a/xlators/mgmt/glusterd/src/glusterd-store.h b/xlators/mgmt/glusterd/src/glusterd-store.h
index dd34250..f47577c 100644
--- a/xlators/mgmt/glusterd/src/glusterd-store.h
+++ b/xlators/mgmt/glusterd/src/glusterd-store.h
@@ -16,7 +16,7 @@
#endif
#include <pthread.h>
-#include "uuid.h"
+#include <uuid.h>
#include "glusterfs.h"
#include "xlator.h"
diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.h b/xlators/mgmt/glusterd/src/glusterd-utils.h
index 167bffa..e1d2d79 100644
--- a/xlators/mgmt/glusterd/src/glusterd-utils.h
+++ b/xlators/mgmt/glusterd/src/glusterd-utils.h
@@ -16,7 +16,7 @@
#endif
#include <pthread.h>
-#include "uuid.h"
+#include <uuid.h>
#include "glusterfs.h"
#include "xlator.h"
diff --git a/xlators/mgmt/glusterd/src/glusterd.c b/xlators/mgmt/glusterd/src/glusterd.c
index fdcc38d..d5e1d81 100644
--- a/xlators/mgmt/glusterd/src/glusterd.c
+++ b/xlators/mgmt/glusterd/src/glusterd.c
@@ -18,7 +18,7 @@
#include <sys/resource.h>
#include <libgen.h>
-#include "uuid.h"
+#include <uuid.h>
#include "glusterd.h"
#include "rpcsvc.h"
diff --git a/xlators/mgmt/glusterd/src/glusterd.h b/xlators/mgmt/glusterd/src/glusterd.h
index 0abe80e..400b5c7 100644
--- a/xlators/mgmt/glusterd/src/glusterd.h
+++ b/xlators/mgmt/glusterd/src/glusterd.h
@@ -20,7 +20,7 @@
#include <pthread.h>
#include <libgen.h>
-#include "uuid.h"
+#include <uuid.h>
#include "rpc-clnt.h"
#include "glusterfs.h"
diff --git a/xlators/mount/fuse/src/Makefile.am b/xlators/mount/fuse/src/Makefile.am
index 4e92870..12764af 100644
--- a/xlators/mount/fuse/src/Makefile.am
+++ b/xlators/mount/fuse/src/Makefile.am
@@ -25,7 +25,7 @@ fuse_la_SOURCES = fuse-helpers.c fuse-resolve.c fuse-bridge.c \
$(CONTRIBDIR)/fuse-lib/misc.c $(mount_source)
fuse_la_LDFLAGS = -module -avoidversion
-fuse_la_LIBADD = @GF_FUSE_LDADD@
+fuse_la_LIBADD = @GF_FUSE_LDADD@ $(libuuid_LIBS)
AM_CPPFLAGS = $(GF_CPPFLAGS) \
-I$(top_srcdir)/libglusterfs/src -I$(CONTRIBDIR)/fuse-include \
diff --git a/xlators/nfs/server/src/Makefile.am b/xlators/nfs/server/src/Makefile.am
index e224896..499bfc4 100644
--- a/xlators/nfs/server/src/Makefile.am
+++ b/xlators/nfs/server/src/Makefile.am
@@ -5,7 +5,8 @@ server_la_LDFLAGS = -module -avoidversion
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
-server_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+server_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
noinst_HEADERS = nfs.h nfs-common.h nfs-fops.h nfs-inodes.h nfs-generics.h \
mount3.h nfs3-fh.h nfs3.h nfs3-helpers.h nfs-mem-types.h nlm4.h
diff --git a/xlators/nfs/server/src/mount3.h b/xlators/nfs/server/src/mount3.h
index c0eae36..eee18a4 100644
--- a/xlators/nfs/server/src/mount3.h
+++ b/xlators/nfs/server/src/mount3.h
@@ -34,7 +34,7 @@
#include "xdr-nfs3.h"
#include "locking.h"
#include "nfs3-fh.h"
-#include "uuid.h"
+#include <uuid.h>
/* Registered with portmap */
#define GF_MOUNTV3_PORT 38465
diff --git a/xlators/nfs/server/src/nfs-common.h b/xlators/nfs/server/src/nfs-common.h
index 88fc149..8a4e5e4 100644
--- a/xlators/nfs/server/src/nfs-common.h
+++ b/xlators/nfs/server/src/nfs-common.h
@@ -30,7 +30,7 @@
#include "xlator.h"
#include "rpcsvc.h"
#include "iatt.h"
-#include "uuid.h"
+#include <uuid.h>
//NFS_PATH_MAX hard-coded to 4096 as a work around for bug 2476.
//nfs server crashes when path received is longer than PATH_MAX
diff --git a/xlators/nfs/server/src/nfs3-fh.h b/xlators/nfs/server/src/nfs3-fh.h
index a9002af..1a5891d 100644
--- a/xlators/nfs/server/src/nfs3-fh.h
+++ b/xlators/nfs/server/src/nfs3-fh.h
@@ -29,7 +29,7 @@
#include "xdr-nfs3.h"
#include "iatt.h"
#include <sys/types.h>
-#include "uuid.h"
+#include <uuid.h>
/* BIG FAT WARNING: The file handle code is tightly coupled to NFSv3 file
* handles for now. This will change if and when we need v4. */
diff --git a/xlators/nfs/server/src/nlm4.h b/xlators/nfs/server/src/nlm4.h
index 0cc82f1..1ec53cf 100644
--- a/xlators/nfs/server/src/nlm4.h
+++ b/xlators/nfs/server/src/nlm4.h
@@ -36,7 +36,7 @@
#include "xdr-nfs3.h"
#include "locking.h"
#include "nfs3-fh.h"
-#include "uuid.h"
+#include <uuid.h>
#include "nlm4-xdr.h"
#include "lkowner.h"
diff --git a/xlators/performance/md-cache/src/Makefile.am b/xlators/performance/md-cache/src/Makefile.am
index bd09c15..deeb693 100644
--- a/xlators/performance/md-cache/src/Makefile.am
+++ b/xlators/performance/md-cache/src/Makefile.am
@@ -4,7 +4,8 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance
md_cache_la_LDFLAGS = -module -avoidversion
md_cache_la_SOURCES = md-cache.c
-md_cache_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+md_cache_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
noinst_HEADERS = md-cache-mem-types.h
diff --git a/xlators/performance/quick-read/src/Makefile.am b/xlators/performance/quick-read/src/Makefile.am
index 790f1e9..93e0e6d 100644
--- a/xlators/performance/quick-read/src/Makefile.am
+++ b/xlators/performance/quick-read/src/Makefile.am
@@ -4,7 +4,8 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/performance
quick_read_la_LDFLAGS = -module -avoidversion
quick_read_la_SOURCES = quick-read.c
-quick_read_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+quick_read_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
+ $(libuuid_LIBS)
noinst_HEADERS = quick-read.h quick-read-mem-types.h
diff --git a/xlators/protocol/client/src/Makefile.am b/xlators/protocol/client/src/Makefile.am
index 7eed689..0e1cbc8 100644
--- a/xlators/protocol/client/src/Makefile.am
+++ b/xlators/protocol/client/src/Makefile.am
@@ -6,7 +6,8 @@ client_la_LDFLAGS = -module -avoidversion
client_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
$(top_builddir)/rpc/rpc-lib/src/libgfrpc.la \
- $(top_builddir)/rpc/xdr/src/libgfxdr.la
+ $(top_builddir)/rpc/xdr/src/libgfxdr.la \
+ $(libuuid_LIBS)
client_la_SOURCES = client.c client-helpers.c client-rpc-fops.c \
client-handshake.c client-callback.c client-lk.c
diff --git a/xlators/protocol/server/src/Makefile.am b/xlators/protocol/server/src/Makefile.am
index c7ac381..698115a 100644
--- a/xlators/protocol/server/src/Makefile.am
+++ b/xlators/protocol/server/src/Makefile.am
@@ -5,7 +5,8 @@ server_la_LDFLAGS = -module -avoidversion
server_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la \
$(top_builddir)/rpc/rpc-lib/src/libgfrpc.la \
- $(top_builddir)/rpc/xdr/src/libgfxdr.la
+ $(top_builddir)/rpc/xdr/src/libgfxdr.la \
+ $(libuuid_LIBS)
server_la_SOURCES = server.c server-resolve.c server-helpers.c \
server-rpc-fops.c server-handshake.c authenticate.c
diff --git a/xlators/storage/posix/src/Makefile.am b/xlators/storage/posix/src/Makefile.am
index 03623cf..46b7c40 100644
--- a/xlators/storage/posix/src/Makefile.am
+++ b/xlators/storage/posix/src/Makefile.am
@@ -5,7 +5,8 @@ xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/storage
posix_la_LDFLAGS = -module -avoidversion
posix_la_SOURCES = posix.c posix-helpers.c posix-handle.c posix-aio.c
-posix_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la $(LIBAIO)
+posix_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la $(LIBAIO) \
+ $(libuuid_LIBS)
noinst_HEADERS = posix.h posix-mem-types.h posix-handle.h posix-aio.h
--
1.7.10.4
More information about the Gluster-devel
mailing list