summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2012-07-10 12:04:31 (GMT)
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-07-10 13:25:37 (GMT)
commit064ef460b2a7b08d7bf2fd0a613f01d1cea33955 (patch)
tree4ade16ad6776c84648ad9a6bd513c073b6459ec0
parent89ca5701eac4dfcadcb3ab677746aa0a50d7e4a5 (diff)
downloadpoky-064ef460b2a7b08d7bf2fd0a613f01d1cea33955.tar.gz
libxml2: Fix libzypp ansidecl related build failures
cmake looks at all include statements, even if they're not used. To make builds deterministic and avoid needing to add binutils as a dependency for libzypp, completely remove the include from the header file, even if it is never used. This avoids issues where you'd build binutils, then libzypp, then remove binutils (and hence ansidecl.h) and then recompile libzypp which would still have the dependency and hence fail. (From OE-Core rev: bfaaeb44c5023e2d2a9414c07694c75fa527283b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-core/libxml/libxml2.inc3
-rw-r--r--meta/recipes-core/libxml/libxml2/ansidecl.patch25
-rw-r--r--meta/recipes-core/libxml/libxml2_2.8.0.bb2
3 files changed, 28 insertions, 2 deletions
diff --git a/meta/recipes-core/libxml/libxml2.inc b/meta/recipes-core/libxml/libxml2.inc
index 9433631..d70fe47 100644
--- a/meta/recipes-core/libxml/libxml2.inc
+++ b/meta/recipes-core/libxml/libxml2.inc
@@ -13,7 +13,8 @@ DEPENDS_virtclass-native = "python-native"
13DEPENDS =+ "zlib" 13DEPENDS =+ "zlib"
14 14
15SRC_URI = "ftp://xmlsoft.org/libxml2/libxml2-${PV}.tar.gz \ 15SRC_URI = "ftp://xmlsoft.org/libxml2/libxml2-${PV}.tar.gz \
16 file://libxml-64bit.patch" 16 file://libxml-64bit.patch \
17 file://ansidecl.patch"
17 18
18 19
19inherit autotools pkgconfig binconfig 20inherit autotools pkgconfig binconfig
diff --git a/meta/recipes-core/libxml/libxml2/ansidecl.patch b/meta/recipes-core/libxml/libxml2/ansidecl.patch
new file mode 100644
index 0000000..2452d78
--- /dev/null
+++ b/meta/recipes-core/libxml/libxml2/ansidecl.patch
@@ -0,0 +1,25 @@
1Sadly cmake is broken. If it sees this reference and ansidecl is present, it will add a
2dependency upon it, even if HAVE_ANSIDEC_H is never set.
3
4The easiest solution is to remove these lines, otherwise recipes like libzypp can have a
5dependency on the ansidecl.h header via cmake. This can lead to odd results if the
6header is removed (clean binutils) and then the code is recompiled.
7
8RP 2012/7/10
9
10Upstream-Status: Inappropriate [its really a cmake bug]
11
12Index: libxml2-2.8.0/include/libxml/xmlversion.h.in
13===================================================================
14--- libxml2-2.8.0.orig/include/libxml/xmlversion.h.in 2012-07-10 11:51:52.460750573 +0000
15+++ libxml2-2.8.0/include/libxml/xmlversion.h.in 2012-07-10 11:52:41.436749397 +0000
16@@ -401,9 +401,6 @@
17 #endif
18
19 #ifdef __GNUC__
20-#ifdef HAVE_ANSIDECL_H
21-#include <ansidecl.h>
22-#endif
23
24 /**
25 * ATTRIBUTE_UNUSED:
diff --git a/meta/recipes-core/libxml/libxml2_2.8.0.bb b/meta/recipes-core/libxml/libxml2_2.8.0.bb
index fe9ec05..37eba34 100644
--- a/meta/recipes-core/libxml/libxml2_2.8.0.bb
+++ b/meta/recipes-core/libxml/libxml2_2.8.0.bb
@@ -1,6 +1,6 @@
1require libxml2.inc 1require libxml2.inc
2 2
3PR = "r1" 3PR = "r2"
4 4
5SRC_URI[md5sum] = "c62106f02ee00b6437f0fb9d370c1093" 5SRC_URI[md5sum] = "c62106f02ee00b6437f0fb9d370c1093"
6SRC_URI[sha256sum] = "f2e2d0e322685193d1affec83b21dc05d599e17a7306d7b90de95bb5b9ac622a" 6SRC_URI[sha256sum] = "f2e2d0e322685193d1affec83b21dc05d599e17a7306d7b90de95bb5b9ac622a"