opensp checks to see whether <stdint.h> exists using the C compiler, and then #includes this header in all further checks, most (all?) of which are performed with the C++ compiler. <stdint.h> on IRIX will #error out when compiled with $CXX (because it is C99-only), causing all subsequent tests to fail. These tests should either be executed with $CC, or <cstdint> should be used instead. Adding: [[ ${CHOST} == *-irix* ]] && export ac_cv_header_stdint_h=no ... may help - I'm checking now.
Losing <stdint.h> doesn't seem to break the build, but there are hundreds of warnings output by $CXX, for example: cc-1682 CC: WARNING File = ../include/Message.h, Line = 237 The overloaded virtual function "OpenSP::Messenger::dispatchMessage" is only partially overridden in class "OpenSP::NullMessenger". class SP_API NullMessenger : public Messenger { ^ cc-1682 CC: WARNING File = ../include/MessageReporter.h, Line = 23 The overloaded virtual function "OpenSP::Messenger::dispatchMessage" is only partially overridden in class "OpenSP::MessageReporter". class SP_API MessageReporter : public MessageFormatter, public Messenger { ^ cc-1682 CC: WARNING File = ../include/MessageReporter.h, Line = 56 The overloaded virtual function "OpenSP::Messenger::dispatchMessage" is only partially overridden in class "OpenSP::XMLMessageReporter". class SP_API XMLMessageReporter : public MessageReporter { ^ cc-1460 CC: WARNING File = ../include/SubstTable.h, Line = 55 Function function "OpenSP::SubstTable::subst(OpenSP::Char &) const" is redeclared "inline" after being called. void SubstTable::subst(Char &c) const ^ ... I'm hoping that none of these will prevent the eventual build-products from working properly. What it eventually breaks on, though, is: cc-1020 CC: ERROR File = MessageReporter.cxx, Line = 30 The identifier "getenv" is undefined. char* fmt = getenv("SP_MESSAGE_FORMAT") ; ^ 1 error detected in the compilation of "MessageReporter.cxx". ... which appears to be due to <stdlib.h> or <cstdlib> missing.
That problem is resolved by adding '#include <stdlib.h>', but the build now fails with: cc-3345 CC: ERROR File = ../include/Vector.cxx, Line = 15 "Vector" is not a template. Vector<T>::~Vector() ^ cc-3345 CC: ERROR File = ../include/Vector.cxx, Line = 26 "Vector" is not a template. Vector<T>::Vector(const Vector<T> &v) ^ cc-3345 CC: ERROR File = ../include/Vector.cxx, Line = 26 "Vector" is not a template. Vector<T>::Vector(const Vector<T> &v) ^ cc-3345 CC: ERROR File = ../include/Vector.cxx, Line = 33 "Vector" is not a template. Vector<T>::Vector(size_t n, const T &t) ^ cc-3345 CC: ERROR File = ../include/Vector.cxx, Line = 40 "Vector" is not a template. Vector<T> &Vector<T>::operator=(const Vector<T> &v) ^ cc-3345 CC: ERROR File = ../include/Vector.cxx, Line = 40 "Vector" is not a template. Vector<T> &Vector<T>::operator=(const Vector<T> &v) ^ cc-3345 CC: ERROR File = ../include/Vector.cxx, Line = 40 "Vector" is not a template. Vector<T> &Vector<T>::operator=(const Vector<T> &v) ^ cc-3345 CC: ERROR File = ../include/Vector.cxx, Line = 57 "Vector" is not a template. void Vector<T>::assign(size_t n, const T &t) ^ cc-3345 CC: ERROR File = ../include/Vector.cxx, Line = 71 "Vector" is not a template. void Vector<T>::insert(const T *p, size_t n, const T &t) ^ cc-3345 CC: ERROR File = ../include/Vector.cxx, Line = 84 "Vector" is not a template. void Vector<T>::insert(const T *p, const T *q1, const T *q2) ^ cc-3345 CC: ERROR File = ../include/Vector.cxx, Line = 100 "Vector" is not a template. void Vector<T>::swap(Vector<T> &v) ^ cc-1012 CC: WARNING File = ../include/Vector.cxx, Line = 157 Parsing restarts here after previous syntax error. } ^ cc-1065 CC: ERROR File = ../include/Vector.cxx, Line = 157 A semicolon is expected at this point. } ^ 12 errors detected in the compilation of "OffsetOrderedList.cxx". ... which, I'm afraid, means nothing to me :( Bumping to 'Blocker' since pango now requires gtk-doc which requires openjade which requires opensp.
Ahh - pango only requires gtk-doc if USE="test" or USE="doc" or FEATURES="test". Is there any method to set FEATURES on a per-package basis - similar to etc/portage/package.use? (I've always thought it would be useful to force FEATURES="test" on for, for example, Perl packages - where the test-suites are very good - whilst being able to disable it for other packages where the test-suites, if present, may have external dependencies or might be platform- or compiler-specific)
We are sorry to close this bug. We lack the man-power and devotion to support mips-irix in the tree.