ICU-597 Changes to make ICU work on as/400 (iSeries)

X-SVN-Rev: 7429
This commit is contained in:
George Rhoten 2002-01-11 17:33:52 +00:00
parent a27235b2e2
commit 3e8367d659
5 changed files with 236 additions and 164 deletions

View file

@ -791,7 +791,8 @@ _uhash_put(UHashtable *hash,
goto err;
}
assert(hash != NULL);
if (value.pointer == NULL) {
/* Cannot check for pointer here or iSeries (as/400) sees NULL every time.*/
if (value.integer == 0) {
/* Disallow storage of NULL values, since NULL is returned by
* get() to indicate an absent key. Storing NULL == removing.
*/

View file

@ -25,9 +25,6 @@
/* Define whether inttypes.h is available */
#define U_HAVE_INTTYPES_H 0
/* Define whether namespace is supported */
#define U_HAVE_NAMESPACE 0
/*
* Define what support for C++ streams is available.
* If U_IOSTREAM_SOURCE is set to 199711, then <iostream> is available
@ -53,13 +50,13 @@
#define HAVE_UINT16_T 0
#define HAVE_INT32_T 0
#define HAVE_UINT32_T 0
#define HAVE_BOOL_T 0
/* Define whether namespace is supported */
#define U_HAVE_NAMESPACE 0
/* Determines the endianness of the platform */
#define U_IS_BIG_ENDIAN 1
#define HAVE_DLOPEN 0
/* 1 or 0 to enable or disable threads. If undefined, default is: enable threads. */
#define ICU_USE_THREADS 1
@ -124,10 +121,15 @@ typedef unsigned long uint32_t;
/* These cannot be defined for this platform
#define U_TZSET
#define U_TIMEZONE
#define U_HAVE_TIMEZONE 0
#if U_HAVE_TIMEZONE
# define U_TIMEZONE
#endif
#define U_TZNAME
*/
#define U_HAVE_MMAP 1
/*===========================================================================*/
/* Symbol import-export control */
/*===========================================================================*/
@ -136,8 +138,19 @@ typedef unsigned long uint32_t;
#define U_EXPORT2
#define U_IMPORT
/*===========================================================================*/
/* Code alignment and C function inlining */
/*===========================================================================*/
#ifndef U_INLINE
#define U_INLINE
#endif
#define U_ALIGN_CODE(n)
/*===========================================================================*/
/* Programs used by ICU code */
/*===========================================================================*/
#define U_MAKE "gmake"

View file

@ -244,7 +244,7 @@ case $basic_machine in
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
| s390 | s390x \
| s390 | s390x | as400 \
| sh | sh[34] | sh[34]eb | shbe | shle \
| sparc | sparc64 | sparclet | sparclite | sparcv9 | sparcv9b \
| stormy16 | strongarm \
@ -302,7 +302,7 @@ case $basic_machine in
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* \
| s390-* | s390x-* \
| s390-* | s390x-* | os400-* \
| sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* \
| sparc-* | sparc64-* | sparc86x-* | sparclite-* \
| sparcv9-* | sparcv9b-* | stormy16-* | strongarm-* | sv1-* \
@ -936,6 +936,10 @@ case $basic_machine in
basic_machine=z8k-unknown
os=-sim
;;
as400)
basic_machine=as400
os=-os400
;;
none)
basic_machine=none-none
os=-none
@ -1003,6 +1007,10 @@ case $basic_machine in
basic_machine=c4x-none
os=-coff
;;
as400*)
basic_machine=as400
os=-os400
;;
*-unknown)
# Make sure to match an already-canonicalized machine name.
;;
@ -1111,6 +1119,9 @@ case $os in
-osf*)
os=-osf
;;
-os400*)
os=-os400
;;
-utek*)
os=-bsd
;;

View file

@ -3,18 +3,14 @@
## Copyright (c) 1999-2001, International Business Machines Corporation and
## others. All Rights Reserved.
##
## $Id: mh-os400,v 1.15 2002/01/04 23:48:43 yves-oss Exp $
## $Id: mh-os400,v 1.16 2002/01/11 17:33:52 grhoten-oss Exp $
GEN_DEPS.c= $(CC1) -E -M $(DEFS) $(CPPFLAGS)
GEN_DEPS.cc= $(CXX1) -E -M $(DEFS) $(CPPFLAGS)
## Commands to compile
COMPILE.c= $(CC) $(DEFS) -DOS400 -D_MULTI_THREADED $(CPPFLAGS) $(CFLAGS) -c
COMPILE.cc= $(CXX) $(DEFS) -DOS400 -D_MULTI_THREADED $(CPPFLAGS) $(CXXFLAGS) -c
## Special macro separator for compiling C++
## e.g. -D'U_SRCDATADIR=$(MACRO_SEPARATOR)"$(top_srcdir)/../data/"'
MACRO_SEPARATOR=\x40
COMPILE.c= $(CC) $(DEFS) -DOS400 -D_MULTI_THREADED $(CPPFLAGS) $(CFLAGS) -c -qTERASPACE=*YES -qSTGMDL=*INHERIT
COMPILE.cc= $(CXX) $(DEFS) -DOS400 -D_MULTI_THREADED $(CPPFLAGS) $(CXXFLAGS) -c -qTERASPACE=*YES -qSTGMDL=*INHERIT
## Commands to link
## We need to use the C++ linker, even when linking C programs, since
@ -62,7 +58,7 @@ LIBICUDT = $(top_builddir)/data/libicudata.o
LIBICUUC = $(top_builddir)/common/libicuuc.o
LIBICUI18N = $(top_builddir)/i18n/libicui18n.o
LIBICULE = $(top_builddir)/layout/libicule.o
LIBCTESTFW = $(top_builddir)/tools/ctestfw/libctestfw.o
LIBCTESTFW = $(top_builddir)/tools/ctestfw/libicuctestfw.o
LIBICUTOOLUTIL = $(top_builddir)/tools/toolutil/libicutoolutil.o
LIBUSTDIO= $(top_builddir)/extra/ustdio/libustdio.o

343
icu4c/source/configure vendored

File diff suppressed because it is too large Load diff