[vlc-devel] [PATCH 1/4] contrib: fix building static liboil

davidf+nntp at woaf.net davidf+nntp at woaf.net
Fri Apr 10 14:52:58 CEST 2009


From: David Flynn <davidf at woaf.net>


Signed-off-by: David Flynn <davidf at rd.bbc.co.uk>
---
 extras/contrib/src/Makefile                      |    1 +
 extras/contrib/src/Patches/liboil-noshared.patch |  100 ++++++++++++++++++++++
 2 files changed, 101 insertions(+), 0 deletions(-)
 create mode 100644 extras/contrib/src/Patches/liboil-noshared.patch

diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile
index 893df54..7915aab 100644
--- a/extras/contrib/src/Makefile
+++ b/extras/contrib/src/Makefile
@@ -2488,6 +2488,7 @@ liboil-$(OIL_VERSION).tar.gz:
 
 liboil: liboil-$(OIL_VERSION).tar.gz
 	$(EXTRACT_GZ)
+	patch -d liboil -p1 < Patches/liboil-noshared.patch
 
 .liboil: liboil
 ifdef HAVE_DARWIN_OS
diff --git a/extras/contrib/src/Patches/liboil-noshared.patch b/extras/contrib/src/Patches/liboil-noshared.patch
new file mode 100644
index 0000000..b5d7b97
--- /dev/null
+++ b/extras/contrib/src/Patches/liboil-noshared.patch
@@ -0,0 +1,100 @@
+diff -ur liboil-0.3.16/liboil/Makefile.am liboil/liboil/Makefile.am
+--- liboil-0.3.16/liboil/Makefile.am	2009-02-26 19:35:39.000000000 +0000
++++ liboil/liboil/Makefile.am	2009-04-10 12:52:54.000000000 +0100
+@@ -207,25 +207,38 @@
+ build_trampolines_LDADD = $(LIBOIL_LIBS)
+ 
+ liboilarray.c: liboiltmp1.la Makefile
++	../libtool --config > .libs/libtoolcfg
+ 	echo '/* This file is autogenerated.  Do not edit */' >liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
+ 	echo '#include <liboil/liboilfunction.h>' >>liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
+-	grep '^_oil_function_class_' .libs/liboiltmp1.exp | \
+-	  sed -e 's/ DATA$$//' -e 's/ .*//' -e 's/.*/extern OilFunctionClass &;/' >>liboilarray.c.tmp
++	. .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " \
++	 | sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' \
++	 | grep ^_oil_function_class_ \
++	 | sed -e 's/.*/extern OilFunctionClass &;/' \
++	 >>liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
+ 	echo 'OilFunctionClass *_oil_function_class_array[] = {' >>liboilarray.c.tmp
+-	grep '^_oil_function_class_' .libs/liboiltmp1.exp | \
+-	  sed -e 's/ .*//' -e 's/.*/  \&&,/' >>liboilarray.c.tmp
++	. .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " \
++	 | sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' \
++	 | grep ^_oil_function_class_ \
++	 | sed -e 's/.*/  \&&,/' \
++	 >>liboilarray.c.tmp
+ 	echo '  NULL' >>liboilarray.c.tmp
+ 	echo '};' >>liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
+-	grep '^_oil_function_impl_' .libs/liboiltmp1.exp | \
+-	  sed -e 's/ .*//' -e 's/.*/extern OilFunctionImpl &;/' >>liboilarray.c.tmp
++	. .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " \
++	 | sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' \
++	 | grep ^_oil_function_impl_ \
++	 | sed -e 's/.*/extern OilFunctionImpl &;/' \
++	 >>liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
+ 	echo 'OilFunctionImpl *_oil_function_impl_array[] = {' >>liboilarray.c.tmp
+-	grep '^_oil_function_impl_' .libs/liboiltmp1.exp | \
+-	  sed -e 's/ .*//' -e 's/.*/  \&&,/' >>liboilarray.c.tmp
++	. .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " \
++	 | sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' \
++	 | grep ^_oil_function_impl_ \
++	 | sed -e 's/.*/  \&&,/' \
++	 >>liboilarray.c.tmp
+ 	echo '  NULL' >>liboilarray.c.tmp
+ 	echo '};' >>liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
+diff -ur liboil-0.3.16/liboil/Makefile.in liboil/liboil/Makefile.in
+--- liboil-0.3.16/liboil/Makefile.in	2009-03-19 05:41:32.000000000 +0000
++++ liboil/liboil/Makefile.in	2009-04-10 12:51:19.000000000 +0100
+@@ -1218,25 +1218,38 @@
+ 
+ 
+ liboilarray.c: liboiltmp1.la Makefile
++	../libtool --config > .libs/libtoolcfg
+ 	echo '/* This file is autogenerated.  Do not edit */' >liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
+ 	echo '#include <liboil/liboilfunction.h>' >>liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
+-	grep '^_oil_function_class_' .libs/liboiltmp1.exp | \
+-	  sed -e 's/ DATA$$//' -e 's/ .*//' -e 's/.*/extern OilFunctionClass &;/' >>liboilarray.c.tmp
++	. .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " \
++	 | sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' \
++	 | grep ^_oil_function_class_ \
++	 | sed -e 's/.*/extern OilFunctionClass &;/' \
++	 >>liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
+ 	echo 'OilFunctionClass *_oil_function_class_array[] = {' >>liboilarray.c.tmp
+-	grep '^_oil_function_class_' .libs/liboiltmp1.exp | \
+-	  sed -e 's/ .*//' -e 's/.*/  \&&,/' >>liboilarray.c.tmp
++	. .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " \
++	 | sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' \
++	 | grep ^_oil_function_class_ \
++	 | sed -e 's/.*/  \&&,/' \
++	 >>liboilarray.c.tmp
+ 	echo '  NULL' >>liboilarray.c.tmp
+ 	echo '};' >>liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
+-	grep '^_oil_function_impl_' .libs/liboiltmp1.exp | \
+-	  sed -e 's/ .*//' -e 's/.*/extern OilFunctionImpl &;/' >>liboilarray.c.tmp
++	. .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " \
++	 | sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' \
++	 | grep ^_oil_function_impl_ \
++	 | sed -e 's/.*/extern OilFunctionImpl &;/' \
++	 >>liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
+ 	echo 'OilFunctionImpl *_oil_function_impl_array[] = {' >>liboilarray.c.tmp
+-	grep '^_oil_function_impl_' .libs/liboiltmp1.exp | \
+-	  sed -e 's/ .*//' -e 's/.*/  \&&,/' >>liboilarray.c.tmp
++	. .libs/libtoolcfg; eval "$$NM .libs/liboiltmp1.a | $$global_symbol_pipe " \
++	 | sed -e /^[^D]/D -e 's/^. [^ ]* \([^ ]*\)/\1/' \
++	 | grep ^_oil_function_impl_ \
++	 | sed -e 's/.*/  \&&,/' \
++	 >>liboilarray.c.tmp
+ 	echo '  NULL' >>liboilarray.c.tmp
+ 	echo '};' >>liboilarray.c.tmp
+ 	echo >>liboilarray.c.tmp
-- 
1.5.6.5




More information about the vlc-devel mailing list