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
diff options
context:
space:
mode:
authorJens Verwiebe <info@jensverwiebe.de>2012-11-08 01:19:43 +0400
committerJens Verwiebe <info@jensverwiebe.de>2012-11-08 01:19:43 +0400
commitaa42934cef8a5f545518bbfe3d7ddf4825818b3b (patch)
tree67ed34fc4bebc1267a3daeea0cc47adfa94036c3 /intern/itasc
parent204113b791a8eea6087de61199df1d5811055244 (diff)
itask: reworked conditionals for osx version compatibility
Diffstat (limited to 'intern/itasc')
-rw-r--r--intern/itasc/kdl/chain.hpp9
-rw-r--r--intern/itasc/kdl/tree.hpp19
2 files changed, 22 insertions, 6 deletions
diff --git a/intern/itasc/kdl/chain.hpp b/intern/itasc/kdl/chain.hpp
index 24e40858bff..fde9d4ed23e 100644
--- a/intern/itasc/kdl/chain.hpp
+++ b/intern/itasc/kdl/chain.hpp
@@ -35,11 +35,16 @@ namespace KDL {
*/
class Chain {
private:
-#if !defined(__APPLE__)
+#if defined(__APPLE__)
+# if MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_5
+ std::vector<Segment> segments;
+# else
// Eigen allocator is needed for alignment of Eigen data types
std::vector<Segment, Eigen::aligned_allocator<Segment> > segments;
+# endif /* MAC_OS_X_VERSION_MIN_REQUIRED */
#else
- std::vector<Segment> segments;
+ // Eigen allocator is needed for alignment of Eigen data types
+ std::vector<Segment, Eigen::aligned_allocator<Segment> > segments;
#endif
unsigned int nrOfJoints;
unsigned int nrOfSegments;
diff --git a/intern/itasc/kdl/tree.hpp b/intern/itasc/kdl/tree.hpp
index 4da764ac6d6..a020c6cf2cf 100644
--- a/intern/itasc/kdl/tree.hpp
+++ b/intern/itasc/kdl/tree.hpp
@@ -27,19 +27,30 @@
#include <string>
#include <map>
-#if !defined(__APPLE__)
-#include <Eigen/Core>
+#if defined(__APPLE__)
+# if MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_5
+ //no include
+# else
+# include <Eigen/Core>
+# endif /* MAC_OS_X_VERSION_MIN_REQUIRED */
+#else
+# include <Eigen/Core>
#endif
namespace KDL
{
//Forward declaration
class TreeElement;
-#if !defined(__APPLE__)
+#if defined(__APPLE__)
+# if MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_5
+ typedef std::map<std::string,TreeElement> SegmentMap;
+# else
// Eigen allocator is needed for alignment of Eigen data types
typedef std::map<std::string,TreeElement, std::less<std::string>, Eigen::aligned_allocator<std::pair<std::string, TreeElement> > > SegmentMap;
+# endif /* MAC_OS_X_VERSION_MIN_REQUIRED */
#else
- typedef std::map<std::string,TreeElement> SegmentMap;
+ // Eigen allocator is needed for alignment of Eigen data types
+ typedef std::map<std::string,TreeElement, std::less<std::string>, Eigen::aligned_allocator<std::pair<std::string, TreeElement> > > SegmentMap;
#endif
class TreeElement
{