[ebtables] fix undef symbols issue (bz810006)

Tom Callaway spot at fedoraproject.org
Thu Apr 5 20:13:49 UTC 2012


commit 681c1b6dfae3b53927db388dbcf841dd587069ca
Author: Tom Callaway <spot at fedoraproject.org>
Date:   Thu Apr 5 16:13:46 2012 -0400

    fix undef symbols issue (bz810006)

 .gitignore                    |    1 +
 ebtables-2.0.10-linkfix.patch |   16 ++++++++++++++++
 ebtables.spec                 |   19 ++++++++++++++++---
 sources                       |    2 +-
 4 files changed, 34 insertions(+), 4 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index ac81772..19cdd5b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 ebtables-v2.0.9-2.tar.gz
 /ebtables-v2.0.10-1.tar.gz
 /ebtables-v2.0.10-2.tar.gz
+/ebtables-v2.0.10-4.tar.gz
diff --git a/ebtables-2.0.10-linkfix.patch b/ebtables-2.0.10-linkfix.patch
new file mode 100644
index 0000000..b140d72
--- /dev/null
+++ b/ebtables-2.0.10-linkfix.patch
@@ -0,0 +1,16 @@
+diff -up ebtables-v2.0.10-4/extensions/Makefile.linkfix ebtables-v2.0.10-4/extensions/Makefile
+--- ebtables-v2.0.10-4/extensions/Makefile.linkfix	2011-12-15 15:02:47.000000000 -0500
++++ ebtables-v2.0.10-4/extensions/Makefile	2012-04-05 15:52:09.563511746 -0400
+@@ -9,9 +9,10 @@ EXT_LIBS+=$(foreach T,$(EXT_FUNC), exten
+ EXT_LIBS+=$(foreach T,$(EXT_TABLES), extensions/libebtable_$(T).so)
+ EXT_LIBSI+=$(foreach T,$(EXT_FUNC), -lebt_$(T))
+ EXT_LIBSI+=$(foreach T,$(EXT_TABLES), -lebtable_$(T))
++EXT_LDFLAGS+=-L. -lebtc
+ 
+-extensions/ebt_%.so: extensions/ebt_%.o
+-	$(CC) $(LDFLAGS) -shared -o $@ -lc $< -nostartfiles
++extensions/ebt_%.so: extensions/ebt_%.o libebtc.so
++	$(CC) $(LDFLAGS) $(EXT_LDFLAGS) -shared -o $@ -lc $< -nostartfiles
+ 
+ extensions/libebt_%.so: extensions/ebt_%.so
+ 	mv $< $@
diff --git a/ebtables.spec b/ebtables.spec
index 09301b5..8a18fd8 100644
--- a/ebtables.spec
+++ b/ebtables.spec
@@ -1,16 +1,19 @@
+%global ebminor 4
+
 Name:			ebtables
 Version:		2.0.10
-Release:		4%{?dist}
+Release:		5%{?dist}
 Summary:		Ethernet Bridge frame table administration tool
 License:		GPLv2+
 Group:			System Environment/Base
 URL:			http://ebtables.sourceforge.net/
-Source0:		http://downloads.sourceforge.net/ebtables/ebtables-v%{version}-2.tar.gz
+Source0:		http://downloads.sourceforge.net/ebtables/ebtables-v%{version}-%{ebminor}.tar.gz
 Source1:		ebtables-save
 Requires(pre):		/sbin/chkconfig
 Requires(postun):	/sbin/service
 Patch0:			ebtables-2.0.10-norootinst.patch
 Patch3:			ebtables-2.0.9-lsb.patch
+Patch4:			ebtables-2.0.10-linkfix.patch
 
 %description
 Ethernet bridge tables is a firewalling tool to transparently filter network
@@ -24,9 +27,11 @@ The ebtables tool can be used together with the other Linux filtering tools,
 like iptables. There are no known incompatibility issues.
 
 %prep
-%setup -q -n ebtables-v%{version}-2
+%setup -q -n ebtables-v%{version}-%{ebminor}
 %patch0 -p1 -b .norootinst
 %patch3 -p1 -b .lsb
+# extension modules need to link to libebtc.so for ebt_errormsg
+%patch4 -p1 -b .linkfix
 
 # Convert to UTF-8
 f=THANKS; iconv -f iso-8859-1 -t utf-8 $f -o $f.utf8 ; mv $f.utf8 $f
@@ -47,6 +52,9 @@ touch $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/ebtables.broute
 rm -f $RPM_BUILD_ROOT/sbin/ebtables-save
 install %{SOURCE1} $RPM_BUILD_ROOT/sbin/ebtables-save
 
+# move libebtc.so into the ldpath
+mv %{buildroot}/%{_lib}/ebtables/libebtc.so %{buildroot}/%{_lib}/
+
 %post
 /sbin/chkconfig --add ebtables
 /sbin/ldconfig
@@ -70,6 +78,7 @@ fi
 %config(noreplace) %{_sysconfdir}/ethertypes
 %config(noreplace) %{_sysconfdir}/sysconfig/ebtables-config
 %{_initrddir}/ebtables
+/%{_lib}/libebtc.so
 /%{_lib}/ebtables/
 /sbin/ebtables*
 %ghost %{_sysconfdir}/sysconfig/ebtables.filter
@@ -77,6 +86,10 @@ fi
 %ghost %{_sysconfdir}/sysconfig/ebtables.broute
 
 %changelog
+* Thu Apr  5 2012 Tom Callaway <spot at fedoraproject.org> - 2.0.10-5
+- update to 2.0.10-4 (upstream numbering is goofy)
+- fix missing symbol issue with extension modules (bz810006)
+
 * Thu Feb 16 2012 Thomas Woerner <twoerner at redhat.com> - 2.0.10-4
 - replaced ebtables-save perl script by bash script to get rid of the perl 
   requirement
diff --git a/sources b/sources
index 7983fe9..c5a6b45 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-c5ae7fb75810fd936a5445239e853fd8  ebtables-v2.0.10-2.tar.gz
+506742a3d44b9925955425a659c1a8d0  ebtables-v2.0.10-4.tar.gz


More information about the scm-commits mailing list