Attempt to fix rhbz#1307633 build for i686
Apply patches https://bugzilla.redhat.com/attachment.cgi?id=1131224 https://bugzilla.redhat.com/attachment.cgi?id=1131225 minus the general cleanup split out.
This commit is contained in:
parent
81987aeb79
commit
ccebf13043
128
icu-56.1-codes-cache-extend.patch
Normal file
128
icu-56.1-codes-cache-extend.patch
Normal file
@ -0,0 +1,128 @@
|
||||
--- icu/source/common/udata.orig 2016-02-28 08:21:34.766455512 +0100
|
||||
+++ icu/source/common/udata.cpp 2016-02-28 08:21:56.526493756 +0100
|
||||
@@ -101,7 +101,7 @@ static UDataMemory *udata_findCachedData
|
||||
* that they really need, reducing the size of binaries that take advantage
|
||||
* of this.
|
||||
*/
|
||||
-static UDataMemory *gCommonICUDataArray[10] = { NULL }; // Access protected by icu global mutex.
|
||||
+static UDataMemory *gCommonICUDataArray[32] = { NULL }; // Access protected by icu global mutex.
|
||||
|
||||
static u_atomic_int32_t gHaveTriedToLoadCommonData = ATOMIC_INT32_T_INITIALIZER(0); // See extendICUData().
|
||||
|
||||
@@ -114,7 +114,7 @@ static UDataFileAccess gDataFileAccess
|
||||
static UBool U_CALLCONV
|
||||
udata_cleanup(void)
|
||||
{
|
||||
- int32_t i;
|
||||
+ uint32_t i;
|
||||
|
||||
if (gCommonDataCache) { /* Delete the cache of user data mappings. */
|
||||
uhash_close(gCommonDataCache); /* Table owns the contents, and will delete them. */
|
||||
@@ -135,7 +135,7 @@ static UBool U_CALLCONV
|
||||
findCommonICUDataByName(const char *inBasename)
|
||||
{
|
||||
UBool found = FALSE;
|
||||
- int32_t i;
|
||||
+ uint32_t i;
|
||||
|
||||
UDataMemory *pData = udata_findCachedData(inBasename);
|
||||
if (pData == NULL)
|
||||
@@ -165,7 +165,7 @@ setCommonICUData(UDataMemory *pData,
|
||||
UErrorCode *pErr)
|
||||
{
|
||||
UDataMemory *newCommonData = UDataMemory_createNewInstance(pErr);
|
||||
- int32_t i;
|
||||
+ uint32_t i;
|
||||
UBool didUpdate = FALSE;
|
||||
if (U_FAILURE(*pErr)) {
|
||||
return FALSE;
|
||||
@@ -318,7 +318,7 @@ static UDataMemory *udata_findCachedData
|
||||
static UDataMemory *udata_cacheDataItem(const char *path, UDataMemory *item, UErrorCode *pErr) {
|
||||
DataCacheElement *newElement;
|
||||
const char *baseName;
|
||||
- int32_t nameLen;
|
||||
+ uint32_t nameLen;
|
||||
UHashtable *htable;
|
||||
DataCacheElement *oldValue = NULL;
|
||||
UErrorCode subErr = U_ZERO_ERROR;
|
||||
@@ -343,7 +343,7 @@ static UDataMemory *udata_cacheDataItem(
|
||||
UDatamemory_assign(newElement->item, item);
|
||||
|
||||
baseName = findBasename(path);
|
||||
- nameLen = (int32_t)uprv_strlen(baseName);
|
||||
+ nameLen = (uint32_t)uprv_strlen(baseName);
|
||||
newElement->name = (char *)uprv_malloc(nameLen+1);
|
||||
if (newElement->name == NULL) {
|
||||
*pErr = U_MEMORY_ALLOCATION_ERROR;
|
||||
@@ -456,13 +456,13 @@ UDataPathIterator::UDataPathIterator(con
|
||||
|
||||
/** Item **/
|
||||
basename = findBasename(item);
|
||||
- basenameLen = (int32_t)uprv_strlen(basename);
|
||||
+ basenameLen = (uint32_t)uprv_strlen(basename);
|
||||
|
||||
/** Item path **/
|
||||
if(basename == item) {
|
||||
nextPath = path;
|
||||
} else {
|
||||
- itemPath.append(item, (int32_t)(basename-item), *pErrorCode);
|
||||
+ itemPath.append(item, (uint32_t)(basename-item), *pErrorCode);
|
||||
nextPath = itemPath.data();
|
||||
}
|
||||
#ifdef UDATA_DEBUG
|
||||
@@ -519,16 +519,16 @@ const char *UDataPathIterator::next(UErr
|
||||
|
||||
if(nextPath == itemPath.data()) { /* we were processing item's path. */
|
||||
nextPath = path; /* start with regular path next tm. */
|
||||
- pathLen = (int32_t)uprv_strlen(currentPath);
|
||||
+ pathLen = (uint32_t)uprv_strlen(currentPath);
|
||||
} else {
|
||||
/* fix up next for next time */
|
||||
nextPath = uprv_strchr(currentPath, U_PATH_SEP_CHAR);
|
||||
if(nextPath == NULL) {
|
||||
/* segment: entire path */
|
||||
- pathLen = (int32_t)uprv_strlen(currentPath);
|
||||
+ pathLen = (uint32_t)uprv_strlen(currentPath);
|
||||
} else {
|
||||
/* segment: until next segment */
|
||||
- pathLen = (int32_t)(nextPath - currentPath);
|
||||
+ pathLen = (uint32_t)(nextPath - currentPath);
|
||||
/* skip divider */
|
||||
nextPath ++;
|
||||
}
|
||||
@@ -672,7 +672,7 @@ openCommonData(const char *path,
|
||||
if(gCommonICUDataArray[commonDataIndex] != NULL) {
|
||||
return gCommonICUDataArray[commonDataIndex];
|
||||
}
|
||||
- int32_t i;
|
||||
+ uint32_t i;
|
||||
for(i = 0; i < commonDataIndex; ++i) {
|
||||
if(gCommonICUDataArray[i]->pHeader == &U_ICUDATA_ENTRY_POINT) {
|
||||
/* The linked-in data is already in the list. */
|
||||
@@ -1022,7 +1022,7 @@ static UDataMemory *doLoadFromCommonData
|
||||
UDataMemory *pEntryData;
|
||||
const DataHeader *pHeader;
|
||||
UDataMemory *pCommonData;
|
||||
- int32_t commonDataIndex;
|
||||
+ uint32_t commonDataIndex;
|
||||
UBool checkedExtendedICUData = FALSE;
|
||||
/* try to get common data. The loop is for platforms such as the 390 that do
|
||||
* not initially load the full set of ICU data. If the lookup of an ICU data item
|
||||
@@ -1127,7 +1127,7 @@ doOpenChoice(const char *path, const cha
|
||||
|
||||
const char *dataPath;
|
||||
|
||||
- int32_t tocEntrySuffixIndex;
|
||||
+ uint32_t tocEntrySuffixIndex;
|
||||
const char *tocEntryPathSuffix;
|
||||
UErrorCode subErrorCode=U_ZERO_ERROR;
|
||||
const char *treeChar;
|
||||
@@ -1191,7 +1191,7 @@ doOpenChoice(const char *path, const cha
|
||||
if(isICUData) {
|
||||
pkgName.append(U_ICUDATA_NAME, *pErrorCode);
|
||||
} else {
|
||||
- pkgName.append(path, (int32_t)(treeChar-path), *pErrorCode);
|
||||
+ pkgName.append(path, (uint32_t)(treeChar-path), *pErrorCode);
|
||||
if (first == NULL) {
|
||||
/*
|
||||
This user data has no path, but there is a tree name.
|
29
icu.spec
29
icu.spec
@ -1,6 +1,8 @@
|
||||
#%%global debugtrace 1
|
||||
|
||||
Name: icu
|
||||
Version: 56.1
|
||||
Release: 4%{?dist}
|
||||
Release: 5%{?dist}
|
||||
Summary: International Components for Unicode
|
||||
Group: Development/Tools
|
||||
License: MIT and UCD and Public Domain
|
||||
@ -16,6 +18,7 @@ Patch3: icu.7601.Indic-ccmp.patch
|
||||
Patch4: gennorm2-man.patch
|
||||
Patch5: icuinfo-man.patch
|
||||
Patch6: armv7hl-disable-tests.patch
|
||||
Patch7: %{name}-%{version}-codes-cache-extend.patch
|
||||
|
||||
%description
|
||||
Tools and utilities for developing with icu.
|
||||
@ -66,9 +69,11 @@ BuildArch: noarch
|
||||
%ifarch armv7hl
|
||||
%patch6 -p1 -b .armv7hl-disable-tests.patch
|
||||
%endif
|
||||
%patch7 -p1 -b .codes-cache-extend.patch
|
||||
|
||||
|
||||
%build
|
||||
cd source
|
||||
pushd source
|
||||
autoconf
|
||||
CFLAGS='%optflags -fno-strict-aliasing'
|
||||
CXXFLAGS='%optflags -fno-strict-aliasing'
|
||||
@ -76,8 +81,14 @@ CXXFLAGS='%optflags -fno-strict-aliasing'
|
||||
%if ! 0%{?endian}
|
||||
CPPFLAGS='-DU_IS_BIG_ENDIAN=1'
|
||||
%endif
|
||||
|
||||
#rhbz856594 do not use --disable-renaming or cope with the mess
|
||||
%configure --with-data-packaging=library --disable-samples
|
||||
OPTIONS='--with-data-packaging=library --disable-samples'
|
||||
%if 0%{?debugtrace}
|
||||
OPTIONS=$OPTIONS' --enable-debug --enable-tracing'
|
||||
%endif
|
||||
%configure $OPTIONS
|
||||
|
||||
#rhbz#225896
|
||||
sed -i 's|-nodefaultlibs -nostdlib||' config/mh-linux
|
||||
#rhbz#681941
|
||||
@ -97,6 +108,9 @@ sed -i '/^\s\+\$(INSTALL_DATA) \$(docsrchfiles) \$(DESTDIR)\$(docdir)\/\$(docsub
|
||||
# icu/source/common/unicode/uconfig.h to propagate to consumer packages.
|
||||
test -f uconfig.h.prepend && sed -e '/^#define __UCONFIG_H__/ r uconfig.h.prepend' -i common/unicode/uconfig.h
|
||||
|
||||
# more verbosity for build.log
|
||||
sed -i -r 's|(PKGDATA_OPTS = )|\1-v |' data/Makefile
|
||||
|
||||
make %{?_smp_mflags} VERBOSE=1
|
||||
make %{?_smp_mflags} doc
|
||||
|
||||
@ -118,6 +132,11 @@ if grep -q @VERSION@ source/tools/*/*.8 source/tools/*/*.1 source/config/*.1; th
|
||||
fi
|
||||
make %{?_smp_mflags} -C source check ||:
|
||||
|
||||
# log available codes
|
||||
pushd source
|
||||
LD_LIBRARY_PATH=lib:stubdata:tools/ctestfw:$LD_LIBRARY_PATH bin/uconv -l
|
||||
|
||||
|
||||
%post -n lib%{name} -p /sbin/ldconfig
|
||||
|
||||
%postun -n lib%{name} -p /sbin/ldconfig
|
||||
@ -174,6 +193,10 @@ make %{?_smp_mflags} -C source check ||:
|
||||
%doc source/__docs/%{name}/html/*
|
||||
|
||||
%changelog
|
||||
* Sun Feb 28 2016 Raphael Groner <projects.rg@smart.ms> - 56.1-5
|
||||
- even more verbosity and debug output
|
||||
- add path to extend ICU's internal cache of codes
|
||||
|
||||
* Sat Feb 27 2016 Rex Dieter <rdieter@fedoraproject.org> - 56.1-4
|
||||
- %%build: make VERBOSE=1
|
||||
- %%check: keep 'make check' non-fatal while investigating rhbz#1307633
|
||||
|
Loading…
Reference in New Issue
Block a user