diff options
author | Gilles Dartiguelongue <eva@gentoo.org> | 2010-03-29 22:28:28 +0000 |
---|---|---|
committer | Gilles Dartiguelongue <eva@gentoo.org> | 2010-03-29 22:28:28 +0000 |
commit | 90a18ee28d2ccb8c2bf4b4d1ec563333cc8c5f45 (patch) | |
tree | 932d9c8475824b2dc63e63e5f42d89102a4e40fe /net-libs/webkit-gtk | |
parent | Update my first name. (diff) | |
download | gentoo-2-90a18ee28d2ccb8c2bf4b4d1ec563333cc8c5f45.tar.gz gentoo-2-90a18ee28d2ccb8c2bf4b4d1ec563333cc8c5f45.tar.bz2 gentoo-2-90a18ee28d2ccb8c2bf4b4d1ec563333cc8c5f45.zip |
Fix build with icu-4.4, bug #308699.
(Portage version: 2.2_rc67/cvs/Linux x86_64)
Diffstat (limited to 'net-libs/webkit-gtk')
-rw-r--r-- | net-libs/webkit-gtk/ChangeLog | 6 | ||||
-rw-r--r-- | net-libs/webkit-gtk/files/webkit-gtk-1.1.15.4-icu44.patch | 115 | ||||
-rw-r--r-- | net-libs/webkit-gtk/webkit-gtk-1.1.15.4.ebuild | 8 |
3 files changed, 126 insertions, 3 deletions
diff --git a/net-libs/webkit-gtk/ChangeLog b/net-libs/webkit-gtk/ChangeLog index 5244e418ae32..bac094c57f5c 100644 --- a/net-libs/webkit-gtk/ChangeLog +++ b/net-libs/webkit-gtk/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for net-libs/webkit-gtk # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/ChangeLog,v 1.69 2010/03/24 18:25:26 armin76 Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/ChangeLog,v 1.70 2010/03/29 22:28:28 eva Exp $ + + 29 Mar 2010; Gilles Dartiguelongue <eva@gentoo.org> + webkit-gtk-1.1.15.4.ebuild, +files/webkit-gtk-1.1.15.4-icu44.patch: + Fix build with icu-4.4, bug #308699. 24 Mar 2010; Raúl Porcel <armin76@gentoo.org> webkit-gtk-1.1.15.4.ebuild: alpha/arm/ia64/sparc stable wrt #304775 diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.1.15.4-icu44.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.1.15.4-icu44.patch new file mode 100644 index 000000000000..bae28344704b --- /dev/null +++ b/net-libs/webkit-gtk/files/webkit-gtk-1.1.15.4-icu44.patch @@ -0,0 +1,115 @@ +Backport of upstream revision 56345 (2010-03-22 Darin Adler <darin@apple.com>) +to webkit-gtk-1.1.15.4 + +TextBreakIteratorICU.cpp is incompatible with new UBreakIterator type in ICU 4.4 +https://bugs.webkit.org/show_bug.cgi?id=36381 +platform/text/TextBreakIteratorICU.cpp, platform/text/TextBoundariesICU.cpp: +Use reinterpret_cast instead of static_cast or relying on conversion to void*. + +diff -ru webkit-1.1.15.4-orig//WebCore/platform/text/TextBoundariesICU.cpp webkit-1.1.15.4/WebCore/platform/text/TextBoundariesICU.cpp +--- webkit-1.1.15.4-orig//WebCore/platform/text/TextBoundariesICU.cpp 2009-09-22 11:29:21.000000000 -0400 ++++ webkit-1.1.15.4/WebCore/platform/text/TextBoundariesICU.cpp 2010-03-26 03:19:14.852055685 -0400 +@@ -36,7 +36,7 @@ + + int findNextWordFromIndex(const UChar* chars, int len, int position, bool forward) + { +- UBreakIterator* it = wordBreakIterator(chars, len); ++ UBreakIterator* it = reinterpret_cast<UBreakIterator*>(wordBreakIterator(chars, len)); + + if (forward) { + position = ubrk_following(it, position); +@@ -67,7 +67,7 @@ + + void findWordBoundary(const UChar* chars, int len, int position, int* start, int* end) + { +- UBreakIterator* it = wordBreakIterator(chars, len); ++ UBreakIterator* it = reinterpret_cast<UBreakIterator*>(wordBreakIterator(chars, len)); + *end = ubrk_following(it, position); + if (*end < 0) + *end = ubrk_last(it); +diff -ru webkit-1.1.15.4-orig//WebCore/platform/text/TextBreakIteratorICU.cpp webkit-1.1.15.4/WebCore/platform/text/TextBreakIteratorICU.cpp +--- webkit-1.1.15.4-orig//WebCore/platform/text/TextBreakIteratorICU.cpp 2009-09-22 11:29:21.000000000 -0400 ++++ webkit-1.1.15.4/WebCore/platform/text/TextBreakIteratorICU.cpp 2010-03-26 02:44:51.934479159 -0400 +@@ -38,7 +38,7 @@ + + if (!createdIterator) { + UErrorCode openStatus = U_ZERO_ERROR; +- iterator = static_cast<TextBreakIterator*>(ubrk_open(type, currentTextBreakLocaleID(), 0, 0, &openStatus)); ++ iterator = reinterpret_cast<TextBreakIterator*>(ubrk_open(type, currentTextBreakLocaleID(), 0, 0, &openStatus)); + createdIterator = true; + ASSERT_WITH_MESSAGE(U_SUCCESS(openStatus), "ICU could not open a break iterator: %s (%d)", u_errorName(openStatus), openStatus); + } +@@ -46,7 +46,7 @@ + return 0; + + UErrorCode setTextStatus = U_ZERO_ERROR; +- ubrk_setText(iterator, string, length, &setTextStatus); ++ ubrk_setText(reinterpret_cast<UBreakIterator*>(iterator), string, length, &setTextStatus); + if (U_FAILURE(setTextStatus)) + return 0; + +@@ -85,34 +85,34 @@ + staticSentenceBreakIterator, UBRK_SENTENCE, string, length); + } + +-int textBreakFirst(TextBreakIterator* bi) ++int textBreakFirst(TextBreakIterator* iterator) + { +- return ubrk_first(bi); ++ return ubrk_first(reinterpret_cast<UBreakIterator*>(iterator)); + } + +-int textBreakNext(TextBreakIterator* bi) ++int textBreakNext(TextBreakIterator* iterator) + { +- return ubrk_next(bi); ++ return ubrk_next(reinterpret_cast<UBreakIterator*>(iterator)); + } + +-int textBreakPreceding(TextBreakIterator* bi, int pos) ++int textBreakPreceding(TextBreakIterator* iterator, int pos) + { +- return ubrk_preceding(bi, pos); ++ return ubrk_preceding(reinterpret_cast<UBreakIterator*>(iterator), pos); + } + +-int textBreakFollowing(TextBreakIterator* bi, int pos) ++int textBreakFollowing(TextBreakIterator* iterator, int pos) + { +- return ubrk_following(bi, pos); ++ return ubrk_following(reinterpret_cast<UBreakIterator*>(iterator), pos); + } + +-int textBreakCurrent(TextBreakIterator* bi) ++int textBreakCurrent(TextBreakIterator* iterator) + { +- return ubrk_current(bi); ++ return ubrk_current(reinterpret_cast<UBreakIterator*>(iterator)); + } + +-bool isTextBreak(TextBreakIterator* bi, int pos) ++bool isTextBreak(TextBreakIterator* iterator, int position) + { +- return ubrk_isBoundary(bi, pos); ++ return ubrk_isBoundary(reinterpret_cast<UBreakIterator*>(iterator), position); + } + + #ifndef BUILDING_ON_TIGER +@@ -126,7 +126,7 @@ + UParseError parseStatus; + UErrorCode openStatus = U_ZERO_ERROR; + String rules(breakRules); +- iterator = static_cast<TextBreakIterator*>(ubrk_openRules(rules.characters(), rules.length(), 0, 0, &parseStatus, &openStatus)); ++ iterator = reinterpret_cast<TextBreakIterator*>(ubrk_openRules(rules.characters(), rules.length(), 0, 0, &parseStatus, &openStatus)); + createdIterator = true; + ASSERT_WITH_MESSAGE(U_SUCCESS(openStatus), "ICU could not open a break iterator: %s (%d)", u_errorName(openStatus), openStatus); + } +@@ -134,7 +134,7 @@ + return 0; + + UErrorCode setTextStatus = U_ZERO_ERROR; +- ubrk_setText(iterator, string, length, &setTextStatus); ++ ubrk_setText(reinterpret_cast<UBreakIterator*>(iterator), string, length, &setTextStatus); + if (U_FAILURE(setTextStatus)) + return 0; + diff --git a/net-libs/webkit-gtk/webkit-gtk-1.1.15.4.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.1.15.4.ebuild index d2ab8fd58e7c..7e792f5e911c 100644 --- a/net-libs/webkit-gtk/webkit-gtk-1.1.15.4.ebuild +++ b/net-libs/webkit-gtk/webkit-gtk-1.1.15.4.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-1.1.15.4.ebuild,v 1.12 2010/03/24 18:25:26 armin76 Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-1.1.15.4.ebuild,v 1.13 2010/03/29 22:28:28 eva Exp $ EAPI="2" @@ -49,18 +49,22 @@ DEPEND="${RDEPEND} S="${WORKDIR}/${MY_P}" src_prepare() { - # FIXME: Fix unaligned accesses on ARM, IA64 and SPARC use sparc && epatch "${FILESDIR}"/webkit-gtk-1.1.15.2-unaligned.patch # Darwin/Aqua build is broken, needs autoreconf epatch "${FILESDIR}"/${P}-darwin-quartz.patch + # Fix build with icu-4.4 + epatch "${FILESDIR}/${PN}-1.1.15.4-icu44.patch" + # Make it libtool-1 compatible rm -v autotools/lt* autotools/libtool.m4 \ || die "removing libtool macros failed" + # Don't force -O2 sed -i 's/-O2//g' "${S}"/configure.ac || die "sed failed" + # Prevent maintainer mode from being triggered during make AT_M4DIR=autotools eautoreconf } |