diff options
author | Prashanth Pai <ppai@redhat.com> | 2018-05-10 18:25:56 +0530 |
---|---|---|
committer | Amar Tumballi <amarts@redhat.com> | 2018-05-18 04:22:42 +0000 |
commit | 89e1a4e5720509c096ff6860c1a8c483e0019278 (patch) | |
tree | 88f1fabf37eff57db85c23822f305f4f16c4e280 /xlators/cluster | |
parent | c2cf3f686f3ea0efd936d2eafc404fc9d2e0acc7 (diff) |
build: Disallow unresolved symbol references
In the past, it was often[1] forgotten for xlators to be linked against
the symbols they refer to. This often caused glusterd2 to fail while
loading xlator's shared object (.so) file.
This change adds "--no-undefined" as a linker flag which causes the
linker to treat unresolved symbol references as an error and hence fail
linking.
[1]:
https://review.gluster.org/#/c/19912/
https://review.gluster.org/#/c/19664/
https://review.gluster.org/#/c/19056/
https://review.gluster.org/#/c/17659/
https://bugzilla.redhat.com/show_bug.cgi?id=1532238
Bonus:
Added cloudsync and utime xlator's generated source files to .gitignore
Updates: bz#1193929
Change-Id: I9604a4a87b7313a5fa43bda5fdb37dfa7ef8facd
Signed-off-by: Prashanth Pai <ppai@redhat.com>
Diffstat (limited to 'xlators/cluster')
-rw-r--r-- | xlators/cluster/dht/src/Makefile.am | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/xlators/cluster/dht/src/Makefile.am b/xlators/cluster/dht/src/Makefile.am index 525a214c24a..59f87cf7bdc 100644 --- a/xlators/cluster/dht/src/Makefile.am +++ b/xlators/cluster/dht/src/Makefile.am @@ -18,20 +18,24 @@ nufa_la_SOURCES = $(dht_common_source) nufa.c switch_la_SOURCES = $(dht_common_source) switch.c tier_la_SOURCES = $(dht_common_source) tier.c tier-common.c -dht_la_LDFLAGS = -module -avoid-version -export-symbols \ - $(top_srcdir)/xlators/cluster/dht/src/dht.sym +dht_la_LDFLAGS = -module -avoid-version \ + -export-symbols $(top_srcdir)/xlators/cluster/dht/src/dht.sym \ + $(GF_NO_UNDEFINED) dht_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la -nufa_la_LDFLAGS = -module -avoid-version -export-symbols \ - $(top_srcdir)/xlators/cluster/dht/src/nufa.sym +nufa_la_LDFLAGS = -module -avoid-version \ + -export-symbols $(top_srcdir)/xlators/cluster/dht/src/nufa.sym \ + $(GF_NO_UNDEFINED) nufa_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la -switch_la_LDFLAGS = -module -avoid-version -export-symbols \ - $(top_srcdir)/xlators/cluster/dht/src/switch.sym +switch_la_LDFLAGS = -module -avoid-version + -export-symbols $(top_srcdir)/xlators/cluster/dht/src/switch.sym \ + $(GF_NO_UNDEFINED) switch_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la -tier_la_LDFLAGS = -module -avoid-version -export-symbols \ - $(top_srcdir)/xlators/cluster/dht/src/tier.sym +tier_la_LDFLAGS = -module -avoid-version \ + -export-symbols $(top_srcdir)/xlators/cluster/dht/src/tier.sym \ + $(GF_NO_UNDEFINED) tier_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la noinst_HEADERS = dht-common.h dht-mem-types.h dht-messages.h \ |