summaryrefslogtreecommitdiffstats
path: root/build/linux
diff options
context:
space:
mode:
Diffstat (limited to 'build/linux')
-rw-r--r--build/linux/Makefile.in18
-rw-r--r--build/linux/configure.ac31
2 files changed, 46 insertions, 3 deletions
diff --git a/build/linux/Makefile.in b/build/linux/Makefile.in
index cd5e74b..0dfa15a 100644
--- a/build/linux/Makefile.in
+++ b/build/linux/Makefile.in
@@ -1,6 +1,7 @@
cuda=@HAVECUDA@
matlab=@HAVEMATLAB@
python=@HAVEPYTHON@
+boostutf=@HAVEBOOSTUTF@
MATLAB_ROOT=@MATLAB_ROOT@
@@ -32,6 +33,8 @@ CXXFLAGS+=-g -O3 -Wall -Wshadow
LIBS+=-lpthread
LDFLAGS+=-g
+CPPFLAGS+=@CPPFLAGS_OS@
+
ifeq ($(cuda),yes)
CPPFLAGS += @CPPFLAGS_CUDA@ -DASTRA_CUDA
NVCCFLAGS = @NVCCFLAGS@ @CPPFLAGS_CUDA@ -I../.. -I../../include -DASTRA_CUDA
@@ -57,6 +60,8 @@ endif
BOOST_CPPFLAGS=
BOOST_LDFLAGS=
+BOOSTUTF_LIBS=@LIBS_BOOSTUTF@
+
CPPFLAGS+=$(BOOST_CPPFLAGS)
LDFLAGS+=$(BOOST_LDFLAGS)
@@ -118,7 +123,7 @@ BASE_OBJECTS=\
src/Fourier.lo \
src/GeometryUtil3D.lo \
src/Globals.lo \
- src/Logger.lo \
+ src/Logging.lo \
src/ParallelBeamBlobKernelProjector2D.lo \
src/ParallelBeamLinearKernelProjector2D.lo \
src/ParallelBeamLineKernelProjector2D.lo \
@@ -216,6 +221,7 @@ TEST_OBJECTS=\
MATLAB_CXX_OBJECTS=\
matlab/mex/mexHelpFunctions.o \
matlab/mex/mexCopyDataHelpFunctions.o \
+ matlab/mex/mexInitFunctions.o \
matlab/mex/mexDataManagerHelpFunctions.o
MATLAB_MEX=\
@@ -225,6 +231,7 @@ MATLAB_MEX=\
matlab/mex/astra_mex_matrix_c.$(MEXSUFFIX) \
matlab/mex/astra_mex_projector_c.$(MEXSUFFIX) \
matlab/mex/astra_mex_projector3d_c.$(MEXSUFFIX) \
+ matlab/mex/astra_mex_log_c.$(MEXSUFFIX) \
matlab/mex/astra_mex_data3d_c.$(MEXSUFFIX)
@@ -288,11 +295,16 @@ ifeq ($(cuda),yes)
@rm -f $(*F).linkinfo
endif
+ifeq ($(boostutf),yes)
test.bin: $(ALL_OBJECTS) $(TEST_OBJECTS)
- ./libtool --mode=link $(LD) -o $@ $(LDFLAGS) $(LIBS) $+ -lboost_unit_test_framework
+ ./libtool --mode=link $(LD) -o $@ $(LDFLAGS) $+ $(LIBS) $(BOOSTUTF_LIBS)
test: test.bin
./test.bin
+else
+test:
+ @echo "Tests have been disabled by configure"
+endif
clean:
rm -f $(MATLAB_MEX) libastra.la
@@ -303,6 +315,8 @@ clean:
rm -f $(TEST_OBJECTS) test.bin
rm -fr ../../python/finalbuild/
rm -fr ../../python/build/
+ rm -f ../../python/astra/*.cpp
+ rm -f ../../python/astra/*.c
distclean: clean
rm -f config.guess config.sub ltmain.sh libtool install-sh
diff --git a/build/linux/configure.ac b/build/linux/configure.ac
index b97a7a0..d9e1f1a 100644
--- a/build/linux/configure.ac
+++ b/build/linux/configure.ac
@@ -53,20 +53,36 @@ AC_CHECK_HEADER(iostream, , AC_MSG_ERROR([No working c++ compiler found]))
AC_MSG_CHECKING([for boost-unit-test-framework])
ASTRA_CHECK_BOOST_UNIT_TEST_FRAMEWORK(-lboost_unit_test_framework-mt, BOOSTUTF=yes_mt, BOOSTUTF=no)
+HAVEBOOSTUTF=no
if test x$BOOSTUTF = xno; then
ASTRA_CHECK_BOOST_UNIT_TEST_FRAMEWORK(-lboost_unit_test_framework, BOOSTUTF=yes, BOOSTUTF=no)
if test x$BOOSTUTF = xno; then
AC_MSG_RESULT(no)
- AC_MSG_ERROR([No boost-unit-test-framework library found])
else
AC_MSG_RESULT([yes, libboost_unit_test_framework])
LIBS_BOOSTUTF="-lboost_unit_test_framework"
+ HAVEBOOSTUTF=yes
fi
else
AC_MSG_RESULT([yes, libboost_unit_test_framework-mt])
LIBS_BOOSTUTF="-lboost_unit_test_framework-mt"
+ HAVEBOOSTUTF=yes
fi
+AC_SUBST(HAVEBOOSTUTF)
+AC_SUBST(LIBS_BOOSTUTF)
+
+BOOSTok=yes
+AC_CHECK_HEADER([boost/lexical_cast.hpp],[],[BOOSTok=no],[])
+AC_CHECK_HEADER([boost/any.hpp],[],[BOOSTok=no],[])
+dnl AC_CHECK_HEADER([boost/thread.hpp],[],[BOOSTok=no],[])
+dnl AC_CHECK_HEADER([boost/bind.hpp],[],[BOOSTok=no],[])
+AC_CHECK_HEADER([boost/static_assert.hpp],[],[BOOSTok=no],[])
+AC_CHECK_HEADER([boost/throw_exception.hpp],[],[BOOSTok=no],[])
+
+if test x$BOOSTok = xno; then
+ AC_MSG_ERROR([boost not found])
+fi
# nvcc, cuda
@@ -208,6 +224,19 @@ fi
AC_SUBST(HAVEPYTHON)
+#OS specific setup
+AC_CANONICAL_HOST
+case $host_os in
+ darwin* )
+ CPPFLAGS_OS="-stdlib=libstdc++ -mmacosx-version-min=10.6"
+ ;;
+ *)
+ CPPFLAGS_OS=""
+ ;;
+esac
+
+AC_SUBST(CPPFLAGS_OS)
+
# TODO: