From 8c02a01bc617e99e1c6b7627676402bb276bac80 Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Wed, 25 Feb 2015 14:09:38 +0100 Subject: Remove CAsyncAlgorithm::timedJoin It is currently unused, and its current implementation is not very portable. --- build/linux/configure.ac | 26 -------------------------- include/astra/AsyncAlgorithm.h | 4 ---- src/AsyncAlgorithm.cpp | 26 -------------------------- 3 files changed, 56 deletions(-) diff --git a/build/linux/configure.ac b/build/linux/configure.ac index cbf6016..24f0124 100644 --- a/build/linux/configure.ac +++ b/build/linux/configure.ac @@ -48,32 +48,6 @@ dnl Use iostream to check if the C++ compiler works AC_CHECK_HEADER(iostream, , AC_MSG_ERROR([No working c++ compiler found])) -# clock_gettime - -AC_MSG_CHECKING([for clock_gettime]) -AC_TRY_LINK([ -#include -],[ -struct timespec t; clock_gettime(CLOCK_REALTIME, &t); -],astra_clock_gettime_ok=yes,astra_clock_gettime_ok=no) -AC_MSG_RESULT($astra_clock_gettime_ok) -if test x$astra_clock_gettime_ok = xno; then - AC_MSG_CHECKING([for clock_gettime in librt]) - LIBS="$LIBS -lrt" - AC_TRY_LINK([ - #include - ],[ - struct timespec t; clock_gettime(CLOCK_REALTIME, &t); - ],astra_clock_gettime_ok=yes,astra_clock_gettime_ok=no) - AC_MSG_RESULT($astra_clock_gettime_ok) - if test x$astra_clock_gettime_ok = xno; then - AC_MSG_ERROR([No clock_gettime found]) - else - SAVED_LIBS="$SAVED_LIBS -lrt" - fi -fi - - # boost-unit-test-framework AC_MSG_CHECKING([for boost-unit-test-framework]) diff --git a/include/astra/AsyncAlgorithm.h b/include/astra/AsyncAlgorithm.h index 2d5d31e..36e2184 100644 --- a/include/astra/AsyncAlgorithm.h +++ b/include/astra/AsyncAlgorithm.h @@ -75,10 +75,6 @@ public: */ virtual void run(int _iNrIterations = 0); - /** Wait for thread to complete and delete thread. - */ - virtual void timedJoin(int _milliseconds); - /** Return pointer to the wrapped algorithm. */ CAlgorithm* getWrappedAlgorithm() { return m_pAlg; } diff --git a/src/AsyncAlgorithm.cpp b/src/AsyncAlgorithm.cpp index fcc4dcb..b265f59 100644 --- a/src/AsyncAlgorithm.cpp +++ b/src/AsyncAlgorithm.cpp @@ -160,32 +160,6 @@ void CAsyncAlgorithm::runWrapped(int _iNrIterations) m_bDone = true; } -void CAsyncAlgorithm::timedJoin(int _milliseconds) -{ -#ifndef USE_PTHREADS - if (m_pThread) { - boost::posix_time::milliseconds rel(_milliseconds); - bool res = m_pThread->timed_join(rel); - if (res) { - delete m_pThread; - m_pThread = 0; - m_bThreadStarted = false; - } - } -#else - if (m_bThreadStarted) { - struct timespec abstime; - clock_gettime(CLOCK_REALTIME, &abstime); - abstime.tv_sec += _milliseconds / 1000; - abstime.tv_nsec += (_milliseconds % 1000) * 1000000L; - int err = pthread_timedjoin_np(m_thread, 0, &abstime); - if (err == 0) { - m_bThreadStarted = false; - } - } -#endif -} - void CAsyncAlgorithm::signalAbort() { if (m_pAlg) -- cgit v1.2.3 From e64e295fc6394124fdb4bf2630c823744eac23ea Mon Sep 17 00:00:00 2001 From: "Daniel M. Pelt" Date: Wed, 25 Feb 2015 08:11:53 +0100 Subject: Added libtool check for OSX --- build/linux/autogen.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/build/linux/autogen.sh b/build/linux/autogen.sh index c856793..544fdeb 100755 --- a/build/linux/autogen.sh +++ b/build/linux/autogen.sh @@ -12,9 +12,12 @@ if test $? -ne 0; then exit 1 fi -libtoolize --install --force > /dev/null 2>&1 +case `uname` in Darwin*) LIBTOOLIZEBIN=glibtoolize ;; + *) LIBTOOLIZEBIN=libtoolize ;; esac + +$LIBTOOLIZEBIN --install --force > /dev/null 2>&1 if test $? -ne 0; then - libtoolize --force + $LIBTOOLIZEBIN --force if test $? -ne 0; then echo "Error running libtoolize" exit 1 -- cgit v1.2.3 From 9a60acfc18e72b8aacdc7388617443e9854f4d3b Mon Sep 17 00:00:00 2001 From: Daan Pelt Date: Wed, 25 Feb 2015 12:02:16 +0100 Subject: Moved pthreads defines to Globals.h --- include/astra/AsyncAlgorithm.h | 4 +--- include/astra/Globals.h | 7 +++++++ matlab/mex/astra_mex_algorithm_c.cpp | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/include/astra/AsyncAlgorithm.h b/include/astra/AsyncAlgorithm.h index 36e2184..a3157fc 100644 --- a/include/astra/AsyncAlgorithm.h +++ b/include/astra/AsyncAlgorithm.h @@ -32,14 +32,12 @@ $Id$ #include "Config.h" #include "Algorithm.h" -#ifdef __linux__ -#define USE_PTHREADS +#ifdef USE_PTHREADS #include #else #include #endif - namespace astra { /** diff --git a/include/astra/Globals.h b/include/astra/Globals.h index fdeaa23..9c8ddfb 100644 --- a/include/astra/Globals.h +++ b/include/astra/Globals.h @@ -306,4 +306,11 @@ _AstraExport inline bool cudaEnabled() { return false; } #endif +//---------------------------------------------------------------------------------------- +// use pthreads on Linux and OSX +#if defined(__linux__) || defined(__MACH__) +#define USE_PTHREADS +#endif + + #endif diff --git a/matlab/mex/astra_mex_algorithm_c.cpp b/matlab/mex/astra_mex_algorithm_c.cpp index f719a6b..68342a7 100644 --- a/matlab/mex/astra_mex_algorithm_c.cpp +++ b/matlab/mex/astra_mex_algorithm_c.cpp @@ -38,7 +38,7 @@ $Id$ #ifdef USE_MATLAB_UNDOCUMENTED extern "C" { bool utIsInterruptPending(); } -#ifdef __linux__ +#ifdef USE_PTHREADS #define USE_PTHREADS_CTRLC #include #else -- cgit v1.2.3