diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2003-03-27 11:01:26 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2003-03-27 11:01:26 +0000 |
commit | 0813a3f0f4986a9d454991c84515a072965d6887 (patch) | |
tree | 6a5a27170fcd812750cd6f196684d46fe058c702 /stlport | |
parent | eb62b06be2da4592da0bedf2e8814bcf0f691905 (diff) |
MWS_SRX644: migrate branch mws_srx644 -> HEAD
Diffstat (limited to 'stlport')
-rw-r--r-- | stlport/STLport-4.0.macosx.patch | 974 | ||||
-rw-r--r-- | stlport/download/STLport-4.5-0119.tar.gz | bin | 0 -> 2424604 bytes | |||
-rw-r--r-- | stlport/makefile.mk | 74 | ||||
-rw-r--r-- | stlport/prj/d.lst | 1 | ||||
-rwxr-xr-x | stlport/win32_custom.sh | 9 | ||||
-rw-r--r-- | stlport/win32_sdk.sh | 9 |
6 files changed, 1044 insertions, 23 deletions
diff --git a/stlport/STLport-4.0.macosx.patch b/stlport/STLport-4.0.macosx.patch new file mode 100644 index 000000000000..dde89069f629 --- /dev/null +++ b/stlport/STLport-4.0.macosx.patch @@ -0,0 +1,974 @@ +diff -Naur ./src/fstream.cpp ./src/fstream.cpp +--- misc/build/STLport-4.0/src/fstream.cpp Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/src/fstream.cpp Tue Mar 20 11:59:14 2001 +@@ -30,6 +30,9 @@ + # include <sys/mman.h> // For mmap + # include <unistd.h> + # include <fcntl.h> ++# ifdef __APPLE__ ++# include <sys/sysctl.h> ++# endif + #elif defined (__STL_USE_WIN32_IO) + # define WIN32_LEAN_AND_MEAN + # include <windows.h> +@@ -326,7 +329,19 @@ + { + if (!_M_page_size) + #if defined (__STL_UNIX) ++# if defined (__APPLE__) ++ { ++ int mib[2]; ++ size_t pagesize, len; ++ mib[0] = CTL_HW; ++ mib[1] = HW_PAGESIZE; ++ len = sizeof(pagesize); ++ sysctl(mib, 2, &pagesize, &len, NULL, 0); ++ _M_page_size = pagesize; ++ } ++# else + _M_page_size = sysconf(_SC_PAGESIZE); ++# endif + # elif defined (__STL_USE_WIN32_IO) + { + SYSTEM_INFO SystemInfo; +diff -Naur ./src/gcc-apple-macosx.mak ./src/gcc-apple-macosx.mak +--- misc/build/STLport-4.0/src/gcc-apple-macosx.mak Wed Dec 31 16:00:00 1969 ++++ misc/build/STLport-4.0/src/gcc-apple-macosx.mak Tue Mar 20 12:04:05 2001 +@@ -0,0 +1,70 @@ ++# ++# Note : this makefile is for gcc-2.95 and later ! ++# ++ ++# ++# compiler ++# ++CC = cc ++CXX = cc ++ ++# ++# Basename for libraries ++# ++LIB_BASENAME = libstlport_gcc ++ ++# ++# guts for common stuff ++# ++# ++LINK=libtool -static -o ++# 2.95 flag ++DYN_LINK=libtool -dynamic -framework System -lcc_dynamic -lstdc++ -install_name @executable_path/$(@F) -o ++ ++OBJEXT=o ++DYNEXT=dylib ++STEXT=a ++RM=rm -Rf ++PATH_SEP=/ ++MKDIR=mkdir -p ++COMP=GCC$(ARCH) ++ ++all: all_dynamic all_static ++ ++include common_macros.mak ++ ++WARNING_FLAGS= -W -Wno-sign-compare -Wno-unused -Wno-uninitialized -Wno-long-double ++ ++CXXFLAGS_COMMON = -I${STLPORT_DIR} ${WARNING_FLAGS} -D_REENTRANT -D_PTHREADS ++ ++ifneq ("$(shell uname -r)", "1.2") ++CXXFLAGS_COMMON += -fno-coalesce ++endif ++ ++CXXFLAGS_RELEASE_static = $(CXXFLAGS_COMMON) -O2 ++CXXFLAGS_RELEASE_dynamic = $(CXXFLAGS_COMMON) -O2 -fPIC ++ ++CXXFLAGS_DEBUG_static = $(CXXFLAGS_COMMON) -g ++CXXFLAGS_DEBUG_dynamic = $(CXXFLAGS_COMMON) -g -fPIC ++ ++CXXFLAGS_STLDEBUG_static = $(CXXFLAGS_DEBUG_static) -D__STL_DEBUG ++CXXFLAGS_STLDEBUG_dynamic = $(CXXFLAGS_DEBUG_dynamic) -D__STL_DEBUG -fPIC ++ ++# Add a single source file where all static data members for template classes ++# are initialized ++RELEASE_OBJECTS_static += \ ++ $(RELEASE_OBJDIR_static)$(PATH_SEP)static_instances.o ++DEBUG_OBJECTS_static += \ ++ $(DEBUG_OBJDIR_static)$(PATH_SEP)static_instances.o ++STLDEBUG_OBJECTS_static += \ ++ $(STLDEBUG_OBJDIR_static)$(PATH_SEP)static_instances.o ++RELEASE_OBJECTS_dynamic += \ ++ $(RELEASE_OBJDIR_dynamic)$(PATH_SEP)static_instances.o ++DEBUG_OBJECTS_dynamic += \ ++ $(DEBUG_OBJDIR_dynamic)$(PATH_SEP)static_instances.o ++STLDEBUG_OBJECTS_dynamic += \ ++ $(STLDEBUG_OBJDIR_dynamic)$(PATH_SEP)static_instances.o ++ ++include common_percent_rules.mak ++include common_rules.mak ++ +diff -Naur ./src/message_facets.cpp ./src/message_facets.cpp +--- misc/build/STLport-4.0/src/message_facets.cpp Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/src/message_facets.cpp Tue Mar 20 11:59:15 2001 +@@ -31,8 +31,8 @@ + // Don't bother to do anything unless we're using a non-default ctype facet + try { + typedef ctype<_Char> wctype; +- const wctype& wct = use_facet<wctype>(L); +- const wctype* zz = (const wctype*)0; ++ wctype& wct = (wctype &)use_facet<wctype>(L); ++ wctype* zz = (wctype*)0; + if (typeid(&wct) != typeid(zz)) { + if (!M) + M = new hash_map<int, locale, hash<int>, equal_to<int> >; +diff -Naur ./src/num_put_float.cpp ./src/num_put_float.cpp +--- misc/build/STLport-4.0/src/num_put_float.cpp Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/src/num_put_float.cpp Tue Mar 20 12:01:44 2001 +@@ -43,13 +43,15 @@ + + # ifdef __STL_UNIX + +-# include <values.h> ++# ifndef __APPLE__ ++# include <values.h> ++# endif + + # if defined (__sun) + # include <floatingpoint.h> + # endif + +-# if !defined(__STL_USE_GLIBC) && !defined(__FreeBSD__) // dwa 1/10/00 - nan.h not supplied with gcc ++# if !defined(__STL_USE_GLIBC) && !defined(__FreeBSD__) && !( defined(__GNUC__) && defined(__APPLE__) ) // dwa 1/10/00 - nan.h not supplied with gcc + // DEC & Solaris need this + # include <nan.h> + # endif +@@ -95,7 +97,7 @@ + # endif + inline bool _Stl_is_inf(double x) { return isinf(x); } + inline bool _Stl_is_neg_inf(double x) { return isinf(x) < 0; } +-#elif defined(__unix) && !defined(__FreeBSD__) /* (__sgi) || defined (__sun) IRIX , Solaris, others ? */ ++#elif defined(__unix) && !defined(__FreeBSD__) && !defined(__APPLE__) /* (__sgi) || defined (__sun) IRIX , Solaris, others ? */ + inline bool _Stl_is_nan_or_inf(double x) { return IsNANorINF(x); } + inline bool _Stl_is_inf(double x) { return IsNANorINF(x) && IsINF(x); } + inline bool _Stl_is_neg_inf(double x) { return (IsINF(x)) && (x < 0.0); } +@@ -124,7 +126,7 @@ + bool _Stl_is_inf(double x) { return !isfinite(x); } + bool _Stl_is_neg_inf(double x) { return !isfinite(x) && signbit(x); } + bool _Stl_is_neg_nan(double x) { return isnan(x) && signbit(x); } +-#elif defined (__FreeBSD__) ++#elif defined (__FreeBSD__) || ( defined (__GNUC__) && defined (__APPLE__) ) + inline bool _Stl_is_nan_or_inf(double x) { return !finite(x); } + inline bool _Stl_is_inf(double x) { + return _Stl_is_nan_or_inf(x) && ! isnan(x); +@@ -193,7 +195,7 @@ + { return _ldfcvt(*(long_double*)&x, n, pt, sign); } + # endif + +-#elif defined (__unix) && !defined(__FreeBSD__)/* defined(__sgi) IRIX */ ++#elif defined (__unix) && !defined(__FreeBSD__) && !defined(__APPLE__) /* defined(__sgi) IRIX */ + inline char* _Stl_ecvtR(double x, int n, int* pt, int* sign, char* buf) + { return ecvt_r(x, n, pt, sign, buf); } + inline char* _Stl_fcvtR(double x, int n, int* pt, int* sign, char* buf) +@@ -203,7 +205,7 @@ + inline char* _Stl_qfcvtR(long double x, int n, int* pt, int* sign, char* buf) + { return qfcvt_r(x, n, pt, sign, buf); } + +-#elif defined (__FreeBSD__) ++#elif defined (__FreeBSD__) || ( defined (__GNUC__) && defined (__APPLE__) ) + + /* + * Copyright (c) 1995-1997 The Apache Group. All rights reserved. +diff -Naur ./src/static_instances.cpp ./src/static_instances.cpp +--- misc/build/STLport-4.0/src/static_instances.cpp Wed Dec 31 16:00:00 1969 ++++ misc/build/STLport-4.0/src/static_instances.cpp Tue Mar 20 12:04:13 2001 +@@ -0,0 +1,31 @@ ++/* ++ * Copyright (c) 1999 ++ * Silicon Graphics Computer Systems, Inc. ++ * ++ * Copyright (c) 1999 ++ * Boris Fomitchev ++ * ++ * This material is provided "as is", with absolutely no warranty expressed ++ * or implied. Any use is at your own risk. ++ * ++ * Permission to use or copy this software for any purpose is hereby granted ++ * without fee, provided the above notices are retained on all copies. ++ * Permission to modify the code and to distribute modified code is granted, ++ * provided the above notices are retained, and a notice that the code was ++ * modified is included with the above copyright notice. ++ * ++ */ ++ ++# ifndef __PUT_STATIC_DATA_MEMBERS_HERE ++# define __PUT_STATIC_DATA_MEMBERS_HERE ++# endif ++ ++# include "stlport_prefix.h" ++ ++# include <hash_map> ++# include <limits> ++# include <rope> ++ ++// Local Variables: ++// mode:C++ ++// End: +diff -Naur ./stlport/config/stl_gcc.h ./stlport/config/stl_gcc.h +--- misc/build/STLport-4.0/stlport/config/stl_gcc.h Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/config/stl_gcc.h Tue Mar 20 12:02:30 2001 +@@ -42,6 +42,33 @@ + # define __STL_NO_NATIVE_MBSTATE_T 1 + # endif + ++/* Mac OS X is a little different with namespaces and cannot instantiate ++ * static data members in template classes */ ++# if defined (__APPLE__) ++/* Mac OS X is missing a required typedef and standard macro */ ++typedef unsigned int wint_t; ++# define __unix ++/* Mac OS X needs one and only one source file to initialize all static data ++ * members in template classes. Only one source file in an executable or ++ * library can declare instances for such data members, otherwise duplicate ++ * symbols will be generated. */ ++# ifdef __PUT_STATIC_DATA_MEMBERS_HERE ++# define __STL_NO_STATIC_TEMPLATE_DATA ++# define __STL_STATIC_TEMPLATE_DATA 0 ++# define __STL_WEAK_ATTRIBUTE 0 ++# define __DECLARE_INSTANCE(type,item,init) type item init ++# endif ++/* Mac OS X needs all "::" scope references to be "std::" */ ++# undef __STL_VENDOR_GLOBAL_STD ++# undef __STL_VENDOR_GLOBAL_CSTD ++# define __STL_NO_CSTD_FUNCTION_IMPORTS ++/* Workaround for the broken Mac OS X C++ preprocessor which cannot handle ++ * parameterized macros in #include statements */ ++# define __STL_NATIVE_HEADER(header) <../g++/##header##> ++# define __STL_NATIVE_C_HEADER(header) <../include/##header##> ++# define __STL_NATIVE_CPP_C_HEADER(header) <../g++/##header##> ++# define __STL_NATIVE_OLD_STREAMS_HEADER(header) <../g++/##header##> ++# endif + + /* g++ 2.7.x and above */ + # define __STL_LONG_LONG 1 +diff -Naur ./stlport/cwchar ./stlport/cwchar +--- misc/build/STLport-4.0/stlport/cwchar Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/cwchar Tue Mar 20 12:01:01 2001 +@@ -34,7 +34,7 @@ + + # if defined (__STL_USE_NEW_C_HEADERS) && ! defined (__HP_aCC) + # include __STL_NATIVE_CPP_C_HEADER(cwchar) +-# elif defined (__MRC__) || defined (__SC__) || defined (__BORLANDC__) ++# elif defined (__MRC__) || defined (__SC__) || defined (__BORLANDC__) || (defined (__GNUC__) && defined (__APPLE__)) + # include __STL_NATIVE_C_HEADER(stddef.h) + # else + # include __STL_NATIVE_C_HEADER(wchar.h) +diff -Naur ./stlport/exception ./stlport/exception +--- misc/build/STLport-4.0/stlport/exception Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/exception Tue Mar 20 12:03:09 2001 +@@ -42,7 +42,7 @@ + # undef __STL_INCOMPLETE_EXCEPTION_HEADER + # endif + +-# if defined (__GNUC__) && (__GNUC_MINOR__ >= 8 ) ++# if defined (__GNUC__) && (__GNUC_MINOR__ >= 8 ) && ! defined (__APPLE__) + # include <../include/exception> + # else + # include __STL_NATIVE_HEADER(exception) +diff -Naur ./stlport/exception.h ./stlport/exception.h +--- misc/build/STLport-4.0/stlport/exception.h Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/exception.h Tue Mar 20 11:59:15 2001 +@@ -1,46 +1,46 @@ +-/* +- * Copyright (c) 1999 +- * Boris Fomitchev +- * +- * This material is provided "as is", with absolutely no warranty expressed +- * or implied. Any use is at your own risk. +- * +- * Permission to use or copy this software for any purpose is hereby granted +- * without fee, provided the above notices are retained on all copies. +- * Permission to modify the code and to distribute modified code is granted, +- * provided the above notices are retained, and a notice that the code was +- * modified is included with the above copyright notice. +- * +- */ +- +-#ifndef __STLPORT_OLDSTD_exception +-# define __STLPORT_OLDSTD_exception +- +-# if !defined (__STL_OUTERMOST_HEADER_ID) +-# define __STL_OUTERMOST_HEADER_ID 0x824 +-# include <stl/_prolog.h> +-# elif (__STL_OUTERMOST_HEADER_ID == 0x824) && ! defined (__STL_DONT_POP_0x824) +-# define __STL_DONT_POP_0x824 +-# endif +- +-# if defined (__GNUC__) && (__GNUC_MINOR__ >= 8 ) +-# include <../include/exception.h> +-# elif defined (__BORLANDC__) +-# include <exception.> +-# else +-# include __STL_NATIVE_HEADER(exception.h) +-# endif +- +-# if (__STL_OUTERMOST_HEADER_ID == 0x824) +-# if ! defined (__STL_DONT_POP_0x824) +-# include <stl/_epilog.h> +-# undef __STL_OUTERMOST_HEADER_ID +-# endif +-# undef __STL_DONT_POP_0x824 +-# endif +- +-#endif /* __STLPORT_OLDSTD_exception */ +- +-// Local Variables: +-// mode:C++ +-// End: ++/* ++ * Copyright (c) 1999 ++ * Boris Fomitchev ++ * ++ * This material is provided "as is", with absolutely no warranty expressed ++ * or implied. Any use is at your own risk. ++ * ++ * Permission to use or copy this software for any purpose is hereby granted ++ * without fee, provided the above notices are retained on all copies. ++ * Permission to modify the code and to distribute modified code is granted, ++ * provided the above notices are retained, and a notice that the code was ++ * modified is included with the above copyright notice. ++ * ++ */ ++ ++#ifndef __STLPORT_OLDSTD_exception ++# define __STLPORT_OLDSTD_exception ++ ++# if !defined (__STL_OUTERMOST_HEADER_ID) ++# define __STL_OUTERMOST_HEADER_ID 0x824 ++# include <stl/_prolog.h> ++# elif (__STL_OUTERMOST_HEADER_ID == 0x824) && ! defined (__STL_DONT_POP_0x824) ++# define __STL_DONT_POP_0x824 ++# endif ++ ++# if defined (__GNUC__) && (__GNUC_MINOR__ >= 8 ) && ! defined (__APPLE__) ++# include <../include/exception.h> ++# elif defined (__BORLANDC__) ++# include <exception.> ++# else ++# include __STL_NATIVE_HEADER(exception.h) ++# endif ++ ++# if (__STL_OUTERMOST_HEADER_ID == 0x824) ++# if ! defined (__STL_DONT_POP_0x824) ++# include <stl/_epilog.h> ++# undef __STL_OUTERMOST_HEADER_ID ++# endif ++# undef __STL_DONT_POP_0x824 ++# endif ++ ++#endif /* __STLPORT_OLDSTD_exception */ ++ ++// Local Variables: ++// mode:C++ ++// End: +diff -Naur ./stlport/new ./stlport/new +--- misc/build/STLport-4.0/stlport/new Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/new Tue Mar 20 12:07:19 2001 +@@ -43,7 +43,7 @@ + #endif + + # if !defined (__STL_NO_NEW_NEW_HEADER) +-# if ( defined (__GNUC__) && (__GNUC_MINOR__ >= 8 )) || ( defined (__MVS__) && ! defined (__GNUC__)) ++# if ( defined (__GNUC__) && (__GNUC_MINOR__ >= 8 ) && ! defined (__APPLE__)) || ( defined (__MVS__) && ! defined (__GNUC__)) + # include __STL_NATIVE_C_HEADER(new) + # else + # include __STL_NATIVE_HEADER(new) +diff -Naur ./stlport/new.h ./stlport/new.h +--- misc/build/STLport-4.0/stlport/new.h Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/new.h Tue Mar 20 12:07:37 2001 +@@ -22,7 +22,7 @@ + # endif + + # ifndef __STL_WINCE +-# if ( defined (__GNUC__) && (__GNUC_MINOR__ >= 8 )) || ( defined (__MVS__) && ! defined (__GNUC__)) ++# if ( defined (__GNUC__) && (__GNUC_MINOR__ >= 8 ) && ! defined (__APPLE__)) || ( defined (__MVS__) && ! defined (__GNUC__)) + # include __STL_NATIVE_C_HEADER(new.h) + # elif defined (__BORLANDC__) + # include <new.> +diff -Naur ./stlport/stl/_alloc.c ./stlport/stl/_alloc.c +--- misc/build/STLport-4.0/stlport/stl/_alloc.c Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/stl/_alloc.c Tue Mar 20 12:05:59 2001 +@@ -301,6 +301,7 @@ + _Node_Alloc_Lock<__threads, __inst>::_S_lock __STL_MUTEX_INITIALIZER; + #endif + ++# if defined(__GNUC__) && !defined(__APPLE__) + template <bool __threads, int __inst> + _Node_alloc_obj * __STL_VOLATILE + __node_alloc<__threads, __inst>::_S_free_list[_NFREELISTS] +@@ -317,7 +318,7 @@ + + template <bool __threads, int __inst> + size_t __node_alloc<__threads, __inst>::_S_heap_size = 0; +- ++# endif /* defined(__GNUC__) && !defined(__APPLE__) */ + + # else /* ( __STL_STATIC_TEMPLATE_DATA > 0 ) */ + +diff -Naur ./stlport/stl/_limits.c ./stlport/stl/_limits.c +--- misc/build/STLport-4.0/stlport/stl/_limits.c Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/stl/_limits.c Tue Mar 20 12:06:06 2001 +@@ -92,21 +92,21 @@ + # undef __declare_numeric_base_member + + # if defined (__STL_NO_STATIC_TEMPLATE_DATA) +-# define __HACK_ILIMITS(_Int, __imin, __imax, __idigits) _Integer_limits<_Int, __imin, __imax, __idigits> ++# define __HACK_ILIMITS(_Int, __imin, __imax, __idigits, __ismod) _Integer_limits<_Int, __imin, __imax, __idigits, __ismod> + # define __HACK_NOTHING +-# define __declare_integer_limits_member(_Int, __imin, __imax, __idigits, __type, __mem) \ +- __DECLARE_INSTANCE(const __type, __HACK_ILIMITS(_Int, __imin, __imax, __idigits):: __mem,__HACK_NOTHING) ++# define __declare_integer_limits_member(_Int, __imin, __imax, __idigits, __ismod, __type, __mem) \ ++ __DECLARE_INSTANCE(const __type, __HACK_ILIMITS(_Int, __imin, __imax, __idigits, __ismod):: __mem,__HACK_NOTHING) + +-# define __declare_int_members(_Int, __imin, __imax, __idigits) \ +-__declare_integer_limits_member(_Int, __imin, __imax, __idigits, bool, is_specialized);\ +-__declare_integer_limits_member(_Int, __imin, __imax, __idigits, int, digits);\ +-__declare_integer_limits_member(_Int, __imin, __imax, __idigits, int, digits10);\ +-__declare_integer_limits_member(_Int, __imin, __imax, __idigits, bool, is_signed);\ +-__declare_integer_limits_member(_Int, __imin, __imax, __idigits, bool, is_integer);\ +-__declare_integer_limits_member(_Int, __imin, __imax, __idigits, bool, is_exact);\ +-__declare_integer_limits_member(_Int, __imin, __imax, __idigits, int, radix);\ +-__declare_integer_limits_member(_Int, __imin, __imax, __idigits, bool, is_bounded);\ +-__declare_integer_limits_member(_Int, __imin, __imax, __idigits, bool, is_modulo); ++# define __declare_int_members(_Int, __imin, __imax, __idigits, __ismod) \ ++__declare_integer_limits_member(_Int, __imin, __imax, __idigits, __ismod, bool, is_specialized);\ ++__declare_integer_limits_member(_Int, __imin, __imax, __idigits, __ismod, int, digits);\ ++__declare_integer_limits_member(_Int, __imin, __imax, __idigits, __ismod, int, digits10);\ ++__declare_integer_limits_member(_Int, __imin, __imax, __idigits, __ismod, bool, is_signed);\ ++__declare_integer_limits_member(_Int, __imin, __imax, __idigits, __ismod, bool, is_integer);\ ++__declare_integer_limits_member(_Int, __imin, __imax, __idigits, __ismod, bool, is_exact);\ ++__declare_integer_limits_member(_Int, __imin, __imax, __idigits, __ismod, int, radix);\ ++__declare_integer_limits_member(_Int, __imin, __imax, __idigits, __ismod, bool, is_bounded);\ ++__declare_integer_limits_member(_Int, __imin, __imax, __idigits, __ismod, bool, is_modulo); + + + # else +@@ -197,25 +197,25 @@ + + # ifdef __STL_NO_STATIC_TEMPLATE_DATA + # ifndef __STL_NO_BOOL +-__declare_int_members(bool, false, true, 0) ++__declare_int_members(bool, false, true, 0, false) + # endif +-__declare_int_members(char, CHAR_MIN, CHAR_MAX, -1) ++__declare_int_members(char, CHAR_MIN, CHAR_MAX, -1, true) + # ifndef __STL_NO_SIGNED_BUILTINS +-__declare_int_members(signed char, SCHAR_MIN, SCHAR_MAX, -1) ++__declare_int_members(signed char, SCHAR_MIN, SCHAR_MAX, -1, true) + # endif +-__declare_int_members(unsigned char, 0, UCHAR_MAX, -1) ++__declare_int_members(unsigned char, 0, UCHAR_MAX, -1, true) + # if defined (__STL_HAS_WCHAR_T) && !defined ( __STL_WCHAR_T_IS_USHORT) +-__declare_int_members(wchar_t, INT_MIN, INT_MAX, -1) ++__declare_int_members(wchar_t, INT_MIN, INT_MAX, -1, true) + # endif +-__declare_int_members(short, SHRT_MIN, SHRT_MAX, -1) +-__declare_int_members(unsigned short, 0, USHRT_MAX, -1) +-__declare_int_members(int, INT_MIN, INT_MAX, -1) +-__declare_int_members(unsigned int, 0, UINT_MAX, -1) +-__declare_int_members(long, LONG_MIN, LONG_MAX, -1) +-__declare_int_members(unsigned long, 0, ULONG_MAX, -1) ++__declare_int_members(short, SHRT_MIN, SHRT_MAX, -1, true) ++__declare_int_members(unsigned short, 0, USHRT_MAX, -1, true) ++__declare_int_members(int, INT_MIN, INT_MAX, -1, true) ++__declare_int_members(unsigned int, 0, UINT_MAX, -1, true) ++__declare_int_members(long, LONG_MIN, LONG_MAX, -1, true) ++__declare_int_members(unsigned long, 0, ULONG_MAX, -1, true) + # ifdef __STL_LONG_LONG +-__declare_int_members(long long, LONGLONG_MIN, LONG_MAX, -1) +-__declare_int_members(unsigned long long, 0, ULONGLONG_MAX, -1) ++__declare_int_members(long long, LONGLONG_MIN, LONG_MAX, -1, true) ++__declare_int_members(unsigned long long, 0, ULONGLONG_MAX, -1, true) + # endif + __declare_float_members(float, FLT_MANT_DIG,FLT_DIG, + FLT_MIN_EXP, +@@ -318,26 +318,26 @@ + + #else + +-__DECLARE_INSTANCE(_F_rep, +- _LimG<bool>::_F_inf, __STL_ARRAY_STATIC_INIT(__STL_FLOAT_INF_REP)); +-__DECLARE_INSTANCE(_F_rep, +- _LimG<bool>::_F_qNaN, __STL_ARRAY_STATIC_INIT(__STL_FLOAT_QNAN_REP)); +-__DECLARE_INSTANCE(_F_rep, +- _LimG<bool>::_F_sNaN, __STL_ARRAY_STATIC_INIT(__STL_FLOAT_SNAN_REP)); +-__DECLARE_INSTANCE(_D_rep, +- _LimG<bool>::_D_inf, __STL_ARRAY_STATIC_INIT(__STL_DOUBLE_INF_REP)); +-__DECLARE_INSTANCE(_D_rep, +- _LimG<bool>::_D_qNaN, __STL_ARRAY_STATIC_INIT(__STL_DOUBLE_QNAN_REP)); +-__DECLARE_INSTANCE(_D_rep, +- _LimG<bool>::_D_sNaN, __STL_ARRAY_STATIC_INIT(__STL_DOUBLE_SNAN_REP)); + # ifndef __STL_NO_LONG_DOUBLE +-__DECLARE_INSTANCE(_L_rep, +- _LimG<bool>::_L_inf, __STL_ARRAY_STATIC_INIT(__STL_LDOUBLE_INF_REP)); +-__DECLARE_INSTANCE(_D_rep, +- _LimG<bool>::_L_qNaN, __STL_ARRAY_STATIC_INIT(__STL_LDOUBLE_QNAN_REP)); +-__DECLARE_INSTANCE(_L_rep, +- _LimG<bool>::_L_sNaN, __STL_ARRAY_STATIC_INIT(__STL_LDOUBLE_SNAN_REP)); ++__DECLARE_INSTANCE(const _L_rep, _LimG<bool>::_L_inf, ++ __STL_ARRAY_STATIC_INIT({__STL_LDOUBLE_INF_REP})); ++__DECLARE_INSTANCE(const _L_rep, _LimG<bool>::_L_qNaN, ++ __STL_ARRAY_STATIC_INIT({__STL_LDOUBLE_QNAN_REP})); ++__DECLARE_INSTANCE(const _L_rep, _LimG<bool>::_L_sNaN, ++ __STL_ARRAY_STATIC_INIT({__STL_LDOUBLE_SNAN_REP})); + # endif ++__DECLARE_INSTANCE(const _D_rep, _LimG<bool>::_D_inf, ++ __STL_ARRAY_STATIC_INIT({__STL_DOUBLE_INF_REP})); ++__DECLARE_INSTANCE(const _D_rep, _LimG<bool>::_D_qNaN, ++ __STL_ARRAY_STATIC_INIT({__STL_DOUBLE_QNAN_REP})); ++__DECLARE_INSTANCE(const _D_rep, _LimG<bool>::_D_sNaN, ++ __STL_ARRAY_STATIC_INIT({__STL_DOUBLE_SNAN_REP})); ++__DECLARE_INSTANCE(const _F_rep, _LimG<bool>::_F_inf, ++ __STL_ARRAY_STATIC_INIT({__STL_FLOAT_INF_REP})); ++__DECLARE_INSTANCE(const _F_rep, _LimG<bool>::_F_qNaN, ++ __STL_ARRAY_STATIC_INIT({__STL_FLOAT_QNAN_REP})); ++__DECLARE_INSTANCE(const _F_rep, _LimG<bool>::_F_sNaN, ++ __STL_ARRAY_STATIC_INIT({__STL_FLOAT_SNAN_REP})); + + #endif /* STATIC_DATA */ + +diff -Naur ./stlport/stl/_stdio_file.h ./stlport/stl/_stdio_file.h +--- misc/build/STLport-4.0/stlport/stl/_stdio_file.h Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/stl/_stdio_file.h Tue Mar 20 12:06:12 2001 +@@ -116,7 +116,7 @@ + + # define __STL_FILE_I_O_IDENTICAL 1 + +-#elif defined (__CYGWIN__) || defined(__FreeBSD__) ++#elif defined (__CYGWIN__) || defined(__FreeBSD__) || ( defined(__GNUC__) && defined(__APPLE__) ) + + inline int _FILE_fd(const FILE& __f) { return __f._file; } + inline char* _FILE_I_begin(const FILE& __f) { return (char*) __f._bf._base; } +diff -Naur ./stlport/stl/c_locale.h ./stlport/stl/c_locale.h +--- misc/build/STLport-4.0/stlport/stl/c_locale.h Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/stl/c_locale.h Tue Mar 20 12:10:32 2001 +@@ -280,6 +280,17 @@ + # define _Locale_PRINT _CTYPE_R + # define _Locale_ALPHA _CTYPE_A + ++# elif defined (__APPLE__) ++ ++# define _Locale_CNTRL _C ++# define _Locale_UPPER _U ++# define _Locale_LOWER _L ++# define _Locale_DIGIT _D ++# define _Locale_XDIGIT _X ++# define _Locale_PUNCT _P ++# define _Locale_SPACE _S ++# define _Locale_PRINT _R ++# define _Locale_ALPHA _A + + # elif defined(__STL_USE_GLIBC) /* linux, using the gnu compiler */ + +diff -Naur ./stlport/stl/debug/_debug.c ./stlport/stl/debug/_debug.c +--- misc/build/STLport-4.0/stlport/stl/debug/_debug.c Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/stl/debug/_debug.c Tue Mar 20 12:09:21 2001 +@@ -92,8 +92,11 @@ + } + + # if ( __STL_STATIC_TEMPLATE_DATA > 0 ) ++ ++# if !defined(__GNUC__) && !defined(__APPLE__) + template <class _Dummy> + const char* __stl_debug_engine<_Dummy>::_Message_table[_StlMsg_MAX] __STL_MESSAGE_TABLE_BODY; ++# endif /* !defined(__GNUC__) && !defined(__APPLE__) */ + + # else + __DECLARE_INSTANCE(const char*, __stl_debug_engine<bool>::_Message_table[_StlMsg_MAX], +diff -Naur ./stlport/typeinfo ./stlport/typeinfo +--- misc/build/STLport-4.0/stlport/typeinfo Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/typeinfo Tue Mar 20 12:07:42 2001 +@@ -23,7 +23,7 @@ + + # ifndef __STL_NO_TYPEINFO + +-# if defined (__GNUC__) && (__GNUC_MINOR__ > 7) ++# if defined (__GNUC__) && (__GNUC_MINOR__ > 7) && ! defined (__APPLE__) + # include <../include/typeinfo> + # elif defined (__STL_NO_NEW_NEW_HEADER) + # include __STL_NATIVE_HEADER(typeinfo.h) +diff -Naur ./stlport/typeinfo.h ./stlport/typeinfo.h +--- misc/build/STLport-4.0/stlport/typeinfo.h Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/typeinfo.h Tue Mar 20 12:07:48 2001 +@@ -23,7 +23,7 @@ + + # ifndef __STL_NO_TYPEINFO + +-# if defined (__GNUC__) && (__GNUC_MINOR__ >= 8 ) ++# if defined (__GNUC__) && (__GNUC_MINOR__ >= 8 ) && ! defined (__APPLE__) + # include <../include/typeinfo.h> + # else + # include __STL_NATIVE_HEADER(typeinfo.h) +diff -Naur ./stlport/wchar.h ./stlport/wchar.h +--- misc/build/STLport-4.0/stlport/wchar.h Thu Jul 13 18:53:26 2000 ++++ misc/build/STLport-4.0/stlport/wchar.h Tue Mar 20 12:07:54 2001 +@@ -27,7 +27,11 @@ + using __STL_VENDOR_CSTD::strlen; + using __STL_VENDOR_CSTD::strspn; + # endif ++# if defined (__GNUC__) && defined (__APPLE__) ++# include __STL_NATIVE_C_HEADER(stddef.h) ++# else + # include __STL_NATIVE_C_HEADER(wchar.h) ++# endif + + # endif /* WINCE */ + +diff -Naur ./test/eh/gcc-apple-macosx.mak ./test/eh/gcc-apple-macosx.mak +--- misc/build/STLport-4.0/test/eh/gcc-apple-macosx.mak Wed Dec 31 16:00:00 1969 ++++ misc/build/STLport-4.0/test/eh/gcc-apple-macosx.mak Tue Mar 20 12:04:27 2001 +@@ -0,0 +1,113 @@ ++# ;;; -*- Mode:makefile;-*- ++# Generated automatically from Makefile.in by configure. ++# This requires GNU make. ++ ++srcdir = . ++VPATH = . ++DYLD_LIBRARY_PATH = ../../lib ++ ++# point this to proper location ++STL_INCL=-I../../stlport ++ ++AUX_LIST=TestClass.cpp main.cpp nc_alloc.cpp random_number.cpp ++ ++TEST_LIST=test_algo.cpp \ ++test_algobase.cpp test_list.cpp test_slist.cpp \ ++test_bit_vector.cpp test_vector.cpp \ ++test_deque.cpp test_set.cpp test_map.cpp \ ++test_hash_map.cpp test_hash_set.cpp test_rope.cpp \ ++test_string.cpp test_bitset.cpp test_valarray.cpp \ ++test_static_instances.cpp ++ ++LIST=${AUX_LIST} ${TEST_LIST} ++ ++OBJECTS = $(LIST:%.cpp=obj/%.o) $(STAT_MODULE) ++D_OBJECTS = $(LIST:%.cpp=d_obj/%.o) $(STAT_MODULE) ++NOSGI_OBJECTS = $(LIST:%.cpp=nosgi_obj/%.o) $(STAT_MODULE) ++ ++EXECS = $(LIST:%.cpp=%) ++TESTS = $(LIST:%.cpp=%.out) ++TEST_EXE = ./eh_test ++D_TEST_EXE = ./eh_test_d ++NOSGI_TEST_EXE = ./eh_test_nosgi ++ ++TEST = ./eh_test.out ++D_TEST = ./eh_test_d.out ++NOSGI_TEST = ./eh_test_nosgi.out ++ ++CC = cc ++CXX = $(CC) ++ ++# dwa 12/22/99 -- had to turn off -ansi flag so we could use SGI IOSTREAMS ++CXX_EXTRA_FLAGS = -W -Wno-sign-compare -Wno-unused -Wno-uninitialized -traditional-cpp -fno-coalesce ++CXXFLAGS = -g -O ${STL_INCL} -I. ${CXX_EXTRA_FLAGS} -DEH_VECTOR_OPERATOR_NEW ++D_CXXFLAGS = -g -O ${STL_INCL} -I. ${CXX_EXTRA_FLAGS} -DEH_VECTOR_OPERATOR_NEW -D__STL_DEBUG -D__STL_USE_STATIC_LIB ++NOSGI_CXXFLAGS = -Wall -g -O2 ${STL_INCL} -I. ${CXX_EXTRA_FLAGS} -D__STL_NO_SGI_IOSTREAMS -D__STL_DEBUG_UNINITIALIZED -DEH_VECTOR_OPERATOR_NEW ++ ++check: $(TEST) ++ ++LIBS = -framework System ++D_LIBSTLPORT = -L../../lib -lstlport_gcc_debug ++LIBSTLPORT = -L../../lib -lstlport_gcc ++ ++all: $(TEST_EXE) $(D_TEST_EXE) $(NOSGI_TEST_EXE) ++ ++check_nosgi: $(NOSGI_TEST) ++check_d: $(D_TEST) ++ ++ ++$(TEST_EXE) : $(OBJECTS) ++ $(CXX) $(CXXFLAGS) $(OBJECTS) $(LIBSTLPORT) $(LIBS) -o $(TEST_EXE) ++ ln -sf ../../lib/libstlport_gcc.dylib ++ ++$(D_TEST_EXE) : $(D_OBJECTS) ++ $(CXX) $(D_CXXFLAGS) $(D_OBJECTS) $(D_LIBSTLPORT) $(LIBS) -o $(D_TEST_EXE) ++ ln -sf ../../lib/libstlport_gcc_debug.dylib ++ ++$(NOSGI_TEST_EXE) : $(NOSGI_OBJECTS) ++ $(CXX) $(NOSGI_CXXFLAGS) $(NOSGI_OBJECTS) $(LIBS) -o $(NOSGI_TEST_EXE) ++ ++ ++$(TEST) : $(TEST_EXE) ++ $(TEST_EXE) ++ ++$(D_TEST) : $(D_TEST_EXE) ++ $(D_TEST_EXE) ++ ++$(NOSGI_TEST) : $(NOSGI_TEST_EXE) ++ $(NOSGI_TEST_EXE) ++ ++SUFFIXES: .cpp.o.exe.out.res ++ ++nosgi_obj/%.o : %.cpp ++ $(CXX) $(NOSGI_CXXFLAGS) $< -c -o $@ ++ ++d_obj/%.o : %.cpp ++ $(CXX) $(D_CXXFLAGS) $< -c -o $@ ++ ++obj/%.o : %.cpp ++ $(CXX) $(CXXFLAGS) $< -c -o $@ ++ ++nosgi_obj/%.i : %.cpp ++ $(CXX) $(NOSGI_CXXFLAGS) $< -E -H > $@ ++ ++d_obj/%.i : %.cpp ++ $(CXX) $(D_CXXFLAGS) $< -E -H > $@ ++ ++obj/%.i : %.cpp ++ $(CXX) $(CXXFLAGS) $< -E -H > $@ ++ ++%.out: %.cpp ++ $(CXX) $(CXXFLAGS) $< -c -USINGLE -DMAIN -g -o $*.o ++ $(CXX) $(CXXFLAGS) $*.o $(LIBS) -o $* ++ ./$* > $@ ++ -rm -f $* ++ ++%.s: %.cpp ++ $(CXX) $(CXXFLAGS) -O4 -S -pto $< -o $@ ++ ++%.E: %.cpp ++ $(CXX) $(CXXFLAGS) -E $< -o $@ ++ ++clean: ++ -rm -fR ${TEST_EXE} *.o */*.o *.rpo *.obj *.out core *~ +diff -Naur ./test/eh/test_static_instances.cpp ./test/eh/test_static_instances.cpp +--- misc/build/STLport-4.0/test/eh/test_static_instances.cpp Wed Dec 31 16:00:00 1969 ++++ misc/build/STLport-4.0/test/eh/test_static_instances.cpp Tue Mar 20 12:04:37 2001 +@@ -0,0 +1,57 @@ ++/* ++ * Copyright (c) 1999 ++ * Silicon Graphics Computer Systems, Inc. ++ * ++ * Copyright (c) 1999 ++ * Boris Fomitchev ++ * ++ * This material is provided "as is", with absolutely no warranty expressed ++ * or implied. Any use is at your own risk. ++ * ++ * Permission to use or copy this software for any purpose is hereby granted ++ * without fee, provided the above notices are retained on all copies. ++ * Permission to modify the code and to distribute modified code is granted, ++ * provided the above notices are retained, and a notice that the code was ++ * modified is included with the above copyright notice. ++ * ++ */ ++ ++# ifndef __PUT_STATIC_DATA_MEMBERS_HERE ++# define __PUT_STATIC_DATA_MEMBERS_HERE ++# endif ++ ++# ifndef __STL_LINK_TIME_INSTANTIATION ++# define __STL_LINK_TIME_INSTANTIATION ++# endif ++ ++# include "Prefix.h" ++ ++# if defined (EH_NEW_HEADERS) ++#include <rope> ++#else ++#include <rope.h> ++#endif ++ ++// typedef rope<TestClass, alloc> TestRope; ++typedef __STLPORT_STD::rope<char, eh_allocator(char) > TestRope; ++ ++# define __ROPE_TABLE_BODY = { \ ++/* 0 */1, /* 1 */2, /* 2 */3, /* 3 */5, /* 4 */8, /* 5 */13, /* 6 */21, \ ++/* 7 */34, /* 8 */55, /* 9 */89, /* 10 */144, /* 11 */233, /* 12 */377, \ ++/* 13 */610, /* 14 */987, /* 15 */1597, /* 16 */2584, /* 17 */4181, \ ++/* 18 */6765ul, /* 19 */10946ul, /* 20 */17711ul, /* 21 */28657ul, /* 22 */46368ul, \ ++/* 23 */75025ul, /* 24 */121393ul, /* 25 */196418ul, /* 26 */317811ul, \ ++/* 27 */514229ul, /* 28 */832040ul, /* 29 */1346269ul, /* 30 */2178309ul, \ ++/* 31 */3524578ul, /* 32 */5702887ul, /* 33 */9227465ul, /* 34 */14930352ul, \ ++/* 35 */24157817ul, /* 36 */39088169ul, /* 37 */63245986ul, /* 38 */102334155ul, \ ++/* 39 */165580141ul, /* 40 */267914296ul, /* 41 */433494437ul, \ ++/* 42 */701408733ul, /* 43 */1134903170ul, /* 44 */1836311903ul, \ ++/* 45 */2971215073ul } ++ ++__DECLARE_INSTANCE(const unsigned long, ++ TestRope::_S_min_len[__ROPE_DEPTH_SIZE], ++ __ROPE_TABLE_BODY); ++ ++// Local Variables: ++// mode:C++ ++// End: +diff -Naur ./test/regression/gcc-apple-macosx.mak ./test/regression/gcc-apple-macosx.mak +--- misc/build/STLport-4.0/test/regression/gcc-apple-macosx.mak Wed Dec 31 16:00:00 1969 ++++ misc/build/STLport-4.0/test/regression/gcc-apple-macosx.mak Tue Mar 20 12:04:48 2001 +@@ -0,0 +1,169 @@ ++# ;;; -*- Mode:makefile;-*- ++# Generated automatically from Makefile.in by configure. ++# This requires GNU make. ++.SUFFIXES: .cc .cpp .o .exe .out ++ ++srcdir = . ++VPATH = . ++ ++STL_INCL=-I../../stlport ++ ++LIST = stl_test.cpp accum1.cpp accum2.cpp \ ++ adjdiff0.cpp adjdiff1.cpp adjdiff2.cpp \ ++ adjfind0.cpp adjfind1.cpp adjfind2.cpp \ ++ advance.cpp \ ++ alg1.cpp alg2.cpp alg3.cpp alg4.cpp alg5.cpp \ ++ bcompos1.cpp bcompos2.cpp \ ++ bind1st1.cpp bind1st2.cpp \ ++ bind2nd1.cpp bind2nd2.cpp \ ++ binsert1.cpp binsert2.cpp \ ++ binsrch1.cpp binsrch2.cpp \ ++ bnegate1.cpp bnegate2.cpp bvec1.cpp \ ++ copy1.cpp copy2.cpp copy3.cpp copy4.cpp \ ++ copyb.cpp copyb0.cpp \ ++ count0.cpp count1.cpp \ ++ countif1.cpp \ ++ deque1.cpp \ ++ divides.cpp \ ++ eqlrnge0.cpp eqlrnge1.cpp eqlrnge2.cpp \ ++ equal0.cpp equal1.cpp equal2.cpp \ ++ equalto.cpp \ ++ fill1.cpp filln1.cpp \ ++ find0.cpp find1.cpp \ ++ findif0.cpp findif1.cpp \ ++ finsert1.cpp finsert2.cpp \ ++ foreach0.cpp foreach1.cpp \ ++ func1.cpp func2.cpp func3.cpp \ ++ gener1.cpp gener2.cpp \ ++ genern1.cpp genern2.cpp \ ++ greateq.cpp greater.cpp \ ++ incl0.cpp incl1.cpp incl2.cpp \ ++ inplmrg1.cpp inplmrg2.cpp \ ++ inrprod0.cpp inrprod1.cpp inrprod2.cpp \ ++ insert1.cpp insert2.cpp \ ++ iota1.cpp \ ++ istmit1.cpp \ ++ iter1.cpp iter2.cpp iter3.cpp iter4.cpp \ ++ iterswp0.cpp iterswp1.cpp \ ++ less.cpp \ ++ lesseq.cpp \ ++ lexcmp1.cpp lexcmp2.cpp \ ++ list1.cpp list2.cpp list3.cpp list4.cpp \ ++ logicand.cpp logicnot.cpp \ ++ logicor.cpp \ ++ lwrbnd1.cpp lwrbnd2.cpp \ ++ map1.cpp \ ++ max1.cpp max2.cpp \ ++ maxelem1.cpp maxelem2.cpp \ ++ merge0.cpp merge1.cpp merge2.cpp \ ++ min1.cpp min2.cpp \ ++ minelem1.cpp minelem2.cpp \ ++ minus.cpp \ ++ mismtch0.cpp mismtch1.cpp mismtch2.cpp \ ++ mkheap0.cpp mkheap1.cpp \ ++ mmap1.cpp mmap2.cpp \ ++ modulus.cpp \ ++ mset1.cpp mset3.cpp mset4.cpp mset5.cpp \ ++ negate.cpp nequal.cpp \ ++ nextprm0.cpp nextprm1.cpp nextprm2.cpp \ ++ nthelem0.cpp nthelem1.cpp nthelem2.cpp \ ++ ostmit.cpp \ ++ pair0.cpp pair1.cpp pair2.cpp \ ++ parsrt0.cpp parsrt1.cpp parsrt2.cpp \ ++ parsrtc0.cpp parsrtc1.cpp parsrtc2.cpp \ ++ partsrt0.cpp \ ++ partsum0.cpp partsum1.cpp partsum2.cpp \ ++ pheap1.cpp pheap2.cpp \ ++ plus.cpp \ ++ pqueue1.cpp \ ++ prevprm0.cpp prevprm1.cpp prevprm2.cpp \ ++ ptition0.cpp ptition1.cpp \ ++ ptrbinf1.cpp ptrbinf2.cpp \ ++ ptrunf1.cpp ptrunf2.cpp \ ++ queue1.cpp \ ++ rawiter.cpp \ ++ remcopy1.cpp \ ++ remcpif1.cpp \ ++ remif1.cpp \ ++ remove1.cpp \ ++ repcpif1.cpp \ ++ replace0.cpp replace1.cpp replcpy1.cpp replif1.cpp \ ++ revbit1.cpp revbit2.cpp \ ++ revcopy1.cpp reverse1.cpp reviter1.cpp reviter2.cpp \ ++ rndshuf0.cpp rndshuf1.cpp rndshuf2.cpp \ ++ rotate0.cpp rotate1.cpp rotcopy0.cpp rotcopy1.cpp \ ++ search0.cpp search1.cpp search2.cpp \ ++ set1.cpp set2.cpp \ ++ setdiff0.cpp setdiff1.cpp setdiff2.cpp \ ++ setintr0.cpp setintr1.cpp setintr2.cpp \ ++ setsymd0.cpp setsymd1.cpp setsymd2.cpp \ ++ setunon0.cpp setunon1.cpp setunon2.cpp \ ++ sort1.cpp sort2.cpp \ ++ stack1.cpp stack2.cpp \ ++ stblptn0.cpp stblptn1.cpp \ ++ stblsrt1.cpp stblsrt2.cpp \ ++ swap1.cpp \ ++ swprnge1.cpp \ ++ times.cpp \ ++ trnsfrm1.cpp trnsfrm2.cpp \ ++ ucompos1.cpp ucompos2.cpp \ ++ unegate1.cpp unegate2.cpp \ ++ uniqcpy1.cpp uniqcpy2.cpp \ ++ unique1.cpp unique2.cpp \ ++ uprbnd1.cpp uprbnd2.cpp \ ++ vec1.cpp vec2.cpp vec3.cpp vec4.cpp vec5.cpp vec6.cpp vec7.cpp vec8.cpp \ ++ hmmap1.cpp hset2.cpp hmset1.cpp slist1.cpp hmap1.cpp string1.cpp bitset1.cpp ++ ++ ++# STAT_MODULE=stat.o ++OBJECTS = $(LIST:%.cpp=%.o) $(STAT_MODULE) ++EXECS = $(LIST:%.cpp=%.exe) ++TESTS = $(LIST:%.cpp=%.out) ++TEST_EXE = stl_test.exe ++TEST = stl_test.out ++ ++CC = c++ ++CXX = $(CC) ++ ++# DEBUG_FLAGS= -D__STL_DEBUG ++ ++CXXFLAGS = -D__STL_NO_SGI_IOSTREAMS -D__STL_WHOLE_NATIVE_STD -fhonor-std -D__HONOR_STD ${STL_INCL} -I. ${CXX_EXTRA_FLAGS} ${STL_VERSION_FLAGS} ++ ++CXXFLAGS = -W -Wno-sign-compare -Wno-unused -Wno-uninitialized -D__STL_NO_SGI_IOSTREAMS ${STL_INCL} -I. ${CXX_EXTRA_FLAGS} ${STL_VERSION_FLAGS} -traditional-cpp -fno-coalesce ++ ++LIBS = -framework System ++LIBSTDCXX = ++ ++check: $(TEST) ++ ++$(TEST) : $(OBJECTS) ++ $(CXX) $(CXXFLAGS) ${REPO_FLAGS} $(OBJECTS) $(LIBS) -o $(TEST_EXE) ++ echo 'a string' | ./$(TEST_EXE) > $(TEST) ++ ++ ++.cc.o .cxx.o .C.o .cpp.o: ++ ${CXX} ${CXXFLAGS} ${DEBUG_FLAGS} ${REPO_FLAGS} ${.IMPSRC} -c -o $*.o $< ++ ++%.out: %.cpp ++ $(CXX) $(CXXFLAGS) ${DEBUG_FLAGS} -USINGLE -DMAIN=1 $< -c -o $*.o ++ $(CXX) $(CXXFLAGS) $*.o $(STAT_MODULE) $(LIBS) -o $*.exe ++ ./$*.exe > $@ ++ -rm -f $*.exe ++ ++istmit1.out: istmit1.cpp ++ $(CXX) $(CXXFLAGS) ${DEBUG_FLAGS} ${REPO_FLAGS} $< $(STAT_MODULE) $(LIBSTDCXX) -lstdc++ $(LIBS) -o istmit1 ++ echo 'a string' | ./istmit1 > istmit1.out ++ -rm -f ./istmit1 ++ ++$(STAT_MODULE): stat.cpp ++ $(CXX) $(CXXFLAGS) ${DEBUG_FLAGS} ${REPO_FLAGS} -c $< -o $@ ++ ++%.s: %.cpp ++ $(CXX) $(CXXFLAGS) -O3 -fno-exceptions -D__STL_NO_EXCEPTIONS -S $< -o $*.s ++ ++%.i: %.cpp ++ $(CXX) $(CXXFLAGS) ${DEBUG_FLAGS} -E $< > $@ ++ ++clean: ++ -rm -Rf *.exe *.out *.o *.rpo core *.out ++ diff --git a/stlport/download/STLport-4.5-0119.tar.gz b/stlport/download/STLport-4.5-0119.tar.gz Binary files differnew file mode 100644 index 000000000000..09ca9b740615 --- /dev/null +++ b/stlport/download/STLport-4.5-0119.tar.gz diff --git a/stlport/makefile.mk b/stlport/makefile.mk index 8e74acb309cb..5f1e407d933e 100644 --- a/stlport/makefile.mk +++ b/stlport/makefile.mk @@ -2,9 +2,9 @@ # # $RCSfile: makefile.mk,v $ # -# $Revision: 1.19 $ +# $Revision: 1.20 $ # -# last change: $Author: hjs $ $Date: 2002-11-12 12:26:59 $ +# last change: $Author: hr $ $Date: 2003-03-27 11:54:47 $ # # The Contents of this file are made available subject to the terms of # either of the following licenses @@ -70,24 +70,34 @@ TARGET=so_stlport .INCLUDE : settings.mk # --- Files -------------------------------------------------------- +.EXPORT : CC CXX +.IF "$(COMID)"=="gcc3" +TARFILE_NAME=STLport-4.5 +PATCH_FILE_NAME=$(MISC)$/STLport-4.5.patch +.ELSE # "$(COMID)"=="gcc3" +.IF "$(OS)"=="MACOSX" +# [ed] For gcc2, we need to use STLport 4.0. 4.5 will not compile with gcc2 on OS X. +TARFILE_NAME=STLport-4.0 +PATCH_FILE_NAME=STLport-4.0.macosx.patch +.ELSE +TARFILE_NAME=STLport-4.0 +PATCH_FILE_NAME=STLport-4.0.patch +.ENDIF # "$(OS)"=="MACOSX" +.ENDIF # "$(COMID)"=="gcc3" .IF "$(GUI)"=="WNT" .IF "$(CCNUMVER)"<="001300000000" TARFILE_NAME=STLport-4.0 PATCH_FILE_NAME=STLport-4.0.patch .ELSE # "$(CCNUMVER)"<="001300000000" -TARFILE_NAME=STLport-5.0-0409 -PATCH_FILE_NAME=STLport-5.0-0409.patch -#PATCH_FILE_NAME=STLport-4.5.3.patch +TARFILE_NAME=STLport-4.5-0119 +PATCH_FILE_NAME=STLport-4.5-0119.patch .ENDIF # "$(CCNUMVER)"<="001300000000" -.ELSE -TARFILE_NAME=STLport-4.5.3 -PATCH_FILE_NAME=STLport-4.5.3.patch .ENDIF .IF "$(USE_SHELL)"=="4nt" -TAR_EXCLUDES="*/SC5/*" -.ENDIF # "$(GUI)"=="WNT" +TAR_EXCLUDES=*/SC5/* +.ENDIF # "$(USE_SHELL)"=="4nt" ADDITIONAL_FILES=src$/gcc-3.0.mak @@ -118,13 +128,21 @@ BUILD_FLAGS=-f gcc-3.0.mak .ENDIF # "$(OS)"=="MACOSX" .ENDIF # "$(COMID)"=="gcc3" BUILD_ACTION=make +# build in parallel +BUILD_FLAGS+= -j$(MAXPROCESS) .ENDIF .IF "$(COM)"=="C52" BUILD_ACTION=make -BUILD_FLAGS=-f sunpro.mak +BUILD_FLAGS=-f sunpro6.mak .ENDIF +.IF "$(COM)"=="C52" +OUT2INC= \ + stlport$/SC5$/*.SUNWCCh + +.ENDIF # "$(COM)"=="C52" + OUTDIR2INC= \ stlport @@ -132,44 +150,56 @@ OUTDIR2INC= \ OUT2LIB= \ lib$/*.lib - + OUT2BIN= \ lib$/*.dll \ lib$/*.pdb - + .ELSE # "$(GUI)"=="WNT" OUT2LIB= \ lib$/lib* .ENDIF # "$(GUI)"=="WNT" - + # --- Targets ------------------------------------------------------ +.IF "$(STLPORT4)"!="NO_STLPORT4" +all : + @echo " An already available installation of STLport has been chosen in the configure process." + @echo " Therefore the version provided here does not need to be built in addition." + +$(COPY) $(STLPORT4)$/lib$/*stlport*$(DLLPOST) $(DLLDEST) +.ELSE +all : $(MISC)$/STLport-4.5.patch ALLTAR +.ENDIF + .INCLUDE : set_ext.mk .INCLUDE : target.mk .INCLUDE : tg_ext.mk + +$(MISC)$/STLport-4.5.patch : STLport-4.5.patch + +$(SED) -e 's#GXX_INCLUDE_PATH#$(GXX_INCLUDE_PATH)#g' < STLport-4.5.patch > $(MISC)$/STLport-4.5.patch + .IF "$(GUI)"=="WNT" .IF "$(CCNUMVER)"<="001300000000" + $(MISC)$/$(TARFILE_ROOTDIR) : avoid_win32_patches avoid_win32_patches : @+$(ECHONL) - @+echo ERROR! this module can't use automated patch creation + @+echo ERROR! this module can't use automated patch creation @+echo on windows. @+$(ECHONL) force_dmake_to_error - + $(PACKAGE_DIR)$/so_custom_patch : $(PACKAGE_DIR)$/$(PATCH_FLAG_FILE) .IF "$(USE_SHELL)"=="4nt" +win32_custom.bat $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@ .ELSE # "$(USE_SHELL)"=="4nt" +win32_custom.sh $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@ .ENDIF # "$(USE_SHELL)"=="4nt" - -$(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)$/so_custom_patch -ooo: $(PACKAGE_DIR)$/win32_sdk_patch +$(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)$/so_custom_patch .IF "$(USE_NEW_SDK)"!="" $(PACKAGE_DIR)$/win32_sdk_patch : $(PACKAGE_DIR)$/$(PATCH_FLAG_FILE) @@ -178,10 +208,8 @@ $(PACKAGE_DIR)$/win32_sdk_patch : $(PACKAGE_DIR)$/$(PATCH_FLAG_FILE) .ELSE # "$(USE_SHELL)"=="4nt" +win32_sdk.sh $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@ .ENDIF # "$(USE_SHELL)"=="4nt" - + $(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)$/win32_sdk_patch .ENDIF # "$(USE_NEW_SDK)"!="" - -.ENDIF # "$(CCNUMVER)"<="001300000000" +.ENDIF # COMVER<=001300000000 .ENDIF # "$(GUI)"=="WNT" - diff --git a/stlport/prj/d.lst b/stlport/prj/d.lst index c04da0a882a5..df0875327b41 100644 --- a/stlport/prj/d.lst +++ b/stlport/prj/d.lst @@ -7,6 +7,7 @@ mkdir: %_DEST%\inc%_EXT%\stl\using mkdir: %_DEST%\inc%_EXT%\stl\using\h mkdir: %_DEST%\inc%_EXT%\stl\wrap_std mkdir: %_DEST%\inc%_EXT%\stl\wrap_std\h +..\%__SRC%\inc\*.SUNWCCH %_DEST%\inc%_EXT%\stl\* ..\%__SRC%\inc\stlport\* %_DEST%\inc%_EXT%\stl\* ..\%__SRC%\inc\stlport\stl\* %_DEST%\inc%_EXT%\stl\stl\* ..\%__SRC%\inc\stlport\stl\debug\* %_DEST%\inc%_EXT%\stl\stl\debug\* diff --git a/stlport/win32_custom.sh b/stlport/win32_custom.sh new file mode 100755 index 000000000000..5c125481b0a7 --- /dev/null +++ b/stlport/win32_custom.sh @@ -0,0 +1,9 @@ +#!/bin/sh +#rem parameters in order of their apearance: +#rem - path to unpacked tarball +#rem - relative path back to module root + +cd $1 + +patch -i $2/dos_lineends.patch -b -p2 + diff --git a/stlport/win32_sdk.sh b/stlport/win32_sdk.sh new file mode 100644 index 000000000000..434890730bf6 --- /dev/null +++ b/stlport/win32_sdk.sh @@ -0,0 +1,9 @@ +#!/bin/sh +#rem parameters in order of their apearance: +#rem - path to unpacked tarball +#rem - relative path back to module root + +cd $1 + +patch -i $2/STLport-4.0_SDK.patch -b -p2 + |