Updates to support sgi's MIPSpro compiler version 7.4 and newer. This also fixes a number of C++ issues where FlightGear didn't follow the standard.
This commit is contained in:
21
configure.ac
21
configure.ac
@@ -47,8 +47,25 @@ case "${host}" in
|
||||
if test "x$CXX" = "xCC" -o "x$CXX" = "xccache CC"; then
|
||||
AR="$CXX -ar"
|
||||
ARFLAGS="-o"
|
||||
CXXFLAGS="$CXXFLAGS -I$(top_srcdir)/simgear/compatibility"
|
||||
CXXFLAGS="$CXXFLAGS -I$(top_srcdir)/simgear/compatibility/MIPSpro740"
|
||||
compatibility_DIR="compatibility"
|
||||
MIPSpro_DIRS="MIPSpro740"
|
||||
AC_MSG_CHECKING([for MIPSpro compiler version 7.4 or newer])
|
||||
AC_TRY_RUN([
|
||||
int main() {
|
||||
if ( _COMPILER_VERSION < 740 ) {
|
||||
return -1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
], AC_MSG_RESULT(yes),
|
||||
[ AC_MSG_RESULT(no)
|
||||
CXXFLAGS="$CXXFLAGS -I$(top_srcdir)/simgear/compatibility/MIPSpro721"
|
||||
MIPSpro_DIRS="$(MIPSpro_DIRS) MIPSpro721"
|
||||
AC_MSG_WARN([Using our own subset of the STL headers])
|
||||
], AC_MSG_RESULT(yes))
|
||||
AC_SUBST(MIPSpro_DIRS)
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
@@ -348,6 +365,8 @@ AC_CONFIG_FILES([ \
|
||||
simgear/Makefile \
|
||||
simgear/version.h \
|
||||
simgear/compatibility/Makefile \
|
||||
simgear/compatibility/MIPSpro721/Makefile \
|
||||
simgear/compatibility/MIPSpro740/Makefile \
|
||||
simgear/bucket/Makefile \
|
||||
simgear/debug/Makefile \
|
||||
simgear/ephemeris/Makefile \
|
||||
|
||||
2
simgear/compatibility/MIPSpro721/.cvsignore
Normal file
2
simgear/compatibility/MIPSpro721/.cvsignore
Normal file
@@ -0,0 +1,2 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
14
simgear/compatibility/MIPSpro721/Makefile.am
Normal file
14
simgear/compatibility/MIPSpro721/Makefile.am
Normal file
@@ -0,0 +1,14 @@
|
||||
includedir = @includedir@/compatibility/
|
||||
|
||||
include_HEADERS = \
|
||||
iostream \
|
||||
strstream \
|
||||
sstream \
|
||||
istream \
|
||||
fstream \
|
||||
iterator \
|
||||
iomanip \
|
||||
new \
|
||||
streambuf \
|
||||
\
|
||||
irix_string
|
||||
2
simgear/compatibility/MIPSpro740/.cvsignore
Normal file
2
simgear/compatibility/MIPSpro740/.cvsignore
Normal file
@@ -0,0 +1,2 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
22
simgear/compatibility/MIPSpro740/Makefile.am
Normal file
22
simgear/compatibility/MIPSpro740/Makefile.am
Normal file
@@ -0,0 +1,22 @@
|
||||
includedir = @includedir@/compatibility
|
||||
|
||||
EXTRA_DIST = README
|
||||
|
||||
include_HEADERS = \
|
||||
cfloat \
|
||||
csetjmp \
|
||||
cstdio \
|
||||
cwchar \
|
||||
cassert \
|
||||
climits \
|
||||
csignal \
|
||||
cstdlib \
|
||||
cwctype \
|
||||
cctype \
|
||||
clocale \
|
||||
cstdarg \
|
||||
cstring \
|
||||
cerrno \
|
||||
cmath \
|
||||
cstddef \
|
||||
ctime
|
||||
@@ -1,33 +1 @@
|
||||
includedir = @includedir@/compatibility
|
||||
|
||||
EXTRA_DIST = README
|
||||
|
||||
include_HEADERS = \
|
||||
cfloat \
|
||||
csetjmp \
|
||||
cstdio \
|
||||
cwchar \
|
||||
iostream \
|
||||
strstream \
|
||||
sstream \
|
||||
cassert \
|
||||
climits \
|
||||
csignal \
|
||||
cstdlib \
|
||||
cwctype \
|
||||
istream \
|
||||
cctype \
|
||||
clocale \
|
||||
cstdarg \
|
||||
cstring \
|
||||
fstream \
|
||||
iterator \
|
||||
cerrno \
|
||||
cmath \
|
||||
cstddef \
|
||||
ctime \
|
||||
iomanip \
|
||||
new \
|
||||
streambuf \
|
||||
\
|
||||
irix_string
|
||||
SUBDIRS = $(MIPSpro_DIRS)
|
||||
|
||||
@@ -71,12 +71,12 @@ public:
|
||||
// Default values for every type.
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
|
||||
const bool SGRawValue<bool>::DefaultValue = false;
|
||||
const int SGRawValue<int>::DefaultValue = 0;
|
||||
const long SGRawValue<long>::DefaultValue = 0L;
|
||||
const float SGRawValue<float>::DefaultValue = 0.0;
|
||||
const double SGRawValue<double>::DefaultValue = 0.0L;
|
||||
const char * const SGRawValue<const char *>::DefaultValue = "";
|
||||
template<> const bool SGRawValue<bool>::DefaultValue = false;
|
||||
template<> const int SGRawValue<int>::DefaultValue = 0;
|
||||
template<> const long SGRawValue<long>::DefaultValue = 0L;
|
||||
template<> const float SGRawValue<float>::DefaultValue = 0.0;
|
||||
template<> const double SGRawValue<double>::DefaultValue = 0.0L;
|
||||
template<> const char * const SGRawValue<const char *>::DefaultValue = "";
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -214,9 +214,9 @@ class SkyBVTree : public SkyBaseBVTree<Object, BoundingVolume>
|
||||
{
|
||||
public:
|
||||
typedef SkyBaseBVTree<Object, BoundingVolume> BaseTree;
|
||||
typedef BaseTree::BV BV;
|
||||
typedef BaseTree::NodeObject NodeObject;
|
||||
typedef BaseTree::Node Node;
|
||||
typedef typename SkyBaseBVTree<Object, BoundingVolume>::BV BV;
|
||||
typedef typename BaseTree::NodeObject NodeObject;
|
||||
typedef typename BaseTree::Node Node;
|
||||
|
||||
void Clear()
|
||||
{
|
||||
|
||||
@@ -52,7 +52,7 @@ template<class Object>
|
||||
class SkyBoundingBoxSplitter
|
||||
{
|
||||
public:
|
||||
typedef SkyBaseBVTree<Object, SkyMinMaxBox>::NodeObject NodeObjectBox;
|
||||
typedef typename SkyBaseBVTree<Object, SkyMinMaxBox>::NodeObject NodeObjectBox;
|
||||
//typedef SkyBaseBVTree<Object, SkyBoundingSphere>::NodeObject NodeObjectSphere;
|
||||
|
||||
#if _MSC_VER == 1200
|
||||
@@ -183,7 +183,7 @@ class SkyAABBTreeSplitter
|
||||
{
|
||||
public:
|
||||
typedef SkyMinMaxBox BV;
|
||||
typedef SkyBaseBVTree<Object, BV>::NodeObject NodeObject;
|
||||
typedef typename SkyBaseBVTree<Object, BV>::NodeObject NodeObject;
|
||||
|
||||
SkyAABBTreeSplitter(const NodeObject* pObjs, unsigned int iNumObjs) : _splitter(pObjs, iNumObjs) {}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user