From a0a0c8e3085732d6a5914f34e77670f6c7375f6e Mon Sep 17 00:00:00 2001 From: david Date: Mon, 30 Dec 2002 21:33:56 +0000 Subject: [PATCH] IRIX/MipsPro patches from Erik Hofman: This patch adds some missing default ISO C++ headers to SimGear, especially usefull for Irix/MipsPro. To the best of my knowledge this only affects the Irix/MipsPro compiler combination although it might be usefull for others as well. This patch does not yet remove any compiler specific code, but that would be my next task. The powerfull macros as defined in the compiler.h file allowed me to split it up into multiple patches. --- configure.ac | 2 + simgear/compatibility/README | 9 ++ simgear/compatibility/cassert | 10 ++ simgear/compatibility/cctype | 26 ++++++ simgear/compatibility/cerrno | 10 ++ simgear/compatibility/cfloat | 10 ++ simgear/compatibility/climits | 10 ++ simgear/compatibility/clocale | 16 ++++ simgear/compatibility/cmath | 35 +++++++ simgear/compatibility/csetjmp | 15 +++ simgear/compatibility/csignal | 16 ++++ simgear/compatibility/cstdarg | 14 +++ simgear/compatibility/cstddef | 15 +++ simgear/compatibility/cstdio | 57 ++++++++++++ simgear/compatibility/cstdlib | 43 +++++++++ simgear/compatibility/cstring | 36 ++++++++ simgear/compatibility/ctime | 26 ++++++ simgear/compatibility/cwchar | 156 ++++++++++++++++++++++++++++++++ simgear/compatibility/cwctype | 39 ++++++++ simgear/compatibility/fstream | 8 ++ simgear/compatibility/iomanip | 8 ++ simgear/compatibility/iostream | 29 ++++++ simgear/compatibility/istream | 13 +++ simgear/compatibility/iterator | 8 ++ simgear/compatibility/streambuf | 29 ++++++ simgear/compatibility/strstream | 8 ++ simgear/compiler.h | 22 ++--- 27 files changed, 657 insertions(+), 13 deletions(-) create mode 100644 simgear/compatibility/README create mode 100644 simgear/compatibility/cassert create mode 100644 simgear/compatibility/cctype create mode 100644 simgear/compatibility/cerrno create mode 100644 simgear/compatibility/cfloat create mode 100644 simgear/compatibility/climits create mode 100644 simgear/compatibility/clocale create mode 100644 simgear/compatibility/cmath create mode 100644 simgear/compatibility/csetjmp create mode 100644 simgear/compatibility/csignal create mode 100644 simgear/compatibility/cstdarg create mode 100644 simgear/compatibility/cstddef create mode 100644 simgear/compatibility/cstdio create mode 100644 simgear/compatibility/cstdlib create mode 100644 simgear/compatibility/cstring create mode 100644 simgear/compatibility/ctime create mode 100644 simgear/compatibility/cwchar create mode 100644 simgear/compatibility/cwctype create mode 100644 simgear/compatibility/fstream create mode 100644 simgear/compatibility/iomanip create mode 100644 simgear/compatibility/iostream create mode 100644 simgear/compatibility/istream create mode 100644 simgear/compatibility/iterator create mode 100644 simgear/compatibility/streambuf create mode 100644 simgear/compatibility/strstream diff --git a/configure.ac b/configure.ac index 2898d359..4482cdc3 100644 --- a/configure.ac +++ b/configure.ac @@ -49,6 +49,7 @@ case "${host}" in if test "$CXX" = "CC"; then AR="CC -ar" ARFLAGS="-o" + CXXFLAGS="$CXXFLAGS -I$(top_srcdir)/simgear/compatibility" fi ;; esac @@ -386,6 +387,7 @@ AC_CONFIG_FILES([ \ src-libs/Makefile \ simgear/Makefile \ simgear/version.h \ + simgear/compatibility/Makefile \ simgear/bucket/Makefile \ simgear/debug/Makefile \ simgear/ephemeris/Makefile \ diff --git a/simgear/compatibility/README b/simgear/compatibility/README new file mode 100644 index 00000000..eabc2b48 --- /dev/null +++ b/simgear/compatibility/README @@ -0,0 +1,9 @@ + +The following header files where taken from the boost clib package +(http://www.boost.org): + +cassert climits csignal cstdlib cwctype +cctype clocale cstdarg cstring +cerrno cmath cstddef ctime +cfloat csetjmp cstdio cwchar + diff --git a/simgear/compatibility/cassert b/simgear/compatibility/cassert new file mode 100644 index 00000000..03f0a503 --- /dev/null +++ b/simgear/compatibility/cassert @@ -0,0 +1,10 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CASSERT_HEADER +#define __CASSERT_HEADER + +#include + +#endif // CASSERT_HEADER diff --git a/simgear/compatibility/cctype b/simgear/compatibility/cctype new file mode 100644 index 00000000..fdd01e9d --- /dev/null +++ b/simgear/compatibility/cctype @@ -0,0 +1,26 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CCTYPE_HEADER +#define __CCTYPE_HEADER + +#include + +namespace std { + using ::isalnum; + using ::isdigit; + using ::isprint; + using ::isupper; + using ::tolower; + using ::isalpha; + using ::isgraph; + using ::ispunct; + using ::isxdigit; + using ::toupper; + using ::iscntrl; + using ::islower; + using ::isspace; +} + +#endif // CCTYPE_HEADER diff --git a/simgear/compatibility/cerrno b/simgear/compatibility/cerrno new file mode 100644 index 00000000..e369a2c0 --- /dev/null +++ b/simgear/compatibility/cerrno @@ -0,0 +1,10 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CERRNO_HEADER +#define __CERRNO_HEADER + +#include + +#endif // CERRNO_HEADER diff --git a/simgear/compatibility/cfloat b/simgear/compatibility/cfloat new file mode 100644 index 00000000..cab759d8 --- /dev/null +++ b/simgear/compatibility/cfloat @@ -0,0 +1,10 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CFLOAT_HEADER +#define __CFLOAT_HEADER + +#include + +#endif // CFLOAT_HEADER diff --git a/simgear/compatibility/climits b/simgear/compatibility/climits new file mode 100644 index 00000000..77331fdc --- /dev/null +++ b/simgear/compatibility/climits @@ -0,0 +1,10 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CLIMITS_HEADER +#define __CLIMITS_HEADER + +#include + +#endif // CLIMITS_HEADER diff --git a/simgear/compatibility/clocale b/simgear/compatibility/clocale new file mode 100644 index 00000000..89dd324a --- /dev/null +++ b/simgear/compatibility/clocale @@ -0,0 +1,16 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CLOCALE_HEADER +#define __CLOCALE_HEADER + +#include + +namespace std { + using ::lconv; + using ::localeconv; + using ::setlocale; +} + +#endif // CLOCALE_HEADER diff --git a/simgear/compatibility/cmath b/simgear/compatibility/cmath new file mode 100644 index 00000000..6da05f84 --- /dev/null +++ b/simgear/compatibility/cmath @@ -0,0 +1,35 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CMATH_HEADER +#define __CMATH_HEADER + +#include + +namespace std { + using ::acos; + using ::cos; + using ::fmod; + using ::modf; + using ::tan; + using ::asin; + using ::cosh; + using ::frexp; + using ::pow; + using ::tanh; + using ::atan; + using ::exp; + using ::ldexp; + using ::sin; + using ::atan2; + using ::fabs; + using ::log; + using ::sinh; + using ::ceil; + using ::floor; + using ::log10; + using ::sqrt; +} + +#endif // CMATH_HEADER diff --git a/simgear/compatibility/csetjmp b/simgear/compatibility/csetjmp new file mode 100644 index 00000000..80619c14 --- /dev/null +++ b/simgear/compatibility/csetjmp @@ -0,0 +1,15 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CSETJMP_HEADER +#define __CSETJMP_HEADER + +#include + +namespace std { + using ::jmp_buf; + using ::longjmp; +} + +#endif // CSETJMP_HEADER diff --git a/simgear/compatibility/csignal b/simgear/compatibility/csignal new file mode 100644 index 00000000..00c588a3 --- /dev/null +++ b/simgear/compatibility/csignal @@ -0,0 +1,16 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CSIGNAL_HEADER +#define __CSIGNAL_HEADER + +#include + +namespace std { + using ::sig_atomic_t; + using ::raise; + using ::signal; +} + +#endif // CSIGNAL_HEADER diff --git a/simgear/compatibility/cstdarg b/simgear/compatibility/cstdarg new file mode 100644 index 00000000..d9a093ec --- /dev/null +++ b/simgear/compatibility/cstdarg @@ -0,0 +1,14 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CSTDARG_HEADER +#define __CSTDARG_HEADER + +#include + +namespace std { + using ::va_list; +} + +#endif // CSTDARG_HEADER diff --git a/simgear/compatibility/cstddef b/simgear/compatibility/cstddef new file mode 100644 index 00000000..9275b416 --- /dev/null +++ b/simgear/compatibility/cstddef @@ -0,0 +1,15 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CSTDDEF_HEADER +#define __CSTDDEF_HEADER + +#include + +namespace std { + using ::ptrdiff_t; + using ::size_t; +} + +#endif // CSTDDEF_HEADER diff --git a/simgear/compatibility/cstdio b/simgear/compatibility/cstdio new file mode 100644 index 00000000..2d92c802 --- /dev/null +++ b/simgear/compatibility/cstdio @@ -0,0 +1,57 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CSTDIO_HEADER +#define __CSTDIO_HEADER + +#include + +namespace std { + using ::FILE; + using ::fpos_t; + using ::size_t; + using ::clearerr; + using ::fgets; + using ::fscanf; + using ::gets; + using ::rename; + using ::tmpfile; + using ::fclose; + using ::fopen; + using ::fseek; + using ::perror; + using ::rewind; + using ::tmpnam; + using ::feof; + using ::fprintf; + using ::fsetpos; + using ::printf; + using ::scanf; + using ::ungetc; + using ::ferror; + using ::fputc; + using ::ftell; + using ::putc; + using ::setbuf; + using ::vfprintf; + using ::fflush; + using ::fputs; + using ::fwrite; + using ::putchar; + using ::setvbuf; + using ::vprintf; + using ::fgetc; + using ::fread; + using ::getc; + using ::puts; + using ::sprintf; + using ::vsprintf; + using ::fgetpos; + using ::freopen; + using ::getchar; + using ::remove; + using ::sscanf; +} + +#endif // CSTDIO_HEADER diff --git a/simgear/compatibility/cstdlib b/simgear/compatibility/cstdlib new file mode 100644 index 00000000..7ac5130e --- /dev/null +++ b/simgear/compatibility/cstdlib @@ -0,0 +1,43 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CSTDLIB_HEADER +#define __CSTDLIB_HEADER + +#include + +namespace std { + using ::abort; + using ::atexit; + using ::exit; + using ::getenv; + using ::system; + using ::calloc; + using ::malloc; + using ::free; + using ::realloc; + using ::atol; + using ::mblen; + using ::strtod; + using ::wctomb; + using ::atof; + using ::mbstowcs; + using ::strtol; + using ::wcstombs; + using ::atoi; + using ::mbtowc; + using ::strtoul; + using ::bsearch; + using ::qsort; + using ::div_t; + using ::ldiv_t; + using ::abs; + using ::labs; + using ::srand; + using ::div; + using ::ldiv; + using ::rand; +} + +#endif // CSTDLIB_HEADER diff --git a/simgear/compatibility/cstring b/simgear/compatibility/cstring new file mode 100644 index 00000000..bcbf6b1f --- /dev/null +++ b/simgear/compatibility/cstring @@ -0,0 +1,36 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CSTRING_HEADER +#define __CSTRING_HEADER + +#include + +namespace std { + using ::size_t; + using ::memchr; + using ::strcat; + using ::strcspn; + using ::strncpy; + using ::strtok; + using ::memcmp; + using ::strchr; + using ::strerror; + using ::strpbrk; + using ::strxfrm; + using ::memcpy; + using ::strcmp; + using ::strlen; + using ::strrchr; + using ::memmove; + using ::strcoll; + using ::strncat; + using ::strspn; + using ::memset; + using ::strcpy; + using ::strncmp; + using ::strstr; +} + +#endif // CSTRING_HEADER diff --git a/simgear/compatibility/ctime b/simgear/compatibility/ctime new file mode 100644 index 00000000..9114c3bb --- /dev/null +++ b/simgear/compatibility/ctime @@ -0,0 +1,26 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CTIME_HEADER +#define __CTIME_HEADER + +#include + +namespace std { + using ::size_t; + using ::clock_t; + using ::time_t; + using ::tm; + using ::asctime; + using ::clock; + using ::difftime; + using ::localtime; + using ::strftime; + using ::ctime; + using ::gmtime; + using ::mktime; + using ::time; +} + +#endif // CTIME_HEADER diff --git a/simgear/compatibility/cwchar b/simgear/compatibility/cwchar new file mode 100644 index 00000000..e38e6264 --- /dev/null +++ b/simgear/compatibility/cwchar @@ -0,0 +1,156 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CWCHAR_HEADER +#define __CWCHAR_HEADER + +#include + +namespace std { + using ::mbstate_t; + using ::wint_t; + using ::size_t; +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::btowc; +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) + using ::getwchar; +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) + using ::ungetwc; +#endif + using ::wcscpy; +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wcsrtombs; +#endif +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wmemchr; +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) + using ::fgetwc; +#endif +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::mbrlen; +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::vfwprintf; +#endif +#endif + using ::wcscspn; + using ::wcsspn; +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wmemcmp; +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) + using ::fgetws; +#endif +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::mbrtowc; +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::vswprintf; +#endif +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) + using ::wcsftime; +#endif + using ::wcsstr; +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wmemcpy; +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) + using ::fputwc; +#endif +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::mbsinit; +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::vwprintf; +#endif +#endif + using ::wcslen; + using ::wcstod; +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wmemmove; +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) + using ::fputws; +#endif +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::mbsrtowcs; +#endif +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wcrtomb; +#endif + using ::wcsncat; + using ::wcstok; +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wmemset; +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) +#if !(defined(__DECCXX_VER) && __DECCXX_VER <= 60290024) +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::fwide; +#endif +#endif +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) + using ::putwc; +#endif + using ::wcscat; + using ::wcsncmp; + using ::wcstol; +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wprintf; +#endif +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::fwprintf; +#endif +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) + using ::putwchar; +#endif + using ::wcschr; + using ::wcsncpy; + using ::wcstoul; +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wscanf; +#endif +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::fwscanf; +#endif +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::swprintf; +#endif +#endif + using ::wcscmp; + using ::wcspbrk; + using ::wcsxfrm; +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) + using ::getwc; +#endif +#if !(defined(__linux) && defined(__DECCXX_VER) && __DECCXX_VER <= 60390005) +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::swscanf; +#endif +#endif + using ::wcscoll; + using ::wcsrchr; +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wctob; +#endif +} + +#endif // CWCHAR_HEADER diff --git a/simgear/compatibility/cwctype b/simgear/compatibility/cwctype new file mode 100644 index 00000000..7b2f6bb2 --- /dev/null +++ b/simgear/compatibility/cwctype @@ -0,0 +1,39 @@ +// This file is automatically generated. Do not edit. +// ['../../../libs/compatibility/generate_cpp_c_headers.py'] +// Mon Apr 16 15:16:00 2001 ('PST', 'PDT') + +#ifndef __CWCTYPE_HEADER +#define __CWCTYPE_HEADER + +#include + +namespace std { +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wctrans_t; +#endif + using ::wctype_t; + using ::wint_t; + using ::iswalnum; + using ::iswctype; + using ::iswlower; + using ::iswspace; +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::towctrans; +#endif +#if !(defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730) + using ::wctrans; +#endif + using ::iswalpha; + using ::iswdigit; + using ::iswprint; + using ::iswupper; + using ::towlower; + using ::wctype; + using ::iswcntrl; + using ::iswgraph; + using ::iswpunct; + using ::iswxdigit; + using ::towupper; +} + +#endif // CWCTYPE_HEADER diff --git a/simgear/compatibility/fstream b/simgear/compatibility/fstream new file mode 100644 index 00000000..ffe2a0b0 --- /dev/null +++ b/simgear/compatibility/fstream @@ -0,0 +1,8 @@ + +#ifndef __SG_FSTREAM +#define __SG_FSTREAM 1 + +# include + +#endif // !__SG_FSTREAM + diff --git a/simgear/compatibility/iomanip b/simgear/compatibility/iomanip new file mode 100644 index 00000000..2ebf92cf --- /dev/null +++ b/simgear/compatibility/iomanip @@ -0,0 +1,8 @@ + +#ifndef __SG_IOMANIP +#define __SG_IOMANIP 1 + +# include + +#endif // !__SG_IOMANIP + diff --git a/simgear/compatibility/iostream b/simgear/compatibility/iostream new file mode 100644 index 00000000..b03afdb3 --- /dev/null +++ b/simgear/compatibility/iostream @@ -0,0 +1,29 @@ + +#ifndef __SG_IOSTREAM +#define __SG_IOSTREAM 1 + +# include + +#if defined(sgi) && !defined(__GNUC__) + + class ios_base : public ios { + public: + + typedef int openmode; + typedef int seekdir; + + enum { binary = 0 }; + }; + + namespace std { + using ::cin; + using ::cout; + using ::cerr; + using ::clog; + using ::ios_base; + }; + +#endif + +#endif // !__SG_IOSTREAM + diff --git a/simgear/compatibility/istream b/simgear/compatibility/istream new file mode 100644 index 00000000..367c47f2 --- /dev/null +++ b/simgear/compatibility/istream @@ -0,0 +1,13 @@ + +#ifndef __SG_ISTREAM +#define __SG_ISTREAM 1 + +#if defined(sgi) && !defined(__GNUC__) + +# include +# include + +#endif + +#endif // !__SG_ISTREAM + diff --git a/simgear/compatibility/iterator b/simgear/compatibility/iterator new file mode 100644 index 00000000..036513ff --- /dev/null +++ b/simgear/compatibility/iterator @@ -0,0 +1,8 @@ + +#ifndef __SG_ITERATOR +#define __SG_ITERATOR 1 + +# include + +#endif // !__SG_ITERATOR + diff --git a/simgear/compatibility/streambuf b/simgear/compatibility/streambuf new file mode 100644 index 00000000..49b95c0e --- /dev/null +++ b/simgear/compatibility/streambuf @@ -0,0 +1,29 @@ + +#ifndef __SG_STREAMBUF +#define __SG_STREAMBUF 1 + +#if defined(sgi) && !defined(__GNUC__) + +# include +# include + +# define pubsync sync + + using std::char_traits; + + typedef char_traits traits_type; + typedef char_traits::int_type int_type; + + typedef streampos pos_type; + typedef streamoff off_type; + + namespace std { + using ::streambuf; + using ::streampos; + using ::streamoff; + }; + +#endif + +#endif // !__SG_STREAMBUF + diff --git a/simgear/compatibility/strstream b/simgear/compatibility/strstream new file mode 100644 index 00000000..5a0922ee --- /dev/null +++ b/simgear/compatibility/strstream @@ -0,0 +1,8 @@ + +#ifndef __SG_STRSTREAM +#define __SG_STRSTREAM 1 + +# include + +#endif // !__SG_STRSTREAM + diff --git a/simgear/compiler.h b/simgear/compiler.h index 4a40c9fc..6fd52c5e 100644 --- a/simgear/compiler.h +++ b/simgear/compiler.h @@ -291,28 +291,24 @@ # define SG_HAVE_NATIVE_SGI_COMPILERS # define SG_EXPLICIT_FUNCTION_TMPL_ARGS +# define SG_CLASS_PARTIAL_SPECIALIZATION # define SG_NEED_AUTO_PTR # define SG_MEMBER_TEMPLATES # define SG_NAMESPACES # define SG_HAVE_STD -# define SG_CLASS_PARTIAL_SPECIALIZATION +# define SG_HAVE_STREAMBUF # define SG_HAVE_TRAITS +# define SG_HAVE_STD_INCLUDES # define STL_ALGORITHM # define STL_FUNCTIONAL -# define STL_IOMANIP -# define STL_IOSTREAM -# define STL_ITERATOR -# define STL_FSTREAM +# define STL_IOMANIP +# define STL_IOSTREAM +# define STL_ITERATOR +# define STL_FSTREAM # define STL_STDEXCEPT # define STL_STRING -# define STL_STRSTREAM - -// # define __STL_FUNCTION_TMPL_PARTIAL_ORDER -// typedef void PFNGLPOINTPARAMETERFEXTPROC - -#define glPointParameterfEXT glPointParameterfSGIS -#define glPointParameterfvEXT glPointParameterfvSGIS +# define STL_STRSTREAM #pragma set woff 1001,1012,1014,1116,1155,1172,1174 #pragma set woff 1401,1460,1551,1552,1681 @@ -321,7 +317,7 @@ #pragma set woff 1682,3303 #endif -# define SG_COMPILER_STR "SGI Irix compiler version " SG_STRINGIZE(_COMPILER_VERSION) +# define SG_COMPILER_STR "SGI MipsPro compiler version " SG_STRINGIZE(_COMPILER_VERSION) #endif // Native SGI compilers -- 2.39.5