Page Menu
Home
Search
Configure Global Search
Log In
Files
F18863
clang30.patch
Public
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Authored By
Yasuhiro Fujii (y-fujii)
Nov 13 2013, 4:12 PM
Size
6 KB
Subscribers
None
clang30.patch
View Options
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt (revision 44393)
+++ CMakeLists.txt (working copy)
@@ -1496,14 +1496,7 @@
endif()
endif()
-if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
- if(WITH_IK_ITASC)
- message(WARNING "Using Clang as CXX compiler: disabling WITH_IK_ITASC and WITH_MOD_FLUID, these features will be missing.")
- set(WITH_IK_ITASC OFF)
- endif()
-endif()
-
# ensure python header is found since detection can fail, this could happen
# with _any_ library but since we used a fixed python version this tends to
# be most problematic.
Index: source/blender/ikplugin/intern/itasc_plugin.cpp
===================================================================
--- source/blender/ikplugin/intern/itasc_plugin.cpp (revision 44393)
+++ source/blender/ikplugin/intern/itasc_plugin.cpp (working copy)
@@ -90,8 +90,6 @@
typedef float Vector4[4];
struct IK_Target;
typedef void (*ErrorCallback)(const iTaSC::ConstraintValues* values, unsigned int nvalues, IK_Target* iktarget);
-// For some reason, gcc doesn't find the declaration of this function in linux
-void KDL::SetToZero(JntArray& array);
// one structure for each target in the scene
struct IK_Target
@@ -1029,7 +1027,7 @@
// assume uniform scaling and take Y scale as general scale for the armature
scale = len_v3(ikscene->blArmature->obmat[1]);
// rest pose is 0
- KDL::SetToZero(ikscene->jointArray);
+ SetToZero(ikscene->jointArray);
// except for transY joints
rot = &ikscene->jointArray(0);
for(joint=a=0, ikchan = ikscene->channels; a<ikscene->numchan && joint<ikscene->numjoint; ++a, ++ikchan) {
Index: extern/libmv/third_party/glog/src/utilities.h
===================================================================
--- extern/libmv/third_party/glog/src/utilities.h (revision 44393)
+++ extern/libmv/third_party/glog/src/utilities.h (working copy)
@@ -105,7 +105,7 @@
# undef STACKTRACE_H
#elif defined(HAVE_LIB_UNWIND)
# define STACKTRACE_H "stacktrace_libunwind-inl.h"
-#elif !defined(NO_FRAME_POINTER)
+#elif !defined(NO_FRAME_POINTER) && !defined(__clang__)
# if defined(__i386__) && __GNUC__ >= 2
# define STACKTRACE_H "stacktrace_x86-inl.h"
# elif defined(__x86_64__) && __GNUC__ >= 2
Index: extern/libmv/third_party/glog/src/logging.cc
===================================================================
--- extern/libmv/third_party/glog/src/logging.cc (revision 44393)
+++ extern/libmv/third_party/glog/src/logging.cc (working copy)
@@ -1231,6 +1231,14 @@
#endif
}
+#if defined(HAVE___ATTRIBUTE__)
+typedef void (*fail_func_t)() __attribute__((noreturn));
+static void logging_fail() __attribute__((noreturn));
+#else
+typedef void (*fail_func_t)();
+static void logging_fail();
+#endif
+
static void logging_fail() {
// #if defined(_DEBUG) && defined(_MSC_VER)
// doesn't work for my laptop (sergey)
@@ -1243,14 +1251,9 @@
#endif
}
-#ifdef HAVE___ATTRIBUTE__
-GOOGLE_GLOG_DLL_DECL
-void (*g_logging_fail_func)() __attribute__((noreturn)) = &logging_fail;
-#else
-GOOGLE_GLOG_DLL_DECL void (*g_logging_fail_func)() = &logging_fail;
-#endif
+GOOGLE_GLOG_DLL_DECL fail_func_t g_logging_fail_func = &logging_fail;
-void InstallFailureFunction(void (*fail_func)()) {
+void InstallFailureFunction(fail_func_t fail_func) {
g_logging_fail_func = fail_func;
}
Index: extern/carve/include/carve/face_decl.hpp
===================================================================
--- extern/carve/include/carve/face_decl.hpp (revision 44393)
+++ extern/carve/include/carve/face_decl.hpp (working copy)
@@ -67,10 +67,10 @@
typedef carve::geom2d::P2 (*project_t)(const vector_t &);
typedef vector_t (*unproject_t)(const carve::geom2d::P2 &, const plane_t &);
- protected:
std::vector<const vertex_t *> vertices; // pointer into polyhedron.vertices
std::vector<const edge_t *> edges; // pointer into polyhedron.edges
+ protected:
project_t getProjector(bool positive_facing, int axis);
unproject_t getUnprojector(bool positive_facing, int axis);
Index: extern/carve/include/carve/kd_node.hpp
===================================================================
--- extern/carve/include/carve/kd_node.hpp (revision 44393)
+++ extern/carve/include/carve/kd_node.hpp (working copy)
@@ -28,7 +28,7 @@
namespace carve {
namespace geom {
template<unsigned ndim,
- typename data_t,
+ typename _data_t,
typename inserter_t,
typename aabb_calc_t>
class kd_node {
@@ -41,6 +41,7 @@
kd_node *parent;
axis_pos splitpos;
+ typedef _data_t data_t;
typedef vector<ndim> vector_t;
typedef std::list<data_t> container_t;
Index: extern/carve/include/carve/polyhedron_impl.hpp
===================================================================
--- extern/carve/include/carve/polyhedron_impl.hpp (revision 44393)
+++ extern/carve/include/carve/polyhedron_impl.hpp (working copy)
@@ -116,7 +116,7 @@
int r = 0;
const std::vector<const face_t *> &edge_faces = connectivity.edge_to_face[edgeToIndex_fast(e)];
for (size_t i = 0; i < edge_faces.size(); ++i) {
- face_t *f = edge_faces[i];
+ const face_t *f = edge_faces[i];
if (f && f->manifold_id == m_id) { r += _faceNeighbourhood(f, depth, &result); }
}
return r;
@@ -131,7 +131,7 @@
int r = 0;
const std::vector<const face_t *> &vertex_faces = connectivity.vertex_to_face[vertexToIndex_fast(v)];
for (size_t i = 0; i < vertex_faces.size(); ++i) {
- face_t *f = vertex_faces[i];
+ const face_t *f = vertex_faces[i];
if (f && f->manifold_id == m_id) { r += _faceNeighbourhood(f, depth, &result); }
}
return r;
@@ -142,7 +142,7 @@
// accessing connectivity information.
template<typename T>
int Geometry<3>::vertexToEdges(const vertex_t *v, T result) const {
- std::vector<const edge_t *> &e = connectivity.vertex_to_edge[vertexToIndex_fast(v)];
+ const std::vector<const edge_t *> &e = connectivity.vertex_to_edge[vertexToIndex_fast(v)];
std::copy(e.begin(), e.end(), result);
return e.size();
}
File Metadata
Details
Mime Type
text/x-diff
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
4c/be/5689b01244398c32d7bede6f5c95
Event Timeline
Log In to Comment