diff options
author | Peter Breitenlohner <peb@mppmu.mpg.de> | 2010-07-05 15:56:46 +0000 |
---|---|---|
committer | Peter Breitenlohner <peb@mppmu.mpg.de> | 2010-07-05 15:56:46 +0000 |
commit | 5209134cd9d89ac7808e5651bf530c736f2d7449 (patch) | |
tree | 0514b0113efce7fc1adb049ec0624599a2077d1c | |
parent | bd3749566d917b091daaebf65e7ebcf079cf10fa (diff) |
more aix build fixes
git-svn-id: svn://tug.org/texlive/trunk@19246 c570f23f-e606-0410-a88d-b1316a301751
5 files changed, 50 insertions, 8 deletions
diff --git a/Build/source/libs/graphite/engine-2.3.1-PATCHES/ChangeLog b/Build/source/libs/graphite/engine-2.3.1-PATCHES/ChangeLog index 1635bc0723c..dbe5842a1ad 100644 --- a/Build/source/libs/graphite/engine-2.3.1-PATCHES/ChangeLog +++ b/Build/source/libs/graphite/engine-2.3.1-PATCHES/ChangeLog @@ -4,6 +4,10 @@ initialized static const class members, required for AIX. From Vladimir Volovich, Fri, 04 Jun 2010 19:46:38. + * patch-07-stdlib-workaround (new): Work around stdlib problems, + requires -DUSE_STDLIB_WORKAROUNDS for AIX (and MinGW32?). + From Vladimir Volovich, Mon, 05 Jul 2010 14:05:18. + 2010-03-29 Peter Breitenlohner <peb@mppmu.mpg.de> * patch-05-copy-constr (new): Declare copy constructor's source diff --git a/Build/source/libs/graphite/engine-2.3.1-PATCHES/patch-03-SIZEOF_WCHAR_T b/Build/source/libs/graphite/engine-2.3.1-PATCHES/patch-03-SIZEOF_WCHAR_T index 86ff5fdc3c2..baf160081fb 100644 --- a/Build/source/libs/graphite/engine-2.3.1-PATCHES/patch-03-SIZEOF_WCHAR_T +++ b/Build/source/libs/graphite/engine-2.3.1-PATCHES/patch-03-SIZEOF_WCHAR_T @@ -6,10 +6,11 @@ diff -ur engine-2.3.1.orig/src/font/FileFont.cpp engine-2.3.1/src/font/FileFont. // } #else - m_stuFaceName.assign(rgchwFace); -+ // m_stuFaceName.assign(rgchwFace); - // VS 2005 needs this: +- // VS 2005 needs this: - //for (int cch16 = 0; cch16 < cchw; cch16++) - // m_stuFaceName.push_back(rgchwFace[cch16]); ++ // m_stuFaceName.assign(rgchwFace); ++ // VS 2005 and MinGW32 need this: + for (int cch16 = 0; cch16 < cchw; cch16++) + m_stuFaceName.push_back(rgchwFace[cch16]); #endif diff --git a/Build/source/libs/graphite/engine-2.3.1-PATCHES/patch-07-stdlib-workaround b/Build/source/libs/graphite/engine-2.3.1-PATCHES/patch-07-stdlib-workaround new file mode 100644 index 00000000000..c0e0ae20cde --- /dev/null +++ b/Build/source/libs/graphite/engine-2.3.1-PATCHES/patch-07-stdlib-workaround @@ -0,0 +1,35 @@ +diff -ur engine-2.3.1.orig/src/font/FileFont.cpp engine-2.3.1/src/font/FileFont.cpp +--- engine-2.3.1.orig/src/font/FileFont.cpp 2010-02-19 23:30:05.000000000 +0100 ++++ engine-2.3.1/src/font/FileFont.cpp 2010-07-05 17:33:59.065493280 +0200 +@@ -209,7 +209,7 @@ + // } + #else + // m_stuFaceName.assign(rgchwFace); +- // VS 2005 and MinGW32 need this: ++ // VS 2005, MinGW32, and AIX need this: + for (int cch16 = 0; cch16 < cchw; cch16++) + m_stuFaceName.push_back(rgchwFace[cch16]); + #endif +diff -ur engine-2.3.1.orig/src/font/TtfUtil.cpp engine-2.3.1/src/font/TtfUtil.cpp +--- engine-2.3.1.orig/src/font/TtfUtil.cpp 2009-10-01 22:48:21.000000000 +0200 ++++ engine-2.3.1/src/font/TtfUtil.cpp 2010-07-05 17:37:51.200867045 +0200 +@@ -784,12 +784,14 @@ + uint16 * pStr = reinterpret_cast<uint16 *>(pWStr); + uint16 * const pStrEnd = pStr + (nSize == 0 ? gr::utf16len(pStr) : nSize); + ++#ifndef USE_STDLIB_WORKAROUNDS + std::transform(pStr, pStrEnd, pStr, read<uint16>); +- +-// for (int i = 0; i < nSize; i++) +-// { // swap the wide characters in the string +-// pStr[i] = gr::utf16(read(uint16(pStr[i]))); +-// } ++#else ++ for (int i = 0; i < nSize; i++) ++ { // swap the wide characters in the string ++ pStr[i] = gr::utf16(read(uint16(pStr[i]))); ++ } ++#endif + } + + /*---------------------------------------------------------------------------------------------- diff --git a/Build/source/libs/graphite/engine-2.3.1/src/font/FileFont.cpp b/Build/source/libs/graphite/engine-2.3.1/src/font/FileFont.cpp index 4e5f2a62578..59e69903fce 100644 --- a/Build/source/libs/graphite/engine-2.3.1/src/font/FileFont.cpp +++ b/Build/source/libs/graphite/engine-2.3.1/src/font/FileFont.cpp @@ -209,7 +209,7 @@ FileFont::initializeFromFace() // } #else // m_stuFaceName.assign(rgchwFace); - // VS 2005 needs this: + // VS 2005, MinGW32, and AIX need this: for (int cch16 = 0; cch16 < cchw; cch16++) m_stuFaceName.push_back(rgchwFace[cch16]); #endif diff --git a/Build/source/libs/graphite/engine-2.3.1/src/font/TtfUtil.cpp b/Build/source/libs/graphite/engine-2.3.1/src/font/TtfUtil.cpp index 4fe98adadb2..d2781ccac5f 100644 --- a/Build/source/libs/graphite/engine-2.3.1/src/font/TtfUtil.cpp +++ b/Build/source/libs/graphite/engine-2.3.1/src/font/TtfUtil.cpp @@ -784,12 +784,14 @@ void SwapWString(void * pWStr, size_t nSize /* = 0 */) throw (std::invalid_argum uint16 * pStr = reinterpret_cast<uint16 *>(pWStr); uint16 * const pStrEnd = pStr + (nSize == 0 ? gr::utf16len(pStr) : nSize); +#ifndef USE_STDLIB_WORKAROUNDS std::transform(pStr, pStrEnd, pStr, read<uint16>); - -// for (int i = 0; i < nSize; i++) -// { // swap the wide characters in the string -// pStr[i] = gr::utf16(read(uint16(pStr[i]))); -// } +#else + for (int i = 0; i < nSize; i++) + { // swap the wide characters in the string + pStr[i] = gr::utf16(read(uint16(pStr[i]))); + } +#endif } /*---------------------------------------------------------------------------------------------- |