diff --git a/iproute2-libxtables6.diff b/iproute2-libxtables6.diff index 5e7646c..43d4287 100644 --- a/iproute2-libxtables6.diff +++ b/iproute2-libxtables6.diff @@ -1,5 +1,9 @@ From: Jan Engelhardt Date: 2011-06-01 00:52:29+0200 +Upstream: not sent yet + +libxtables6 (iptables-1.4.11) had to change the signature of +xtables_merge_options to avoid invoking undefined behavior. --- tc/m_xt.c | 6 ++++-- diff --git a/iproute2-xt-detect.diff b/iproute2-xt-detect.diff new file mode 100644 index 0000000..d4f1ecb --- /dev/null +++ b/iproute2-xt-detect.diff @@ -0,0 +1,42 @@ +From: Jan Engelhardt +Date: 2011-09-24 23:37:34.405739159 +0200 +Upstream: not sent yet + +Any tests involving iptables _MUST_ utilize pkg-config to find the +proper locations of the installation. + +--- + configure | 2 +- + tc/Makefile | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +Index: iproute2-2.6.39/configure +=================================================================== +--- iproute2-2.6.39.orig/configure ++++ iproute2-2.6.39/configure +@@ -49,7 +49,7 @@ int main(int argc, char **argv) + + EOF + +-if gcc -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl -lxtables >/dev/null 2>&1 ++if gcc -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL $(pkg-config xtables --cflags --libs) -ldl >/dev/null 2>&1 + then + echo "TC_CONFIG_XT:=y" >>Config + echo "using xtables" +Index: iproute2-2.6.39/tc/Makefile +=================================================================== +--- iproute2-2.6.39.orig/tc/Makefile ++++ iproute2-2.6.39/tc/Makefile +@@ -124,10 +124,10 @@ q_atm.so: q_atm.c + $(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic -o q_atm.so q_atm.c -latm + + m_xt.so: m_xt.c +- $(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic -o m_xt.so m_xt.c -lxtables ++ $(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic -o m_xt.so m_xt.c $$(pkg-config xtables --cflags --libs) + + m_xt_old.so: m_xt_old.c +- $(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic -o m_xt_old.so m_xt_old.c -lxtables ++ $(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic -o m_xt_old.so m_xt_old.c $$(pkg-config xtables --cflags --libs) + + %.yacc.c: %.y + $(YACC) $(YACCFLAGS) -o $@ $< diff --git a/iproute2-xt.diff b/iproute2-xt.diff index 36b8200..cb73a78 100644 --- a/iproute2-xt.diff +++ b/iproute2-xt.diff @@ -1,5 +1,9 @@ From: Jan Engelhardt Date: 2011-06-01 00:52:07+0200 +Upsteam: has not been sent yet + +Requesting the xt action never succeeded because it registered +using the wrong name. --- tc/m_xt.c | 4 ++-- diff --git a/iproute2.changes b/iproute2.changes index 0dac83e..3f31bc3 100644 --- a/iproute2.changes +++ b/iproute2.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Sat Sep 24 21:50:54 UTC 2011 - jengelh@medozas.de + +- Add patch iproute2-xt-detect.diff to address shipped Makefiles' + failure to use pkg-config to locate libxtables, and thus + reenable m_xt + ------------------------------------------------------------------- Fri Jul 8 17:43:01 UTC 2011 - jengelh@medozas.de diff --git a/iproute2.spec b/iproute2.spec index d1d9037..5cf846e 100644 --- a/iproute2.spec +++ b/iproute2.spec @@ -15,29 +15,40 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # -# norootforbuild Name: iproute2 -License: GPLv2+ +License: GPL-2.0+ Group: Productivity/Networking/Routing Provides: iproute Version: 2.6.39 Release: 1 Summary: Linux network configuration utilities -Url: http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2 +URL: http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2 Source0: %name-%version.tar.xz -Patch0: %name-libdir-1.diff -Patch1: %name-HZ.diff +# PATCH-FIX-UPSTREAM iproute2-libdir-1.diff +Patch0: iproute2-libdir-1.diff +# PATCH-??-OPENSUSE iproute2-HZ.diff +Patch1: iproute2-HZ.diff +# PATCH-FIX-UPSTREAM iproute2-xt.diff Patch4: iproute2-xt.diff +# PATCH-FIX-UPSTREAM iproute2-libxtables6.diff Patch5: iproute2-libxtables6.diff +# PATCH-FIX-UPSTREAM iproute2-xt-detect.diff +Patch6: iproute2-xt-detect.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build -BuildRequires: bison db-devel flex ghostscript-fonts-std ghostscript-x11 -BuildRequires: libpng-devel libtiff-devel sgmltool texlive-latex +BuildRequires: bison db-devel flex +BuildRequires: libpng-devel libtiff-devel pkgconfig >= 0.19 BuildRequires: xorg-x11-devel xz +%if 0%{?suse_version} +BuildRequires: ghostscript-x11 sgmltool texlive-latex +%endif +%if 0%{?fedora} || 0%{?rhel} +BuildRequires: ghostscript linuxdoc-tools sgml-common tetex-dvips tetex-latex +%endif %define with_xt 1 %if 0%{?with_xt} -BuildRequires: iptables-devel +BuildRequires: iptables-devel >= 1.4.11 %endif %description @@ -46,13 +57,7 @@ and advanced routing options of the Linux kernel. The SUSE Linux distribution has used this package for network setup since SuSE Linux 8.0. -Authors: --------- - Alexey Kuznetsov - Stephem Hemminger - %package -n libnetlink-devel -License: GPLv2+ Summary: A Higher Level Interface to the Netlink Service Group: Development/Libraries/C and C++ Provides: libnetlink = %version-%release @@ -61,7 +66,6 @@ Provides: libnetlink = %version-%release libnetlink provides a higher level interface to rtnetlink(7). %package doc -License: GPLv2+ Summary: Documentation to iproute2 Group: Documentation %if 0%{?suse_version} >= 1130 @@ -73,10 +77,15 @@ This package contains the PDF documentation from iproute2, as well as examples and other outdated files. %prep +%if 0%{?__xz:1} %setup -q +%else +tar -xf "%{S:0}" --use=xz; +%setup -DTq +%endif %patch0 %patch1 -%patch -P 4 -P 5 -p1 +%patch -P 4 -P 5 -P 6 -p1 find . -name *.orig -print0 | xargs -r0 rm -v %build