diff options
author | Tor Lillqvist <tml@collabora.com> | 2014-05-06 18:44:03 +0300 |
---|---|---|
committer | Tor Lillqvist <tml@collabora.com> | 2014-05-06 18:55:13 +0300 |
commit | 8c51ef52e26766949a4eae57b8e3054f242da7f6 (patch) | |
tree | 3217925796c7b6ad41aa529e316a19c7f3bbd5c3 /external/libgltf/patches | |
parent | e1bc856e628e4a72bd90498d12b94f1d57f6d75d (diff) |
Don't use extern "C" for a function which return C++ types
Fix error: 'gltf_get_model_center_pos' has C-linkage specified, but returns
user-defined type 'glm::vec3' (aka 'tvec3<mediump_float>') which is
incompatible with C.
I don't really understand the reason for the extern "C" use in
libgltf.h. After all, the header clearly is intended to be included from C++
code (after all, the use of 'extern "C"' is unconditional and it is not valid
in C), and the implementation of the functions is in C++. Also, we build
libgltf as a static library, so it can't be the case that we would need to
look up its symbols dynamically (when unmangled names would be better). But
maybe I am missing something.
Change-Id: I19f025610301f8c535178a83f4ab2e58455bad57
Diffstat (limited to 'external/libgltf/patches')
-rw-r--r-- | external/libgltf/patches/extern-C.patch | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/external/libgltf/patches/extern-C.patch b/external/libgltf/patches/extern-C.patch new file mode 100644 index 000000000000..fd34f8a815f7 --- /dev/null +++ b/external/libgltf/patches/extern-C.patch @@ -0,0 +1,10 @@ +--- libgltf/inc/libgltf.h ++++ libgltf/inc/libgltf.h +@@ -48,7 +48,6 @@ + void gltf_get_camera_pos(glm::vec3 *pos,glm::vec3 *view,glm::vec3 *up);
+
+ /*get model center position information*/
+-extern "C"
+ glm::vec3 gltf_get_model_center_pos();
+ /*get camera position information*/
+ extern "C"
|