Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/extern
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2014-01-09 14:03:02 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2014-01-09 14:03:02 +0400
commit2d8545f87e554210f2d7446a20742b4cc4701b4e (patch)
tree61cc0f9bc4465b36ed1067ed154c201a0bcd0f96 /extern
parent1ea5c2a8e3518cf736e90394a1c10c1b31816f11 (diff)
Fix compilation error on NetBSD
Original patch is by Jeorg Sonnenberger, thanks!
Diffstat (limited to 'extern')
-rw-r--r--extern/libmv/ChangeLog21
-rw-r--r--extern/libmv/libmv/numeric/numeric.h33
-rw-r--r--extern/libmv/libmv/tracking/brute_region_tracker.cc4
3 files changed, 31 insertions, 27 deletions
diff --git a/extern/libmv/ChangeLog b/extern/libmv/ChangeLog
index 66688c347aa..c34ea066172 100644
--- a/extern/libmv/ChangeLog
+++ b/extern/libmv/ChangeLog
@@ -1,3 +1,14 @@
+commit 0a69fadadc5aacbd339f839ac5bd12c3571278b1
+Author: Sergey Sharybin <sergey.vfx@gmail.com>
+Date: Thu Jan 9 15:50:11 2014 +0600
+
+ Fix compilation error on NetBSD
+
+ - NetBSD doesn't provide sincos(3) in libm, so don't try to use it
+ - Use posix_memalign on NetBSD
+
+ Original patch is by Jeorg Sonnenberger to Blender patch tracker, thanks!
+
commit b0df3e291e6c85f791658be04334efafc41989f5
Author: Sergey Sharybin <sergey.vfx@gmail.com>
Date: Thu Jan 2 15:12:18 2014 +0600
@@ -674,13 +685,3 @@ Author: Sergey Sharybin <sergey.vfx@gmail.com>
Date: Thu Apr 4 02:59:58 2013 +0600
Suppress strict compiler warnings in glags/glog libraries
-
-commit 307f3449c3dc47ed0082a22c88f9ab42114c2a0f
-Author: Sergey Sharybin <sergey.vfx@gmail.com>
-Date: Thu Apr 4 01:20:18 2013 +0600
-
- Lint cleanup, mostly white space and line width.
-
- Also moved own includes to the top of files.
-
- Should be no functional changes :)
diff --git a/extern/libmv/libmv/numeric/numeric.h b/extern/libmv/libmv/numeric/numeric.h
index 81705c4b370..55d4c7d4651 100644
--- a/extern/libmv/libmv/numeric/numeric.h
+++ b/extern/libmv/libmv/numeric/numeric.h
@@ -33,23 +33,26 @@
#include <Eigen/QR>
#include <Eigen/SVD>
-#if (defined(_WIN32) || defined(__APPLE__) || defined(__FreeBSD__)) && !defined(__MINGW64__)
- static void sincos(double x, double *sinx, double *cosx) {
- *sinx = sin(x);
- *cosx = cos(x);
- }
-#endif // _WIN32 || __APPLE__
+#if !defined(__MINGW64__)
+# if defined(_WIN32) || defined(__APPLE__) || \
+ defined(__FreeBSD__) || defined(__NetBSD__)
+static void sincos(double x, double *sinx, double *cosx) {
+ *sinx = sin(x);
+ *cosx = cos(x);
+}
+# endif
+#endif // !__MINGW64__
#if (defined(WIN32) || defined(WIN64)) && !defined(__MINGW32__)
- inline long lround(double d) {
- return (long)(d>0 ? d+0.5 : ceil(d-0.5));
- }
-#if _MSC_VER < 1800
- inline int round(double d) {
- return (d>0) ? int(d+0.5) : int(d-0.5);
- }
-#endif
- typedef unsigned int uint;
+inline long lround(double d) {
+ return (long)(d>0 ? d+0.5 : ceil(d-0.5));
+}
+# if _MSC_VER < 1800
+inline int round(double d) {
+ return (d>0) ? int(d+0.5) : int(d-0.5);
+}
+# endif // _MSC_VER < 1800
+typedef unsigned int uint;
#endif // _WIN32
namespace libmv {
diff --git a/extern/libmv/libmv/tracking/brute_region_tracker.cc b/extern/libmv/libmv/tracking/brute_region_tracker.cc
index 01279a04347..234aaa6ed00 100644
--- a/extern/libmv/libmv/tracking/brute_region_tracker.cc
+++ b/extern/libmv/libmv/tracking/brute_region_tracker.cc
@@ -24,7 +24,7 @@
#include <emmintrin.h>
#endif
-#if !defined(__APPLE__) && !defined(__FreeBSD__)
+#if !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__NetBSD__)
// Needed for memalign on Linux and _aligned_alloc on Windows.
#ifdef FREE_WINDOWS
/* make sure _aligned_malloc is included */
@@ -60,7 +60,7 @@ void *aligned_malloc(int size, int alignment) {
// they work natively with SSE types with no further work.
CHECK_EQ(alignment, 16);
return malloc(size);
-#elif __FreeBSD__
+#elif defined(__FreeBSD__) || defined(__NetBSD__)
void *result;
if (posix_memalign(&result, alignment, size)) {