mirror of
https://github.com/unicode-org/icu.git
synced 2025-04-13 08:53:20 +00:00
ICU-1556 Fixes for 64-bit AIX.
X-SVN-Rev: 8170
This commit is contained in:
parent
10bef227fa
commit
71f955b6cc
9 changed files with 279 additions and 178 deletions
icu4c/source
|
@ -3,7 +3,7 @@
|
|||
## Copyright (c) 1999-2002, International Business Machines Corporation and
|
||||
## others. All Rights Reserved.
|
||||
##
|
||||
## $Id: mh-aix,v 1.27 2002/03/14 02:00:35 srl Exp $
|
||||
## $Id: mh-aix,v 1.28 2002/03/21 01:26:39 grhoten-oss Exp $
|
||||
##
|
||||
## Please note: AIX does NOT have library versioning per se (there is no 'SONAME' capability).
|
||||
## So, we are using 'windows' style library names, that is, libicuuc20.1.so instead of libicuuc.so.20.1
|
||||
|
@ -13,7 +13,7 @@ GEN_DEPS.c= $(CC) -E -M $(DEFS) $(CPPFLAGS)
|
|||
GEN_DEPS.cc= $(CXX) -E -M $(DEFS) $(CPPFLAGS)
|
||||
|
||||
## Commands to compile
|
||||
COMPILE.c= $(CC) $(DEFS) $(CPPFLAGS) $(CFLAGS) -qroconst -c
|
||||
COMPILE.c= $(CC) $(DEFS) $(CPPFLAGS) $(CFLAGS) -qroconst -c
|
||||
COMPILE.cc= $(CXX) $(DEFS) $(CPPFLAGS) $(CXXFLAGS) -qroconst -c
|
||||
|
||||
## Commands to link
|
||||
|
@ -23,8 +23,8 @@ LINK.c= $(CXX) -brtl $(DEFS) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS)
|
|||
LINK.cc= $(CXX) -brtl $(DEFS) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS)
|
||||
|
||||
## Commands to make a shared library
|
||||
SHLIB.c= $(AIX_SHLIB) -p 5000 -brtl
|
||||
SHLIB.cc= $(AIX_SHLIB) -p 5000 -brtl
|
||||
SHLIB.c= $(AIX_SHLIB) -p 5000 -brtl $(LDFLAGS)
|
||||
SHLIB.cc= $(AIX_SHLIB) -p 5000 -brtl $(LDFLAGS)
|
||||
|
||||
## Compiler switch to embed a runtime search path
|
||||
LD_RPATH= -I
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
## Copyright (c) 1999-2002, International Business Machines Corporation and
|
||||
## others. All Rights Reserved.
|
||||
##
|
||||
## $Id: mh-aix-va,v 1.20 2002/03/14 02:00:36 srl Exp $
|
||||
## $Id: mh-aix-va,v 1.21 2002/03/21 01:26:39 grhoten-oss Exp $
|
||||
|
||||
## Commands to generate dependency files
|
||||
GEN_DEPS.c= $(CC) -E -M $(DEFS) $(CPPFLAGS)
|
||||
|
@ -23,8 +23,8 @@ LINK.cc= $(CXX) -brtl -bh:5 $(DEFS) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS)
|
|||
## -G means -berok -brtl -bnortllib -bnosymbolic -bnoautoexp
|
||||
## -bh:8 means halt on errors or worse. We don't display warnings about
|
||||
## duplicate inline symbols.
|
||||
SHLIB.c= $(CXX) -qmkshrobj -G -brtl
|
||||
SHLIB.cc= $(CXX) -qmkshrobj -G -brtl -bh:5
|
||||
SHLIB.c= $(CXX) -qmkshrobj -G -brtl $(LDFLAGS)
|
||||
SHLIB.cc= $(CXX) -qmkshrobj -G -brtl -bh:5 $(LDFLAGS)
|
||||
|
||||
## Compiler switch to embed a runtime search path
|
||||
LD_RPATH= -I
|
||||
|
|
394
icu4c/source/configure
vendored
394
icu4c/source/configure
vendored
File diff suppressed because it is too large
Load diff
|
@ -4,7 +4,7 @@ dnl Copyright (c) 1999-2000, International Business Machines Corporation and
|
|||
dnl others. All Rights Reserved.
|
||||
dnl Stephen F. Booth, heavily modified by Yves and others
|
||||
|
||||
dnl $Id: configure.in,v 1.162 2002/03/20 22:38:08 yves-oss Exp $
|
||||
dnl $Id: configure.in,v 1.163 2002/03/21 01:26:39 grhoten-oss Exp $
|
||||
|
||||
dnl Process this file with autoconf to produce a configure script
|
||||
AC_INIT(common/unicode/utypes.h)
|
||||
|
@ -76,7 +76,6 @@ AC_CANONICAL_HOST
|
|||
AC_EXEEXT
|
||||
|
||||
dnl Check if we can build and use 64-bit libraries
|
||||
OLD_CPPFLAGS="${CPPFLAGS}"
|
||||
AC_ARG_ENABLE(64bit-libs,
|
||||
[ --enable-64bit-libs build 64-bit libraries [default=yes]],
|
||||
[ENABLE_64BIT_LIBS=${enableval}],
|
||||
|
@ -99,7 +98,9 @@ AC_CACHE_CHECK([for 64-bit executable support], ac_cv_64bit_ok,
|
|||
SOL64=`$CXX -xarch=v9 2>&1 && $CC -xarch=v9 2>&1 | grep -v usage:`
|
||||
SPARCV9=`isainfo -n 2>&1 | grep sparcv9`
|
||||
if test -z "$SOL64" && test -n "$SPARCV9"; then
|
||||
CPPFLAGS="${CPPFLAGS} -xtarget=ultra -xarch=v9"
|
||||
CFLAGS="${CFLAGS} -xtarget=ultra -xarch=v9"
|
||||
CXXFLAGS="${CXXFLAGS} -xtarget=ultra -xarch=v9"
|
||||
LDFLAGS="${LDFLAGS} -xtarget=ultra -xarch=v9"
|
||||
ENABLE_64BIT_LIBS=yes
|
||||
else
|
||||
ENABLE_64BIT_LIBS=no
|
||||
|
@ -108,11 +109,23 @@ AC_CACHE_CHECK([for 64-bit executable support], ac_cv_64bit_ok,
|
|||
ENABLE_64BIT_LIBS=no
|
||||
fi
|
||||
;;
|
||||
# *-*-aix*)
|
||||
# CPPFLAGS="${CPPFLAGS} -q64"
|
||||
# AC_TRY_RUN(int main(void) {return 0;},
|
||||
# ENABLE_64BIT_LIBS=yes, ENABLE_64BIT_LIBS=no, ENABLE_64BIT_LIBS=no)
|
||||
# ;;
|
||||
*-*-aix*)
|
||||
OLD_CFLAGS="${CFLAGS}"
|
||||
OLD_CXXFLAGS="${CXXFLAGS}"
|
||||
OLD_LDFLAGS="${LDFLAGS}"
|
||||
CFLAGS="${CFLAGS} -q64"
|
||||
CXXFLAGS="${CXXFLAGS} -q64"
|
||||
LDFLAGS="${LDFLAGS} -q64"
|
||||
AC_TRY_RUN(int main(void) {return 0;},
|
||||
ENABLE_64BIT_LIBS=yes, ENABLE_64BIT_LIBS=no, ENABLE_64BIT_LIBS=no)
|
||||
if test "$ENABLE_64BIT_LIBS" = no; then
|
||||
CFLAGS="${OLD_CFLAGS}"
|
||||
CXXFLAGS="${OLD_CXXFLAGS}"
|
||||
LDFLAGS="${OLD_LDFLAGS}"
|
||||
else
|
||||
ARFLAGS="${ARFLAGS} -X64"
|
||||
fi
|
||||
;;
|
||||
*-*-hpux*)
|
||||
ENABLE_64BIT_LIBS=unknown
|
||||
;;
|
||||
|
@ -127,6 +140,7 @@ AC_CACHE_CHECK([for 64-bit executable support], ac_cv_64bit_ok,
|
|||
# Don't reset the CPPFLAGS here because of HP/UX
|
||||
# Individual tests that fail should reset it to OLD_CPPFLAGS.
|
||||
ENABLE_64BIT_LIBS="${ac_cv_64bit_ok}"
|
||||
AC_SUBST(ARFLAGS)
|
||||
AC_SUBST(ENABLE_64BIT_LIBS)
|
||||
|
||||
ICU_CHECK_MH_FRAG
|
||||
|
|
|
@ -17,6 +17,7 @@ SHELL=@SHELL@
|
|||
CFLAGS=@CFLAGS@
|
||||
CPPFLAGS=@CPPFLAGS@ -I$(top_builddir)/common -I$(top_srcdir)/common
|
||||
CXXFLAGS=@CXXFLAGS@
|
||||
LDFLAGS=@LDFLAGS@
|
||||
FFLAGS=@FFLAGS@
|
||||
DEFS=@DEFS@
|
||||
ENABLE_RPATH=@ENABLE_RPATH@
|
||||
|
|
|
@ -17,6 +17,7 @@ SHELL=@SHELL@
|
|||
CFLAGS=@CFLAGS@
|
||||
CPPFLAGS=@CPPFLAGS@ -I$(top_builddir)/common -I$(top_srcdir)/common
|
||||
CXXFLAGS=@CXXFLAGS@
|
||||
LDFLAGS=@LDFLAGS@
|
||||
FFLAGS=@FFLAGS@
|
||||
DEFS=@DEFS@
|
||||
ENABLE_RPATH=@ENABLE_RPATH@
|
||||
|
|
|
@ -86,6 +86,7 @@ CC = @CC@
|
|||
CXX = @CXX@
|
||||
AIX_SHLIB = @AIX_SHLIB@
|
||||
AR = @AR@
|
||||
ARFLAGS := @ARFLAGS@ $(ARFLAGS)
|
||||
RANLIB = @RANLIB@
|
||||
|
||||
# Echo w/o newline
|
||||
|
|
|
@ -104,7 +104,7 @@ void CanonicalIteratorTest::TestExhaustive() {
|
|||
}
|
||||
|
||||
if (!gotSource || !gotDecomp || !gotComp) {
|
||||
errln("FAIL CanonicalIterator: " + s + i);
|
||||
errln("FAIL CanonicalIterator: " + s + (int)i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -561,13 +561,13 @@ void UnicodeSetTest::TestIndexOf() {
|
|||
for (int32_t i=0; i<set.size(); ++i) {
|
||||
UChar32 c = set.charAt(i);
|
||||
if (set.indexOf(c) != i) {
|
||||
errln((UnicodeString)"FAIL: charAt(" + i + ") = " + c +
|
||||
" => indexOf() => " + set.indexOf(c));
|
||||
errln("FAIL: charAt(%d) = %X => indexOf() => %d",
|
||||
i, c, set.indexOf(c));
|
||||
}
|
||||
}
|
||||
UChar32 c = set.charAt(set.size());
|
||||
if (c != -1) {
|
||||
errln((UnicodeString)"FAIL: charAt(<out of range>) = " + c);
|
||||
errln("FAIL: charAt(<out of range>) = %X", c);
|
||||
}
|
||||
int32_t j = set.indexOf((UChar32)0x71/*'q'*/);
|
||||
if (j != -1) {
|
||||
|
@ -579,11 +579,11 @@ void UnicodeSetTest::TestExhaustive() {
|
|||
// exhaustive tests. Simulate UnicodeSets with integers.
|
||||
// That gives us very solid tests (except for large memory tests).
|
||||
|
||||
UChar32 limit = (UChar32)128;
|
||||
int32_t limit = (UChar32)128;
|
||||
|
||||
UnicodeSet x, y, z;
|
||||
|
||||
for (UChar32 i = 0; i < limit; ++i) {
|
||||
for (int32_t i = 0; i < limit; ++i) {
|
||||
bitsToSet(i, x);
|
||||
logln((UnicodeString)"Testing " + i + ", " + x);
|
||||
_testComplement(i, x, y);
|
||||
|
@ -679,13 +679,13 @@ void UnicodeSetTest::checkCanonicalRep(const UnicodeSet& set, const UnicodeStrin
|
|||
if (start > end) {
|
||||
errln((UnicodeString)"FAIL result of " + msg +
|
||||
": range " + (i+1) +
|
||||
" start > end: " + start + ", " + end +
|
||||
" start > end: " + (int)start + ", " + (int)end +
|
||||
" for " + set);
|
||||
}
|
||||
if (i > 0 && start <= last) {
|
||||
errln((UnicodeString)"FAIL result of " + msg +
|
||||
": range " + (i+1) +
|
||||
" overlaps previous range: " + start + ", " + end +
|
||||
" overlaps previous range: " + (int)start + ", " + (int)end +
|
||||
" for " + set);
|
||||
}
|
||||
last = end;
|
||||
|
|
Loading…
Add table
Reference in a new issue