summaryrefslogtreecommitdiffhomepage
path: root/tracker-wii
diff options
context:
space:
mode:
Diffstat (limited to 'tracker-wii')
-rw-r--r--tracker-wii/CMakeLists.txt5
-rw-r--r--tracker-wii/wii_camera.cpp11
-rw-r--r--tracker-wii/wii_camera.h2
-rw-r--r--tracker-wii/wiiyourself/CMakeLists.txt3
-rw-r--r--tracker-wii/wiiyourself/warns-begin.hpp8
-rw-r--r--tracker-wii/wiiyourself/warns-end.hpp4
-rw-r--r--tracker-wii/wiiyourself/wiimote.cpp2
7 files changed, 31 insertions, 4 deletions
diff --git a/tracker-wii/CMakeLists.txt b/tracker-wii/CMakeLists.txt
index e40692ba..f43dca55 100644
--- a/tracker-wii/CMakeLists.txt
+++ b/tracker-wii/CMakeLists.txt
@@ -3,7 +3,8 @@ if(WIN32)
if(OpenCV_FOUND)
add_subdirectory(wiiyourself)
otr_module(tracker-wii)
- target_link_libraries(opentrack-tracker-wii opentrack-tracker-pt-base opentrack-wiiyourself bthprops)
- target_include_directories(opentrack-tracker-wii PRIVATE "${CMAKE_SOURCE_DIR}/tracker-pt")
+ target_link_libraries(${self} opentrack-tracker-pt-base opentrack-wiiyourself bthprops)
+ target_include_directories(${self} PRIVATE SYSTEM "${CMAKE_CURRENT_SOURCE_DIR}/wiiyourself")
+ target_include_directories(${self} PRIVATE "${CMAKE_SOURCE_DIR}/tracker-pt")
endif()
endif()
diff --git a/tracker-wii/wii_camera.cpp b/tracker-wii/wii_camera.cpp
index ab216215..da998ecf 100644
--- a/tracker-wii/wii_camera.cpp
+++ b/tracker-wii/wii_camera.cpp
@@ -7,8 +7,19 @@
*/
// silence #pragma deprecated in bluetoothapis.h
+
+#ifdef __clang__
+# pragma clang diagnostic push
+# pragma clang diagnostic ignored "-Wreserved-id-macro"
+#endif
+
#undef _WIN32_WINNT
#define _WIN32_WINNT _WIN32_WINNT_VISTA
+
+#ifdef __clang__
+# pragma clang diagnostic pop
+#endif
+
#undef NTDDI_VERSION
#define NTDDI_VERSION NTDDI_VISTASP1
diff --git a/tracker-wii/wii_camera.h b/tracker-wii/wii_camera.h
index 11af8846..c8a1d106 100644
--- a/tracker-wii/wii_camera.h
+++ b/tracker-wii/wii_camera.h
@@ -21,7 +21,7 @@
#include <QString>
-#include <wiiyourself/wiimote.h>
+#include <wiimote.h>
#include "wii_frame.hpp"
namespace pt_module {
diff --git a/tracker-wii/wiiyourself/CMakeLists.txt b/tracker-wii/wiiyourself/CMakeLists.txt
index fe6d62e8..91fa245a 100644
--- a/tracker-wii/wiiyourself/CMakeLists.txt
+++ b/tracker-wii/wiiyourself/CMakeLists.txt
@@ -1,4 +1,7 @@
if(WIN32)
otr_module(wiiyourself STATIC NO-COMPAT NO-QT)
target_link_libraries(${self} setupapi hid winmm)
+ if(CMAKE_COMPILER_IS_CLANGXX OR CMAKE_COMPILER_IS_GNUCXX)
+ target_compile_options(${self} PRIVATE -Wno-error)
+ endif()
endif()
diff --git a/tracker-wii/wiiyourself/warns-begin.hpp b/tracker-wii/wiiyourself/warns-begin.hpp
index e4b148ef..dab250f7 100644
--- a/tracker-wii/wiiyourself/warns-begin.hpp
+++ b/tracker-wii/wiiyourself/warns-begin.hpp
@@ -10,3 +10,11 @@
# pragma GCC diagnostic ignored "-Wcast-function-type"
# endif
#endif
+
+#ifdef __clang__
+# pragma clang diagnostic push
+# pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant"
+# pragma clang diagnostic ignored "-Wextra-semi"
+# pragma clang diagnostic ignored "-Wshadow-field"
+# pragma clang diagnostic ignored "-Wreserved-id-macro"
+#endif
diff --git a/tracker-wii/wiiyourself/warns-end.hpp b/tracker-wii/wiiyourself/warns-end.hpp
index beaf245d..3de03ca5 100644
--- a/tracker-wii/wiiyourself/warns-end.hpp
+++ b/tracker-wii/wiiyourself/warns-end.hpp
@@ -1,3 +1,7 @@
#ifdef __GNUG__
# pragma GCC diagnostic pop
#endif
+
+#ifdef __clang__
+# pragma clang diagnostic pop
+#endif
diff --git a/tracker-wii/wiiyourself/wiimote.cpp b/tracker-wii/wiiyourself/wiimote.cpp
index f6946fad..90788495 100644
--- a/tracker-wii/wiiyourself/wiimote.cpp
+++ b/tracker-wii/wiiyourself/wiimote.cpp
@@ -1432,7 +1432,7 @@ int wiimote::ParseExtension(BYTE *buff, unsigned offset)
float raw_x = buff[offset + 0];
float raw_y = buff[offset + 1];
- if ((raw_x != joy.RawX) || (raw_y != joy.RawY))
+ if (std::fabs(raw_x - joy.RawX) < 1e-6f || std::fabs(raw_y - joy.RawY) < 1e-6f)
changed |= NUNCHUK_JOYSTICK_CHANGED;
joy.RawX = raw_x;