From 51bc836ad3fd52ed72289028871318d561b2959a Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Wed, 11 Feb 2009 16:40:29 +0100 Subject: libiptc: make library available as a shared library Tested-by: Jesper Dangaard Brouer Signed-off-by: Jan Engelhardt --- .gitignore | 1 + Makefile.am | 18 ++++++++++-------- configure.ac | 2 +- include/Makefile.am | 4 ++++ libiptc.pc.in | 11 +++++++++++ 5 files changed, 27 insertions(+), 9 deletions(-) create mode 100644 libiptc.pc.in diff --git a/.gitignore b/.gitignore index 97c30045..e5d30996 100644 --- a/.gitignore +++ b/.gitignore @@ -35,6 +35,7 @@ Makefile.in /ltmain.sh /missing /stamp-h1 +/libiptc.pc /xtables.pc /ip6tables diff --git a/Makefile.am b/Makefile.am index a79ff67b..41dc280a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -11,11 +11,14 @@ endif if ENABLE_LIBIPQ SUBDIRS += libipq endif +lib_LTLIBRARIES = # libiptc -libiptc_libiptc_a_SOURCES = libiptc/libip4tc.c libiptc/libip6tc.c +lib_LTLIBRARIES += libiptc/libiptc.la +libiptc_libiptc_la_SOURCES = libiptc/libip4tc.c libiptc/libip6tc.c +libiptc_libiptc_la_LDFLAGS = -version-info 0:0:0 -lib_LTLIBRARIES = libxtables.la +lib_LTLIBRARIES += libxtables.la libxtables_la_SOURCES = xtables.c libxtables_la_LDFLAGS = -version-info ${libxtables_vcurrent}:0:${libxtables_vage} libxtables_la_LIBADD = -ldl @@ -23,7 +26,7 @@ libxtables_la_LIBADD = -ldl # iptables, dynamic iptables_SOURCES = iptables-standalone.c iptables.c iptables_LDFLAGS = -rdynamic -iptables_LDADD = -lm libiptc/libiptc.a extensions/libext4.a libxtables.la +iptables_LDADD = -lm libiptc/libiptc.la extensions/libext4.a libxtables.la iptables_xml_LDADD = libxtables.la iptables_multi_SOURCES = iptables-multi.c iptables-save.c \ @@ -44,14 +47,14 @@ iptables_save_LDADD = ${iptables_LDADD} # iptables-multi, semi-static iptables_static_SOURCES = ${iptables_multi_SOURCES} xtables.c iptables_static_CFLAGS = ${iptables_multi_CFLAGS} -DNO_SHARED_LIBS=1 -iptables_static_LDADD = -lm libiptc/libiptc.a extensions/libext4.a +iptables_static_LDADD = -lm libiptc/libiptc.la extensions/libext4.a iptables_xml_SOURCES = iptables-xml.c # ip6tables, dynamic ip6tables_SOURCES = ip6tables-standalone.c ip6tables.c ip6tables_LDFLAGS = -rdynamic -ip6tables_LDADD = -lm libiptc/libiptc.a extensions/libext6.a libxtables.la +ip6tables_LDADD = -lm libiptc/libiptc.la extensions/libext6.a libxtables.la ip6tables_multi_SOURCES = ip6tables-multi.c ip6tables-save.c \ ip6tables-restore.c ip6tables-standalone.c \ @@ -71,9 +74,8 @@ ip6tables_save_LDADD = ${ip6tables_LDADD} # iptables-multi, semi-static ip6tables_static_SOURCES = ${ip6tables_multi_SOURCES} xtables.c ip6tables_static_CFLAGS = ${ip6tables_multi_CFLAGS} -DNO_SHARED_LIBS=1 -ip6tables_static_LDADD = -lm libiptc/libiptc.a extensions/libext6.a +ip6tables_static_LDADD = -lm libiptc/libiptc.la extensions/libext6.a -noinst_LIBRARIES = libiptc/libiptc.a bin_PROGRAMS = iptables-xml sbin_PROGRAMS = noinst_PROGRAMS = @@ -96,7 +98,7 @@ iptables.8: ${srcdir}/iptables.8.in extensions/matches4.man extensions/targets4. ip6tables.8: ${srcdir}/ip6tables.8.in extensions/matches6.man extensions/targets6.man ${AM_VERBOSE_GEN} sed -e 's/@PACKAGE_AND_VERSION@/${PACKAGE} ${PACKAGE_VERSION}/g' -e '/@MATCH@/ r extensions/matches6.man' -e '/@TARGET@/ r extensions/targets6.man' $< >$@; -pkgconfig_DATA = xtables.pc +pkgconfig_DATA = libiptc.pc xtables.pc .PHONY: tarball tarball: diff --git a/configure.ac b/configure.ac index 3277666e..55569bda 100644 --- a/configure.ac +++ b/configure.ac @@ -80,5 +80,5 @@ AC_SUBST([libxtables_vmajor]) AC_CONFIG_FILES([Makefile extensions/GNUmakefile include/Makefile libipq/Makefile - include/xtables.h include/iptables/internal.h xtables.pc]) + include/xtables.h include/iptables/internal.h libiptc.pc xtables.pc]) AC_OUTPUT diff --git a/include/Makefile.am b/include/Makefile.am index 6206bd2a..0a1abea4 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -6,3 +6,7 @@ nobase_include_HEADERS = xtables.h if ENABLE_LIBIPQ include_HEADERS += libipq/libipq.h endif + +nobase_include_HEADERS += \ + libiptc/ipt_kernel_headers.h libiptc/libiptc.h \ + libiptc/libip6tc.h libiptc/libxtc.h diff --git a/libiptc.pc.in b/libiptc.pc.in new file mode 100644 index 00000000..63a459ae --- /dev/null +++ b/libiptc.pc.in @@ -0,0 +1,11 @@ + +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + +Name: libiptc +Description: iptables ruleset ADT and kernel interface +Version: @PACKAGE_VERSION@ +Libs: -L${libdir} -liptc +Cflags: -I${includedir} -- cgit v1.2.3