[augeas-devel] augeas: master - libfa: use linker script to only export public symbols
David Lutterkort
lutter at fedoraproject.org
Fri Jun 12 00:34:45 UTC 2009
Gitweb: http://git.fedorahosted.org/git/augeas.git?p=augeas.git;a=commitdiff;h=65434dca22c1bd4d580a5ed2944e8df63efd8140
Commit: 65434dca22c1bd4d580a5ed2944e8df63efd8140
Parent: 86522768bcd5981ade7e4744a13fd91d1b537079
Author: David Lutterkort <lutter at redhat.com>
AuthorDate: Thu Jun 11 17:33:34 2009 -0700
Committer: David Lutterkort <lutter at redhat.com>
CommitterDate: Thu Jun 11 17:33:34 2009 -0700
libfa: use linker script to only export public symbols
libfa was exporting all kinds of symbols that were meant to be internal;
now it only exports what's in fa.h
---
src/Makefile.am | 11 +++++++----
src/fa_sym.version | 23 +++++++++++++++++++++++
tests/Makefile.am | 2 +-
3 files changed, 31 insertions(+), 5 deletions(-)
diff --git a/src/Makefile.am b/src/Makefile.am
index 2cc4bb8..e7a472b 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -26,12 +26,15 @@ libaugeas_la_SOURCES = augeas.h augeas.c pathx.c \
transform.h transform.c ast.c get.c put.c list.h
if USE_VERSION_SCRIPT
- VERSION_SCRIPT = $(VERSION_SCRIPT_FLAGS)$(srcdir)/augeas_sym.version
+ AUGEAS_VERSION_SCRIPT = $(VERSION_SCRIPT_FLAGS)$(srcdir)/augeas_sym.version
+ FA_VERSION_SCRIPT = $(VERSION_SCRIPT_FLAGS)$(srcdir)/fa_sym.version
else
- VERSION_SCRIPT =
+ AUGEAS_VERSION_SCRIPT =
+ FA_VERSION_SCRIPT =
endif
-libaugeas_la_LDFLAGS = $(VERSION_SCRIPT) -version-info $(LIBAUGEAS_VERSION_INFO)
+libaugeas_la_LDFLAGS = $(AUGEAS_VERSION_SCRIPT) \
+ -version-info $(LIBAUGEAS_VERSION_INFO)
libaugeas_la_LIBADD = liblexer.la libfa.la $(LIB_SELINUX) $(GNULIB)
augtool_SOURCES = augtool.c
@@ -41,7 +44,7 @@ augparse_SOURCES = augparse.c
augparse_LDADD = libaugeas.la $(GNULIB)
libfa_la_SOURCES = fa.c fa.h hash.c hash.h memory.c memory.h ref.h
-libfa_la_LDFLAGS = -version-info $(LIBFA_VERSION_INFO)
+libfa_la_LDFLAGS = $(FA_VERSION_SCRIPT) -version-info $(LIBFA_VERSION_INFO)
liblexer_la_SOURCES = lexer.l
liblexer_la_CFLAGS = $(AM_CFLAGS) -Wno-error
diff --git a/src/fa_sym.version b/src/fa_sym.version
new file mode 100644
index 0000000..ab81e8e
--- /dev/null
+++ b/src/fa_sym.version
@@ -0,0 +1,23 @@
+FA_1.0.0 {
+ global:
+ fa_minimization_algorithm;
+ fa_compile;
+ fa_make_basic;
+ fa_is_basic;
+ fa_minimize;
+ fa_concat;
+ fa_union;
+ fa_intersect;
+ fa_complement;
+ fa_minus;
+ fa_iter;
+ fa_contains;
+ fa_equals;
+ fa_free;
+ fa_dot;
+ fa_overlap;
+ fa_example;
+ fa_ambig_example;
+ fa_as_regexp;
+ local: *;
+};
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 4b36713..1f5d1ef 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -33,7 +33,7 @@ INCLUDES = -I$(top_srcdir)/src
fatest_SOURCES = fatest.c cutest.c cutest.h
fatest_LDADD = $(top_builddir)/src/libaugeas.la $(GNULIB)
-test_xpath_SOURCES = test-xpath.c
+test_xpath_SOURCES = test-xpath.c $(top_srcdir)/src/memory.c
test_xpath_LDADD = $(top_builddir)/src/libaugeas.la $(GNULIB)
test_load_SOURCES = test-load.c cutest.c cutest.h
More information about the augeas-devel
mailing list