summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnand Avati <avati@redhat.com>2013-05-29 03:15:19 -0700
committerVijay Bellur <vbellur@redhat.com>2013-05-29 05:27:33 -0700
commitdeaf7574a6cb519cf678196476697db9fe69edd0 (patch)
tree21d2a7191b62fe26a9bdedc26d1a7a4df8bb5367
parentac8deb16b5f0aa131373f945cec205af90eaad4d (diff)
api/Makefile: link api.so against libgfapi (and dependencies)
Samba opens vfs_gluster.so with dlopen(..,RTLD_LOCAL). This makes the symobls in the shared module and the library it exclusively links against (specifically gfapi) not resolvable from the .so files which are opened in turn within (like xlator .so files) unless explicitly linked against the dependent libraries. This is not otherwise required in case of glusterfsd as the main executable symbols are always available for resolution from dlopen()'ed shared objects, making Samba's vfs_glusterfs requirement unique, but luckily not incompatible. Change-Id: I894c521daade7d46ec5bf07793f2eea02ebc9700 BUG: 953694 Signed-off-by: Anand Avati <avati@redhat.com> Reviewed-on: http://review.gluster.org/5105 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vbellur@redhat.com>
-rw-r--r--api/src/Makefile.am7
1 files changed, 6 insertions, 1 deletions
diff --git a/api/src/Makefile.am b/api/src/Makefile.am
index a0bbc416d..087523823 100644
--- a/api/src/Makefile.am
+++ b/api/src/Makefile.am
@@ -14,13 +14,18 @@ libgfapi_la_CPPFLAGS = $(GF_CPPFLAGS) -D__USE_FILE_OFFSET64 \
-I$(top_srcdir)/rpc/rpc-lib/src \
-I$(top_srcdir)/rpc/xdr/src
+api.la: libgfapi.la
+
xlator_LTLIBRARIES = api.la
xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/mount
api_la_SOURCES = glfs-master.c
api_la_LDFLAGS = -module -avoid-version
-api_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
+api_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)/api/src/libgfapi.la
AM_CPPFLAGS = $(GF_CPPFLAGS) -I$(top_srcdir)/libglusterfs/src