summaryrefslogtreecommitdiffstats
path: root/api/src/Makefile.am
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 /api/src/Makefile.am
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>
Diffstat (limited to 'api/src/Makefile.am')
-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 a0bbc416dd5..087523823d3 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