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
|
Name: icu
|
||||||
Version: 56.1
|
Version: 56.1
|
||||||
Release: 4%{?dist}
|
Release: 5%{?dist}
|
||||||
Summary: International Components for Unicode
|
Summary: International Components for Unicode
|
||||||
Group: Development/Tools
|
Group: Development/Tools
|
||||||
License: MIT and UCD and Public Domain
|
License: MIT and UCD and Public Domain
|
||||||
@ -16,6 +18,7 @@ Patch3: icu.7601.Indic-ccmp.patch
|
|||||||
Patch4: gennorm2-man.patch
|
Patch4: gennorm2-man.patch
|
||||||
Patch5: icuinfo-man.patch
|
Patch5: icuinfo-man.patch
|
||||||
Patch6: armv7hl-disable-tests.patch
|
Patch6: armv7hl-disable-tests.patch
|
||||||
|
Patch7: %{name}-%{version}-codes-cache-extend.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Tools and utilities for developing with icu.
|
Tools and utilities for developing with icu.
|
||||||
@ -66,9 +69,11 @@ BuildArch: noarch
|
|||||||
%ifarch armv7hl
|
%ifarch armv7hl
|
||||||
%patch6 -p1 -b .armv7hl-disable-tests.patch
|
%patch6 -p1 -b .armv7hl-disable-tests.patch
|
||||||
%endif
|
%endif
|
||||||
|
%patch7 -p1 -b .codes-cache-extend.patch
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
cd source
|
pushd source
|
||||||
autoconf
|
autoconf
|
||||||
CFLAGS='%optflags -fno-strict-aliasing'
|
CFLAGS='%optflags -fno-strict-aliasing'
|
||||||
CXXFLAGS='%optflags -fno-strict-aliasing'
|
CXXFLAGS='%optflags -fno-strict-aliasing'
|
||||||
@ -76,8 +81,14 @@ CXXFLAGS='%optflags -fno-strict-aliasing'
|
|||||||
%if ! 0%{?endian}
|
%if ! 0%{?endian}
|
||||||
CPPFLAGS='-DU_IS_BIG_ENDIAN=1'
|
CPPFLAGS='-DU_IS_BIG_ENDIAN=1'
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
#rhbz856594 do not use --disable-renaming or cope with the mess
|
#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
|
#rhbz#225896
|
||||||
sed -i 's|-nodefaultlibs -nostdlib||' config/mh-linux
|
sed -i 's|-nodefaultlibs -nostdlib||' config/mh-linux
|
||||||
#rhbz#681941
|
#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.
|
# 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
|
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} VERBOSE=1
|
||||||
make %{?_smp_mflags} doc
|
make %{?_smp_mflags} doc
|
||||||
|
|
||||||
@ -118,6 +132,11 @@ if grep -q @VERSION@ source/tools/*/*.8 source/tools/*/*.1 source/config/*.1; th
|
|||||||
fi
|
fi
|
||||||
make %{?_smp_mflags} -C source check ||:
|
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
|
%post -n lib%{name} -p /sbin/ldconfig
|
||||||
|
|
||||||
%postun -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/*
|
%doc source/__docs/%{name}/html/*
|
||||||
|
|
||||||
%changelog
|
%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
|
* Sat Feb 27 2016 Rex Dieter <rdieter@fedoraproject.org> - 56.1-4
|
||||||
- %%build: make VERBOSE=1
|
- %%build: make VERBOSE=1
|
||||||
- %%check: keep 'make check' non-fatal while investigating rhbz#1307633
|
- %%check: keep 'make check' non-fatal while investigating rhbz#1307633
|
||||||
|
Loading…
Reference in New Issue
Block a user