From Mathias Froechlich, "Attached the collected fixes I needed to compile with all of them.

Most notable the __hpux define stuff. The __hpux__ variant seems to be not
defined which resulted in a compile error at this time. Consequently I have
replaced all occurances of __hpux__ with __hpux. And huge surprise: now osg
plugins are found and loaded correctly ...
The next notable one is the MSVC_IDE fix which makes the nmake Makefiles cmake
generator target behave like the ide one. Showed up because I started to do
scripted builds with nmake instead of devenv...
The rest is the usual bunch of stuff that just happens during normal
coding ..."
This commit is contained in:
Robert Osfield 2009-11-18 12:15:29 +00:00
parent 259daac9a9
commit b7cabac990
13 changed files with 29 additions and 32 deletions

View File

@ -530,9 +530,9 @@ ENDIF(MSVC AND NOT MSVC_IDE)
#SET(OUTPUT_LIBDIR ${PROJECT_BINARY_DIR}/lib/${CMAKE_SYSTEM_NAME})
SET(OUTPUT_LIBDIR ${PROJECT_BINARY_DIR}/lib)
MAKE_DIRECTORY(${OUTPUT_LIBDIR})
IF(NOT MSVC)
IF(NOT MSVC OR MSVC_IDE)
MAKE_DIRECTORY(${OUTPUT_LIBDIR}/${OSG_PLUGINS})
ENDIF(NOT MSVC)
ENDIF(NOT MSVC OR MSVC_IDE)
# On CMake 2.4.x use EXECUTABLE_OUTPUT_PATH and LIBRARY_OUTPUT_PATH and later
# we work around the DLL placement by use of the PREFIX target property hack

View File

@ -50,7 +50,7 @@
#elif defined (WIN32)
#include <winsock.h>
#include <stdio.h>
#elif defined (__hpux__)
#elif defined (__hpux)
#include <unistd.h>
#else
#error Teach me how to build on this system

View File

@ -70,7 +70,9 @@ QGraphicsViewAdapter::QGraphicsViewAdapter(osg::Image* image, QWidget* widget):
_graphicsView = new QGraphicsView;
_graphicsScene->addWidget(widget);
_graphicsView->setScene(_graphicsScene);
#if (QT_VERSION_CHECK(4, 5, 0) <= QT_VERSION)
_graphicsScene->setStickyFocus(true);
#endif
_graphicsView->viewport()->setParent(0);
int width = _graphicsScene->width();
@ -455,4 +457,4 @@ void QGraphicsViewAdapter::assignImage(unsigned int i)
GL_RGBA,GL_UNSIGNED_BYTE,
data,
osg::Image::NO_DELETE, 1);
}
}

View File

@ -1,4 +1,5 @@
SET(TARGET_SRC osgautocapture.cpp )
SET(TARGET_ADDED_LIBRARIES osgTerrain )
#### end var setup ###
SETUP_EXAMPLE(osgautocapture)

View File

@ -54,7 +54,7 @@
#elif defined (WIN32)
#include <winsock.h>
#include <stdio.h>
#elif defined (__hpux__)
#elif defined (__hpux)
#include <unistd.h>
#else
#error Teach me how to build on this system

View File

@ -50,11 +50,8 @@ std::string createLibraryNameForWrapper(const std::string& ext)
#endif
#elif macintosh
return "osgwrapper_"+ext;
#elif defined(__hpux__)
// why don't we use PLUGIN_EXT from the makefiles here?
return "osgwrapper_"+ext+".sl";
#else
return "osgwrapper_"+ext+".so";
return "osgwrapper_"+ext+ ADDQUOTES(OSG_PLUGIN_EXTENSION);
#endif
}

View File

@ -86,6 +86,10 @@
inline float atan2f(float value1, float value2) { return static_cast<float>(atan2(value1,value2)); }
#endif
#ifndef fmodf
inline float fmodf(float value1, float value2) { return static_cast<float>(fmod(value1,value2)); }
#endif
#ifndef tanf
inline float tanf(float value) { return static_cast<float>(tan(value)); }
#endif
@ -199,7 +203,7 @@ inline double RadiansToDegrees(double angle) { return angle*180.0/PI; }
inline float round(float v) { return v>=0.0f?floorf(v+0.5f):ceilf(v-0.5f); }
inline double round(double v) { return v>=0.0?floor(v+0.5):ceil(v-0.5); }
#if defined(WIN32) && !defined(__CYGWIN__) && !defined(__MWERKS__)
#if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__MWERKS__)
inline bool isNaN(float v) { return _isnan(v)!=0; }
inline bool isNaN(double v) { return _isnan(v)!=0; }
#else

View File

@ -18,6 +18,7 @@
#include <osgPresentation/Export>
#include <iosfwd>
#include <map>
#include <float.h>

View File

@ -27,7 +27,7 @@
#include <mach-o/dyld.h>
#else // all other unix
#include <unistd.h>
#ifdef __hpux__
#ifdef __hpux
// Although HP-UX has dlopen() it is broken! We therefore need to stick
// to shl_load()/shl_unload()/shl_findsym()
#include <dl.h>
@ -63,7 +63,7 @@ DynamicLibrary::~DynamicLibrary()
FreeLibrary((HMODULE)_handle);
#elif defined(__APPLE__) && defined(APPLE_PRE_10_3)
NSUnLinkModule(static_cast<NSModule>(_handle), FALSE);
#elif defined(__hpux__)
#elif defined(__hpux)
// fortunately, shl_t is a pointer
shl_unload (static_cast<shl_t>(_handle));
#else // other unix
@ -103,7 +103,7 @@ DynamicLibrary::HANDLE DynamicLibrary::getLibraryHandle( const std::string& libr
handle = NSLinkModule(image, libraryName.c_str(), TRUE);
NSDestroyObjectFileImage(image);
}
#elif defined(__hpux__)
#elif defined(__hpux)
// BIND_FIRST is neccessary for some reason
handle = shl_load ( libraryName.c_str(), BIND_DEFERRED|BIND_FIRST|BIND_VERBOSE, 0);
return handle;
@ -146,7 +146,7 @@ DynamicLibrary::PROC_ADDRESS DynamicLibrary::getProcAddress(const std::string& p
temp += procName; // Mac OS X prepends an underscore on function names
symbol = NSLookupSymbolInModule(static_cast<NSModule>(_handle), temp.c_str());
return NSAddressOfSymbol(symbol);
#elif defined(__hpux__)
#elif defined(__hpux)
void* result = NULL;
if (shl_findsym (reinterpret_cast<shl_t*>(&_handle), procName.c_str(), TYPE_PROCEDURE, result) == 0)
{

View File

@ -718,14 +718,11 @@ std::string Registry::createLibraryNameForExtension(const std::string& ext)
#else
return prepend+"osgdb_"+lowercase_ext;
#endif
#elif defined(__hpux__)
// why don't we use PLUGIN_EXT from the makefiles here?
return prepend+"osgdb_"+lowercase_ext+".sl";
#else
#ifdef _DEBUG
return prepend+"osgdb_"+lowercase_ext+ OSG_DEBUG_POSTFIX_WITH_QUOTES + ".so";
return prepend+"osgdb_"+lowercase_ext+ OSG_DEBUG_POSTFIX_WITH_QUOTES + ADDQUOTES(OSG_PLUGIN_EXTENSION);
#else
return prepend+"osgdb_"+lowercase_ext+".so";
return prepend+"osgdb_"+lowercase_ext+ADDQUOTES(OSG_PLUGIN_EXTENSION);
#endif
#endif
@ -749,14 +746,11 @@ std::string Registry::createLibraryNameForNodeKit(const std::string& name)
#else
return name;
#endif
#elif defined(__hpux__)
// why don't we use PLUGIN_EXT from the makefiles here?
return "lib"+name+".sl";
#else
#ifdef _DEBUG
return "lib"+name+OSG_DEBUG_POSTFIX_WITH_QUOTES +".so";
return "lib"+name+OSG_DEBUG_POSTFIX_WITH_QUOTES + ADDQUOTES(OSG_PLUGIN_EXTENSION);
#else
return "lib"+name+".so";
return "lib"+name+ADDQUOTES(OSG_PLUGIN_EXTENSION);
#endif
#endif
}

View File

@ -78,7 +78,7 @@ public:
int findColor(unsigned int rgb)
{
int aci = 255;
itr = _indexColors.find(rgb);
ColorMap::const_iterator itr = _indexColors.find(rgb);
if (itr != _indexColors.end() ) {
aci = itr->second;
} else {
@ -156,11 +156,9 @@ protected:
protected:
std::map<const unsigned int, unsigned char> _indexColors; // maps RGB to autocad index colour
std::map<const unsigned int, unsigned char> _hueColors; // maps hue angle to autocad index colour
typedef std::pair <const unsigned int, unsigned char> ColorPair;
std::map<const unsigned int, unsigned char>::iterator itr;
typedef std::map<unsigned int, unsigned char> ColorMap;
ColorMap _indexColors; // maps RGB to autocad index colour
ColorMap _hueColors; // maps hue angle to autocad index colour
};
class DXFWriterNodeVisitor: public osg::NodeVisitor {

View File

@ -204,7 +204,7 @@ void LightPointNode::traverse(osg::NodeVisitor& nv)
// as this will be our special light point drawable.
osgUtil::StateGraph::LeafList::iterator litr;
for(litr = rg->_leaves.begin();
litr != rg->_leaves.end() && (*litr)->_drawable!=drawable;
litr != rg->_leaves.end() && (*litr)->_drawable.get()!=drawable;
++litr)
{}

View File

@ -104,7 +104,7 @@ osg::StateSet *ShaderGenCache::getOrCreateStateSet(unsigned int stateMask)
if (it == _stateSetMap.end())
{
osg::StateSet *stateSet = createStateSet(stateMask);
_stateSetMap.insert(it, std::make_pair(stateMask, stateSet));
_stateSetMap.insert(it, StateSetMap::value_type(stateMask, stateSet));
return stateSet;
}
return it->second.get();