[meego-commits] 9381: Changes to Trunk:Testing/icu
Wang Quanxian
no_reply at build.meego.com
Thu Nov 11 03:41:09 UTC 2010
Hi,
I have made the following changes to icu in project Trunk:Testing. Please review and accept ASAP.
Thank You,
Wang Quanxian
[This message was auto-generated]
---
Request #9381:
submit: home:quanxianwang:branches:Trunk:Testing/icu(r4)(cleanup) -> Trunk:Testing/icu
Message:
upgrade to 4.5.2 (bmc #8807) and diable atomic operation for arm since this blocks arm building
State: new 2010-11-10T19:41:08 quanxianwang
Comment: None
changes files:
--------------
--- icu.changes
+++ icu.changes
@@ -0,0 +1,3 @@
+* Tue Nov 9 2010 Wang Quanxian <quanxian.wang at intel.com> - 4.5.2
+- upgrade to 4.5.2, disable atomic building for arm, following upstream pc mechanism (bmc #8807)
+
old:
----
icu-3.4-multiarchdevel.patch
icu.6969.pkgdata.patch
icu4c-4_2_1-src.tgz
new:
----
disable_arm_atomic.patch
icu4c-4_5_2-src.tgz
spec files:
-----------
--- icu.spec
+++ icu.spec
@@ -1,23 +1,22 @@
Name: icu
-Version: 4.2.1
+Version: 4.5.2
Release: 8
Summary: International Components for Unicode
Group: Development/Tools
License: MIT
URL: http://www.icu-project.org/
-Source0: http://download.icu-project.org/files/icu4c/4.2.1/icu4c-4_2_1-src.tgz
+Source0: http://download.icu-project.org/files/icu4c/4.5.2/icu4c-4_5_2-src.tgz
Source1: icu-config
BuildRequires: doxygen, autoconf
Requires: lib%{name} = %{version}-%{release}
-Patch1: icu-3.4-multiarchdevel.patch
Patch2: icu.icu6284.strictalias.patch
Patch3: icu.6995.kannada.patch
Patch4: icu.icu7039.badextract.patch
-Patch5: icu.6969.pkgdata.patch
Patch6: icu.XXXX.buildfix.patch
Patch7: 0001-Fix-build-failure-on-ARM.patch
Patch8: icu.6969.arm.patch
+Patch9: disable_arm_atomic.patch
%description
Tools and utilities for developing with icu.
@@ -57,14 +56,13 @@
%prep
%setup -q -n %{name}
-%patch1 -p1 -b .multiarchdevel
%patch2 -p1 -b .icu6284.strictalias.patch
%patch3 -p1 -b .icu6995.kannada.patch
%patch4 -p1 -b .icu7039.badextract.patch
-%patch5 -p0 -b .icu.6969.pkgdata.patch
%patch6 -p1 -b .icu.XXXX.buildfix.patch
%patch7 -p1 -b .arm
%patch8 -p0 -b .icu.6969.arm.patch
+%patch9 -p0 -b .atomic
%build
cd source
@@ -82,8 +80,6 @@
chmod +x $RPM_BUILD_ROOT%{_libdir}/*.so.*
cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/%{name}-config
chmod 0755 $RPM_BUILD_ROOT%{_bindir}/%{name}-config
-sed -i s/\\\$\(THREADSCXXFLAGS\)// $RPM_BUILD_ROOT/%{_libdir}/pkgconfig/icu.pc
-sed -i s/\\\$\(THREADSCPPFLAGS\)/-D_REENTRANT/ $RPM_BUILD_ROOT/%{_libdir}/pkgconfig/icu.pc
find source/__docs/%{name}/html/ -type f -exec chmod a-x {} \;
@@ -113,6 +109,7 @@
%{_bindir}/makeconv
%{_bindir}/pkgdata
%{_bindir}/uconv
+%{_bindir}/icuinfo
%{_sbindir}/*
%{_mandir}/man1/derb.1*
%{_mandir}/man1/gencnval.1*
@@ -135,7 +132,7 @@
%{_includedir}/layout
%{_includedir}/unicode
%{_libdir}/*.so
-%{_libdir}/pkgconfig/icu.pc
+%{_libdir}/pkgconfig/icu-*.pc
%{_libdir}/%{name}
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}/%{version}
other changes:
--------------
++++++ disable_arm_atomic.patch (new)
--- disable_arm_atomic.patch
+++ disable_arm_atomic.patch
+--- source/configure.in_orig 2010-11-10 01:13:01.665345519 +0800
++++ source/configure.in 2010-11-10 19:19:19.505407881 +0800
+@@ -776,21 +776,28 @@ AC_SUBST(U_HAVE_PLACEMENT_NEW)
+
+ # gcc atomic built-in functions check
+ # AC_TRY_LINK([], [int foo, bar; bar = __sync_val_compare_and_swap(&foo, 0, 1);],,
+-AC_LANG(C)
+-AC_MSG_CHECKING([for gcc atomic functions])
+-AC_LINK_IFELSE([AC_LANG_PROGRAM(
+- [[
+- void *p;
+- int i;
+- ]],
+- [[
+- __sync_fetch_and_add(&i, 1);
+- __sync_fetch_and_sub(&i, 1);
+- __sync_val_compare_and_swap(&p, 0, 0);
+- ]]
+-)],
+-[U_HAVE_GCC_ATOMICS=1; AC_MSG_RESULT([yes])],
+-[U_HAVE_GCC_ATOMICS=0; AC_MSG_RESULT([no])])
++case `/bin/sh -c "uname -p"` in
++arm*)
++ U_HAVE_GCC_ATOMICS=0
++ ;;
++*)
++ AC_LANG(C)
++ AC_MSG_CHECKING([for gcc atomic functions])
++ AC_LINK_IFELSE([AC_LANG_PROGRAM(
++ [[
++ void *p;
++ int i;
++ ]],
++ [[
++ __sync_fetch_and_add(&i, 1);
++ __sync_fetch_and_sub(&i, 1);
++ __sync_val_compare_and_swap(&p, 0, 0);
++ ]]
++ )],
++ [U_HAVE_GCC_ATOMICS=1; AC_MSG_RESULT([yes])],
++ [U_HAVE_GCC_ATOMICS=0; AC_MSG_RESULT([no])])
++ ;;
++esac
+ AC_SUBST(U_HAVE_GCC_ATOMICS)
+
+ AC_LANG(C)
++++++ icu.XXXX.buildfix.patch
--- icu.XXXX.buildfix.patch
+++ icu.XXXX.buildfix.patch
@@ -1,14 +1,3 @@
---- icu/source/Makefile.in 2009-08-31 21:15:03.000000000 +0100
-+++ icu/source/Makefile.in 2009-08-31 21:19:23.000000000 +0100
-@@ -146,7 +146,7 @@
- install-doc: doc
- $(RM) -r $(DESTDIR)$(docdir)/$(docsubdir)
- $(MKINSTALLDIRS) $(DESTDIR)$(docdir)/$(docsubdir)
-- $(INSTALL_DATA) doc/html/* $(DESTDIR)$(docdir)/$(docsubdir)
-+ cp -r doc/html/* $(DESTDIR)$(docdir)/$(docsubdir)
- endif
-
- $(DESTDIR)$(pkglibdir)/%: $(top_srcdir)/../data/%
--- icu/source/configure.in 2009-07-01 19:51:26.000000000 +0100
+++ icu/source/configure.in 2009-11-19 09:12:23.000000000 +0000
@@ -57,6 +57,11 @@
++++++ icu.icu6284.strictalias.patch
--- icu.icu6284.strictalias.patch
+++ icu.icu6284.strictalias.patch
@@ -1,14 +1,9 @@
-diff -ru icu.orig/source/common/putil.c icu/source/common/putil.c
---- icu.orig/source/common/putil.c 2008-08-26 13:12:58.000000000 +0100
-+++ icu/source/common/putil.c 2008-08-26 13:13:01.000000000 +0100
-@@ -160,30 +160,46 @@
- # define U_POSIX_LOCALE 1
- #endif
-
--/*
-- WARNING! u_topNBytesOfDouble and u_bottomNBytesOfDouble
-- can't be properly optimized by the gcc compiler sometimes (i.e. gcc 3.2).
--*/
+diff -urNap icu.orig/source/common/putil.c icu/source/common/putil.c
+--- icu.orig/source/common/putil.c 2010-11-10 20:33:26.220329425 +0800
++++ icu/source/common/putil.c 2010-11-10 20:43:08.153366353 +0800
+@@ -182,24 +182,45 @@ static const BitPatternConversion gInf =
+ can't be properly optimized by the gcc compiler sometimes (i.e. gcc 3.2).
+ */
#if !IEEE_754
-static char*
-u_topNBytesOfDouble(double* d, int n)
@@ -36,7 +31,6 @@
+# endif
+ ];
}
- #endif
-static char*
-u_bottomNBytesOfDouble(double* d, int n)
@@ -63,10 +57,11 @@
+ 0
+# endif
+ ];
++ }
}
+ #endif /* !IEEE_754 */
- #if defined (U_DEBUG_FAKETIME)
-@@ -297,10 +313,8 @@
+@@ -344,10 +365,8 @@ uprv_isNaN(double number)
return (UBool)((convertedNumber.i64 & U_INT64_MAX) > gInf.i64);
#elif defined(OS390)
@@ -79,7 +74,7 @@
return ((highBits & 0x7F080000L) == 0x7F080000L) &&
(lowBits == 0x00000000L);
-@@ -322,10 +336,8 @@
+@@ -369,10 +388,8 @@ uprv_isInfinite(double number)
/* Infinity is exactly 0x7FF0000000000000U. */
return (UBool)((convertedNumber.i64 & U_INT64_MAX) == gInf.i64);
#elif defined(OS390)
@@ -92,7 +87,7 @@
return ((highBits & ~SIGN) == 0x70FF0000L) && (lowBits == 0x00000000L);
-@@ -354,8 +366,7 @@
+@@ -401,8 +418,7 @@ uprv_isNegativeInfinity(double number)
return (UBool)(number < 0 && uprv_isInfinite(number));
#else
@@ -102,31 +97,3 @@
return((highBits & SIGN) && uprv_isInfinite(number));
#endif
-@@ -447,7 +458,7 @@
- return uprv_getNaN();
-
- /* check for -0 and 0*/
-- lowBits = *(uint32_t*) u_bottomNBytesOfDouble(&x, sizeof(uint32_t));
-+ lowBits = u_bottomOfDoubleAsUint32(x);
- if(x == 0.0 && y == 0.0 && (lowBits & SIGN))
- return y;
-
-@@ -468,7 +479,7 @@
- return uprv_getNaN();
-
- /* check for -0 and 0*/
-- lowBits = *(uint32_t*) u_bottomNBytesOfDouble(&y, sizeof(uint32_t));
-+ lowBits = u_bottomOfDoubleAsUint32(y);
- if(x == 0.0 && y == 0.0 && (lowBits & SIGN))
- return y;
-
-@@ -497,7 +508,7 @@
- if(uprv_isInfinite(d))
- return uprv_getInfinity();
-
-- lowBits = *(uint32_t*) u_bottomNBytesOfDouble(&d, sizeof(uint32_t));
-+ lowBits = u_bottomOfDoubleAsUint32(d);
- if( (d == 0.0 && (lowBits & SIGN)) || d < 0)
- return ceil(d);
- else
-Only in icu/source/common: putil.c.orig
++++++ icu.icu7039.badextract.patch
--- icu.icu7039.badextract.patch
+++ icu.icu7039.badextract.patch
@@ -1,15 +1,3 @@
-diff -ru icu.orig/source/common/unicode/unistr.h icu/source/common/unicode/unistr.h
---- icu.orig/source/common/unicode/unistr.h 2009-07-28 16:02:03.000000000 +0100
-+++ icu/source/common/unicode/unistr.h 2009-07-28 16:36:48.000000000 +0100
-@@ -4048,7 +4048,7 @@
-
- {
- // This dstSize value will be checked explicitly
-- return extract(start, _length, dst, dst!=0 ? 0xffffffff : 0, codepage);
-+ return extract(start, _length, dst, dst!=0 ? (((size_t)dst >= ((size_t)-1) - UINT32_MAX) ? (((char*)UINT32_MAX) - dst) : UINT32_MAX) : 0, codepage);
- }
-
- #endif
diff -ru icu.orig/source/test/intltest/dadrcal.cpp icu/source/test/intltest/dadrcal.cpp
--- icu.orig/source/test/intltest/dadrcal.cpp 2009-07-28 16:01:10.000000000 +0100
+++ icu/source/test/intltest/dadrcal.cpp 2009-07-28 16:52:15.000000000 +0100
++++++ icu4c-4_5_2-src.tgz (new)
++++++ deleted files:
--- icu-3.4-multiarchdevel.patch
--- icu.6969.pkgdata.patch
--- icu4c-4_2_1-src.tgz
More information about the MeeGo-commits
mailing list