diff --git a/meta/recipes-extended/libzypp/libzypp/mips-workaround-gcc-tribool-error.patch b/meta/recipes-extended/libzypp/libzypp/mips-workaround-gcc-tribool-error.patch new file mode 100644 index 0000000000..849ce3dd8b --- /dev/null +++ b/meta/recipes-extended/libzypp/libzypp/mips-workaround-gcc-tribool-error.patch @@ -0,0 +1,22 @@ +# with gcc 4.3.3 and MIPS target, gcc "internal compiler error: segmentation fault" error +# occurs when compiling Applydeltarpm.cc. I didn't find the exact reason leading to this +# error, but it should be related to how boost tribool type is interpreted by g++. So provide +# this mips workaround for now. We'll come back later to check whether it's still required after +# upgrading to 4.5.0. +# +# Signed-off-by Kevin Tian , 2010-09-08 + +diff --git a/zypp/repo/Applydeltarpm.cc b/zypp/repo/Applydeltarpm.cc +index 7b382be..0d7a1f8 100644 +--- a/zypp/repo/Applydeltarpm.cc ++++ b/zypp/repo/Applydeltarpm.cc +@@ -77,7 +77,8 @@ namespace zypp + else + { + // _last is 'indeterminate' or '!have' +- if ( (_last = have) ) ++ _last = have; ++ if ( _last ) + MIL << "Found executable " << prog << endl; + else + WAR << "No executable " << prog << endl; diff --git a/meta/recipes-extended/libzypp/libzypp_git.bb b/meta/recipes-extended/libzypp/libzypp_git.bb index a2856d1475..44ea60d054 100644 --- a/meta/recipes-extended/libzypp/libzypp_git.bb +++ b/meta/recipes-extended/libzypp/libzypp_git.bb @@ -10,11 +10,13 @@ DEPENDS = "rpm boost gettext curl libxml2 zlib sat-solver expat openssl udev" S = "${WORKDIR}/git" PV = "0.0-git${SRCPV}" -PR = "r0" +PR = "r1" SRC_URI = "git://gitorious.org/opensuse/libzypp.git;protocol=git \ file://no-doc.patch \ file://rpm5.patch" +SRC_URI_append_mips = " file://mips-workaround-gcc-tribool-error.patch" + FILES_${PN} += "${libdir}/zypp ${datadir}/zypp ${datadir}/icons" FILES_${PN}-dev += "${datadir}/cmake"