* [PATCH] remove dynamic libiptc.so from iptables-static
@ 2009-05-06 15:15 Ben Gardiner
2009-06-01 11:30 ` Jan Engelhardt
0 siblings, 1 reply; 2+ messages in thread
From: Ben Gardiner @ 2009-05-06 15:15 UTC (permalink / raw)
To: netfilter-devel
[-- Attachment #1: Type: text/plain, Size: 1582 bytes --]
I was building iptables-static from 1.4.3.2 and I noticed that ldd
reported libiptc.so was a dependency; I was using gcc 4.0.1 for ppc
cross compile -- but I don't think the toolchain is the cause. I was
able to get iptables-static to depend only on libm and libc with the
following patch (made against the 1.4.3.2 dist, but applies clean to svn
trunk). I hope you will consider it for inclusion in the next release.
Thanks,
Ben Gardiner
diff --git a/Makefile.am b/Makefile.am
index fd99098..80ee250 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -15,7 +15,12 @@ lib_LTLIBRARIES =
# libiptc
lib_LTLIBRARIES += libiptc/libiptc.la
-libiptc_libiptc_la_SOURCES = libiptc/libip4tc.c libiptc/libip6tc.c
+if ENABLE_IPV4
+libiptc_libiptc_la_SOURCES = libiptc/libip4tc.c
+endif
+if ENABLE_IPV6
+libiptc_libiptc_la_SOURCES = libiptc/libip6tc.c
+endif
libiptc_libiptc_la_LDFLAGS = -version-info 0:0:0
lib_LTLIBRARIES += libxtables.la
@@ -44,10 +49,10 @@ iptables_save_SOURCES = iptables-save.c iptables.c
iptables_save_LDFLAGS = ${iptables_LDFLAGS}
iptables_save_LDADD = ${iptables_LDADD}
-# iptables-multi, semi-static
-iptables_static_SOURCES = ${iptables_multi_SOURCES} xtables.c
+# iptables-static
+iptables_static_SOURCES = ${iptables_multi_SOURCES} xtables.c
${libiptc_libiptc_la_SOURCES}
iptables_static_CFLAGS = ${iptables_multi_CFLAGS} -DNO_SHARED_LIBS=1
-iptables_static_LDADD = libiptc/libiptc.la extensions/libext4.a -lm
+iptables_static_LDADD = extensions/libext4.a -lm
iptables_xml_SOURCES = iptables-xml.c
[-- Attachment #2: BenGardiner.vcf --]
[-- Type: text/x-vcard, Size: 320 bytes --]
begin:vcard
fn:Ben Gardiner
n:Gardiner;Ben
org:Nanometrics Seismological Instruments;Software R&D
adr:;;250 Herzberg Rd.;Kanata;ON;K2K 2A1;Canada
email;internet:bengardiner@nanometrics.ca
title:M.Sc. Eng.
tel;work:613 592 6776 x239
tel;fax:613 592 5929
x-mozilla-html:FALSE
url:www.nanometrics.ca
version:2.1
end:vcard
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] remove dynamic libiptc.so from iptables-static
2009-05-06 15:15 [PATCH] remove dynamic libiptc.so from iptables-static Ben Gardiner
@ 2009-06-01 11:30 ` Jan Engelhardt
0 siblings, 0 replies; 2+ messages in thread
From: Jan Engelhardt @ 2009-06-01 11:30 UTC (permalink / raw)
To: Ben Gardiner; +Cc: netfilter-devel
On Wednesday 2009-05-06 17:15, Ben Gardiner wrote:
>
> I was building iptables-static from 1.4.3.2 and I noticed that ldd
> reported libiptc.so was a dependency; I was using gcc 4.0.1 for ppc
> cross compile -- but I don't think the toolchain is the cause.
This is intentional. "static" here means that all the extensions are
included; we certainly do not want a truly static binary where ldd
would report "not a dynamic executable".
> I was able to get iptables-static to depend only on libm and libc
> with the following patch (made against the 1.4.3.2 dist, but
> applies clean to svn trunk). I hope you will consider it for
> inclusion in the next release.
> # libiptc
> lib_LTLIBRARIES += libiptc/libiptc.la
> -libiptc_libiptc_la_SOURCES = libiptc/libip4tc.c libiptc/libip6tc.c
> +if ENABLE_IPV4
> +libiptc_libiptc_la_SOURCES = libiptc/libip4tc.c
> +endif
> +if ENABLE_IPV6
> +libiptc_libiptc_la_SOURCES = libiptc/libip6tc.c
> +endif
> libiptc_libiptc_la_LDFLAGS = -version-info 0:0:0
If both ENABLE_IPV4=1, ENABLE_IPV6=1, it won't do the right thing
anymore.
> lib_LTLIBRARIES += libxtables.la
> @@ -44,10 +49,10 @@ iptables_save_SOURCES = iptables-save.c iptables.c
> iptables_save_LDFLAGS = ${iptables_LDFLAGS}
> iptables_save_LDADD = ${iptables_LDADD}
>
> -# iptables-multi, semi-static
> -iptables_static_SOURCES = ${iptables_multi_SOURCES} xtables.c
> +# iptables-static
> +iptables_static_SOURCES = ${iptables_multi_SOURCES} xtables.c
> ${libiptc_libiptc_la_SOURCES}
> iptables_static_CFLAGS = ${iptables_multi_CFLAGS} -DNO_SHARED_LIBS=1
> -iptables_static_LDADD = libiptc/libiptc.la extensions/libext4.a -lm
> +iptables_static_LDADD = extensions/libext4.a -lm
>
> iptables_xml_SOURCES = iptables-xml.c
Not needed - just run ./configure --disable-shared.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-06-01 11:30 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-05-06 15:15 [PATCH] remove dynamic libiptc.so from iptables-static Ben Gardiner
2009-06-01 11:30 ` Jan Engelhardt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).