3 AUTOMAKE_OPTIONS = foreign subdir-objects
5 AM_CFLAGS = ${regular_CFLAGS} -I${top_builddir}/include -I${top_srcdir}/include ${kinclude_CFLAGS}
12 libiptc_libiptc_a_SOURCES = libiptc/libip4tc.c libiptc/libip6tc.c
14 lib_LTLIBRARIES = libxtables.la
15 libxtables_la_SOURCES = xtables.c
16 libxtables_la_LDFLAGS = -version 0:0:0
19 iptables_SOURCES = iptables-standalone.c iptables.c
20 iptables_LDFLAGS = -rdynamic
21 iptables_LDADD = -ldl -lm libiptc/libiptc.a extensions/libext4.a libxtables.la
23 iptables_multi_SOURCES = iptables-multi.c iptables-save.c \
24 iptables-restore.c iptables-xml.c \
25 iptables-standalone.c iptables.c
26 iptables_multi_CFLAGS = ${AM_CFLAGS} -DIPTABLES_MULTI
27 iptables_multi_LDFLAGS = ${iptables_LDFLAGS}
28 iptables_multi_LDADD = ${iptables_LDADD}
30 iptables_restore_SOURCES = iptables-restore.c iptables.c
31 iptables_restore_LDFLAGS = ${iptables_LDFLAGS}
32 iptables_restore_LDADD = ${iptables_LDADD}
34 iptables_save_SOURCES = iptables-save.c iptables.c
35 iptables_save_LDFLAGS = ${iptables_LDFLAGS}
36 iptables_save_LDADD = ${iptables_LDADD}
38 # iptables-multi, semi-static
39 iptables_static_SOURCES = ${iptables_multi_SOURCES} xtables.c
40 iptables_static_CFLAGS = ${iptables_multi_CFLAGS} -DNO_SHARED_LIBS=1
41 iptables_static_LDADD = -lm libiptc/libiptc.a extensions/libext4.a
43 iptables_xml_SOURCES = iptables-xml.c
46 ip6tables_SOURCES = ip6tables-standalone.c ip6tables.c
47 ip6tables_LDFLAGS = -rdynamic
48 ip6tables_LDADD = -ldl -lm libiptc/libiptc.a extensions/libext6.a libxtables.la
50 ip6tables_multi_SOURCES = ip6tables-multi.c ip6tables-save.c \
51 ip6tables-restore.c ip6tables-standalone.c \
53 ip6tables_multi_CFLAGS = ${AM_CFLAGS} -DIPTABLES_MULTI
54 ip6tables_multi_LDFLAGS = ${ip6tables_LDFLAGS}
55 ip6tables_multi_LDADD = ${ip6tables_LDADD}
57 ip6tables_restore_SOURCES = ip6tables-restore.c ip6tables.c
58 ip6tables_restore_LDFLAGS = ${ip6tables_LDFLAGS}
59 ip6tables_restore_LDADD = ${ip6tables_LDADD}
61 ip6tables_save_SOURCES = ip6tables-save.c ip6tables.c
62 ip6tables_save_LDFLAGS = ${ip6tables_LDFLAGS}
63 ip6tables_save_LDADD = ${ip6tables_LDADD}
65 # iptables-multi, semi-static
66 ip6tables_static_SOURCES = ${ip6tables_multi_SOURCES} xtables.c
67 ip6tables_static_CFLAGS = ${ip6tables_multi_CFLAGS} -DNO_SHARED_LIBS=1
68 ip6tables_static_LDADD = -lm libiptc/libiptc.a extensions/libext6.a
70 noinst_LIBRARIES := libiptc/libiptc.a
71 bin_PROGRAMS := iptables-xml
74 man_MANS := iptables.8 iptables-restore.8 iptables-save.8 \
75 iptables-xml.8 ip6tables.8 ip6tables-restore.8 \
77 CLEANFILES := iptables.8 ip6tables.8
79 include_HEADERS := include/xtables.h
83 sbin_PROGRAMS += iptables-static ip6tables-static
86 sbin_PROGRAMS += iptables iptables-multi iptables-restore iptables-save \
87 ip6tables ip6tables-multi ip6tables-restore ip6tables-save
90 iptables.8: ${srcdir}/iptables.8.in extensions/matches4.man extensions/targets4.man
91 ${AM_VERBOSE_GEN} sed -e '/@MATCH@/ r extensions/matches4.man' -e '/@TARGET@/ r extensions/targets4.man' $< >$@;
93 ip6tables.8: ${srcdir}/ip6tables.8.in extensions/matches6.man extensions/targets6.man
94 ${AM_VERBOSE_GEN} sed -e '/@MATCH@/ r extensions/matches6.man' -e '/@TARGET@/ r extensions/targets6.man' $< >$@;
97 ${MAKE} ${AM_MAKEFLAGS} -C $(@D) $(@F)
99 pkgconfig_DATA = xtables.pc
103 rm -Rf /tmp/${PACKAGE_TARNAME}-${PACKAGE_VERSION};
104 pushd ${top_srcdir} && git archive --prefix=${PACKAGE_TARNAME}-${PACKAGE_VERSION}/ HEAD | tar -C /tmp -x && popd;
105 pushd /tmp/${PACKAGE_TARNAME}-${PACKAGE_VERSION} && ./autogen.sh && popd;
106 tar -C /tmp -cjf ${PACKAGE_TARNAME}-${PACKAGE_VERSION}.tar.bz2 --owner=root --group=root ${PACKAGE_TARNAME}-${PACKAGE_VERSION}/;
107 rm -Rf /tmp/${PACKAGE_TARNAME}-${PACKAGE_VERSION};
109 config.status: include/xtables.h.in
111 # ldconfig may fail when we are not root (as is the case in build systems)
112 # so add appropriate protection that it does not let `make` fail.
114 -/sbin/ldconfig || :;