summaryrefslogtreecommitdiff
blob: 8a30041469f83138165ea22488146124569244ba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
Remove bundled m4 macros, instead use system ones from
sys-devel/autoconf-archive. Use AX_BOOST_SYSTEM to prevent
underlinking issues with more recent boost versions.
See also: https://bugs.gentoo.org/show_bug.cgi?id=550018

--- povray-3.7.0.0/unix/configure.ac
+++ povray-3.7.0.0/unix/configure.ac
@@ -54,23 +54,7 @@
 AC_CONFIG_SRCDIR([unix/disp_text.cpp])
 
 # Additional autoconf macros.
-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])
-m4_include([unix/config/ax_check_libsdl.m4])
-m4_include([unix/config/ax_check_libtiff.m4])
-m4_include([unix/config/ax_check_openexr.m4])
-m4_include([unix/config/ax_compare_version.m4])
-m4_include([unix/config/ax_compiler_vendor.m4])
-m4_include([unix/config/ax_compiler_version.m4])
-m4_include([unix/config/ax_fix_incorrect_path.m4])
-m4_include([unix/config/ax_prog_ld_static.m4])
-m4_include([unix/config/ax_x86_arch.m4])
+AC_CONFIG_MACRO_DIR([unix/config])
 
 # Required versions of the support libraries.
 # Must be declared after AC_INIT.
@@ -166,7 +150,7 @@
 AC_CANONICAL_BUILD
 AC_CANONICAL_HOST
 
-AM_INIT_AUTOMAKE([1.9 dist-bzip2])
+AM_INIT_AUTOMAKE([1.9 dist-bzip2 subdir-objects])
 AM_MAINTAINER_MODE
 
 AX_FIX_INCORRECT_PATH(C_INCLUDE_PATH, ".", [pov_warn_path="$pov_warn_path C_INCLUDE_PATH"])
@@ -184,6 +168,7 @@
 CFLAGS="$CFLAGS"
 AC_PROG_CC
 AC_PROG_CPP
+AM_PROG_AR
 
 # Force checking essential (ANSI-compliant) headers.
 AC_CHECK_HEADERS([stdlib.h])
@@ -292,13 +277,14 @@
 fi
 
 # Posix threads
-ACX_PTHREAD
+AX_PTHREAD
 CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"  # append
 LIBS="$LIBS $PTHREAD_CFLAGS $PTHREAD_LIBS"  # append
 
 # Boost; required library
 # the following macro stops with error when boost is not found
 AX_BOOST_BASE([$required_libboost_version])
+AX_BOOST_SYSTEM
 AX_BOOST_THREAD
 if test x"$ax_cv_boost_thread" != x"yes"; then
   AC_MSG_ERROR([cannot find a suitable boost thread library])
@@ -307,19 +293,6 @@
   LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"     # append
   LIBS="$BOOST_THREAD_LIB $LIBS"
 fi
-AC_MSG_CHECKING([whether the boost thread library is usable])
-AC_RUN_IFELSE(
-  [AC_LANG_PROGRAM([[
-#include <boost/thread/thread.hpp>
-    ]],
-    [[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
--- povray-3.7.0.0/unix/prebuild.sh
+++ povray-3.7.0.0/unix/prebuild.sh
@@ -439,7 +439,8 @@
 # Beware: order does matter!
 LDADD = \\
   \$(top_builddir)/vfe/libvfe.a \\
-  \$(top_builddir)/source/libpovray.a
+  \$(top_builddir)/source/libpovray.a \\
+  @BOOST_SYSTEM_LIB@
 pbEOF
   ;;
 esac
--- povray-3.7.0.0/vfe/unix/platformbase.cpp
+++ povray-3.7.0.0/vfe/unix/platformbase.cpp
@@ -68,7 +68,7 @@
 #else
 		// taken from source/base/timer.cpp
 		boost::xtime t;
-		boost::xtime_get(&t, boost::TIME_UTC);
+		boost::xtime_get(&t, POV_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));