Index: povray-3.7.0.RC5/configure.ac =================================================================== --- povray-3.7.0.RC5.orig/configure.ac +++ povray-3.7.0.RC5/configure.ac @@ -54,8 +54,6 @@ AC_CONFIG_SRCDIR([unix/disp_text.cpp]) m4_include([unix/config/acx_pthread.m4]) m4_include([unix/config/ax_arg_enable.m4]) m4_include([unix/config/ax_arg_with.m4]) -m4_include([unix/config/ax_boost_base.m4]) -m4_include([unix/config/ax_boost_thread.m4]) m4_include([unix/config/ax_test_compiler_flags.m4]) m4_include([unix/config/ax_check_lib.m4]) m4_include([unix/config/ax_check_libjpeg.m4]) @@ -165,6 +163,7 @@ AC_CANONICAL_HOST AM_INIT_AUTOMAKE([1.9 dist-bzip2]) AM_MAINTAINER_MODE +LT_INIT AX_FIX_INCORRECT_PATH(C_INCLUDE_PATH, ".", [pov_warn_path="$pov_warn_path C_INCLUDE_PATH"]) AX_FIX_INCORRECT_PATH(CPLUS_INCLUDE_PATH, ".", [pov_warn_path="$pov_warn_path CPLUS_INCLUDE_PATH"]) @@ -295,28 +294,15 @@ LIBS="$LIBS $PTHREAD_CFLAGS $PTHREAD_LIB # Boost; required library # the following macro stops with error when boost is not found -AX_BOOST_BASE([$required_libboost_version]) -AX_BOOST_THREAD -if test x"$ax_cv_boost_thread" != x"yes"; then +BOOST_REQUIRE([$required_libboost_version]) +BOOST_THREADS +if test x"$boost_cv_lib_thread" != x"yes"; then AC_MSG_ERROR([cannot find a suitable boost thread library]) else CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" # append - LDFLAGS="$LDFLAGS $BOOST_LDFLAGS" # append - LIBS="$BOOST_THREAD_LIB $LIBS" + LDFLAGS="$LDFLAGS -L$BOOST_LDPATH" # append + LIBS="$BOOST_THREAD_LIBS $LIBS" fi -AC_MSG_CHECKING([whether the boost thread library is usable]) -AC_RUN_IFELSE( - [AC_LANG_PROGRAM([[ -#include - ]], - [[boost::defer_lock_t(); return 0;]])], - [AC_MSG_RESULT([yes])], - [ - AC_MSG_RESULT([no]) - AC_MSG_FAILURE([cannot link with the boost thread library]) - ], - [AC_MSG_RESULT([cross-compiling])] # FIXME -) AC_DEFINE([USE_OFFICIAL_BOOST], [], [Use the official Boost libraries.]) # Intel Math Kernel library Index: povray-3.7.0.RC5/source/backend/scene/view.cpp =================================================================== --- povray-3.7.0.RC5.orig/source/backend/scene/view.cpp +++ povray-3.7.0.RC5/source/backend/scene/view.cpp @@ -1547,7 +1547,7 @@ const Camera *RTRData::CompletedFrame() } boost::xtime t; - boost::xtime_get (&t, boost::TIME_UTC); + boost::xtime_get (&t, boost::TIME_UTC_); t.sec += 3; // this will cause us to wait until the other threads are done. Index: povray-3.7.0.RC5/source/base/timer.cpp =================================================================== --- povray-3.7.0.RC5.orig/source/base/timer.cpp +++ povray-3.7.0.RC5/source/base/timer.cpp @@ -117,7 +117,7 @@ TimerDefault::~TimerDefault() POV_LONG TimerDefault::ElapsedRealTime() const { boost::xtime t; - boost::xtime_get(&t, boost::TIME_UTC); + boost::xtime_get(&t, boost::TIME_UTC_); POV_LONG tt = (POV_LONG)(t.sec) * (POV_LONG)(1000000000) + (POV_LONG)(t.nsec); POV_LONG st = (POV_LONG)(realTimeStart.sec) * (POV_LONG)(1000000000) + (POV_LONG)(realTimeStart.nsec); return ((tt - st) / (POV_LONG)(1000000)); @@ -126,7 +126,7 @@ POV_LONG TimerDefault::ElapsedRealTime() POV_LONG TimerDefault::ElapsedCPUTime() const { boost::xtime t; - boost::xtime_get(&t, boost::TIME_UTC); + boost::xtime_get(&t, boost::TIME_UTC_); POV_LONG tt = (POV_LONG)(t.sec) * (POV_LONG)(1000000000) + (POV_LONG)(t.nsec); POV_LONG st = (POV_LONG)(cpuTimeStart.sec) * (POV_LONG)(1000000000) + (POV_LONG)(cpuTimeStart.nsec); return ((tt - st) / (POV_LONG)(1000000)); @@ -139,8 +139,8 @@ bool TimerDefault::HasValidCPUTime() con void TimerDefault::Reset() { - boost::xtime_get(&realTimeStart, boost::TIME_UTC); - boost::xtime_get(&cpuTimeStart, boost::TIME_UTC); + boost::xtime_get(&realTimeStart, boost::TIME_UTC_); + boost::xtime_get(&cpuTimeStart, boost::TIME_UTC_); } } @@ -155,7 +155,7 @@ namespace pov_base void Delay(unsigned int msec) { boost::xtime t; - boost::xtime_get(&t, boost::TIME_UTC); + boost::xtime_get(&t, boost::TIME_UTC_); POV_ULONG ns = (POV_ULONG)(t.sec) * (POV_ULONG)(1000000000) + (POV_ULONG)(t.nsec) + (POV_ULONG)(msec) * (POV_ULONG)(1000000); t.sec = (boost::xtime::xtime_sec_t)(ns / (POV_ULONG)(1000000000)); t.nsec = (boost::xtime::xtime_nsec_t)(ns % (POV_ULONG)(1000000000)); Index: povray-3.7.0.RC5/vfe/unix/platformbase.cpp =================================================================== --- povray-3.7.0.RC5.orig/vfe/unix/platformbase.cpp +++ povray-3.7.0.RC5/vfe/unix/platformbase.cpp @@ -126,7 +126,7 @@ namespace pov_base #else // taken from source/base/timer.cpp boost::xtime t; - boost::xtime_get(&t, boost::TIME_UTC); + boost::xtime_get(&t, boost::TIME_UTC_); POV_ULONG ns = (POV_ULONG)(t.sec) * (POV_ULONG)(1000000000) + (POV_ULONG)(t.nsec) + (POV_ULONG)(msec) * (POV_ULONG)(1000000); t.sec = (boost::xtime::xtime_sec_t)(ns / (POV_ULONG)(1000000000)); t.nsec = (boost::xtime::xtime_nsec_t)(ns % (POV_ULONG)(1000000000)); Index: povray-3.7.0.RC5/vfe/vfepovms.cpp =================================================================== --- povray-3.7.0.RC5.orig/vfe/vfepovms.cpp +++ povray-3.7.0.RC5/vfe/vfepovms.cpp @@ -247,7 +247,7 @@ void *SysQNode::Receive (int *pLen, bool // TODO: have a shorter wait but loop, and check for system shutdown boost::xtime t; - boost::xtime_get (&t, boost::TIME_UTC); + boost::xtime_get (&t, boost::TIME_UTC_); t.nsec += 50000000 ; m_Event.timed_wait (lock, t); Index: povray-3.7.0.RC5/vfe/vfesession.cpp =================================================================== --- povray-3.7.0.RC5.orig/vfe/vfesession.cpp +++ povray-3.7.0.RC5/vfe/vfesession.cpp @@ -967,7 +967,7 @@ vfeStatusFlags vfeSession::GetStatus(boo if (WaitTime > 0) { boost::xtime t; - boost::xtime_get (&t, boost::TIME_UTC); + boost::xtime_get (&t, boost::TIME_UTC_); t.sec += WaitTime / 1000 ; t.nsec += (WaitTime % 1000) * 1000000 ; m_SessionEvent.timed_wait (lock, t); @@ -1034,7 +1034,7 @@ bool vfeSession::Pause() // we can't call pause directly since it will result in a thread context // error. pause must be called from the context of the worker thread. boost::xtime t; - boost::xtime_get (&t, boost::TIME_UTC); + boost::xtime_get (&t, boost::TIME_UTC_); t.sec += 3 ; m_RequestFlag = rqPauseRequest; if (m_RequestEvent.timed_wait(lock, t) == false) @@ -1057,7 +1057,7 @@ bool vfeSession::Resume() // we can't call resume directly since it will result in a thread context // error. it must be called from the context of the worker thread. boost::xtime t; - boost::xtime_get (&t, boost::TIME_UTC); + boost::xtime_get (&t, boost::TIME_UTC_); t.sec += 3 ; m_RequestFlag = rqResumeRequest; if (m_RequestEvent.timed_wait(lock, t) == false) @@ -1123,7 +1123,7 @@ int vfeSession::Initialize(vfeDestInfo * m_LastError = vfeNoError; boost::xtime t; - boost::xtime_get (&t, boost::TIME_UTC); + boost::xtime_get (&t, boost::TIME_UTC_); t.sec += 3 ; #ifdef _DEBUG t.sec += 120;