Commit Graph

578 Commits

Author SHA1 Message Date
Léo Lam 843b030eda WiimoteReal: Add a hidapi IO implementation
Based on ca0c2efe7a. Credits go to flacs.
However, unlike the original commit, hidapi does not completely replace
the current implementations, so we can still connect Wiimotes with 1+2
(without pairing).

Also, it is only used on Linux and OS X for now. This removes the
advantage of having only one implementation but there is no other
choice: using hidapi on Windows is currently impossible because
hid_write() is implemented in a way that won't work with Wiimotes.

Additionally:
* We now check for the device name in addition to the PID/VID so we can
  support the Balance Board and maybe third-party Wiimotes too. This
  doesn't achieve anything with the DolphinBar but it does with hidraw.
* Added a check to not connect to the same device more than once.
2016-10-03 11:41:23 +02:00
Tillmann Karras 84467d2ff1 Externals: add hidapi
Current master (d17db57b9d4354752e0af42f5f33007a42ef2906) because
Android support was added after the current release (0.8.0-rc1).
2016-10-03 11:37:24 +02:00
shuffle2 09fd2fd8e2 Merge pull request #4015 from EmptyChaos/wx-misc-fixes
WX: Fix pop-under (win) / game list garbage (win) / language support (Linux)
2016-10-02 22:46:14 -07:00
shuffle2 f71966866b Merge pull request #4230 from ligfx/build_vendored_libusb
Build vendored libusb with CMake if on Apple or not available system-wide
2016-10-02 21:17:01 -07:00
Michael Maltese 08d9c46b79 Build portaudio from Externals when not available on system
TL;DR: Enables mic support on macOS builds
2016-09-28 13:43:02 -04:00
Michael Maltese 8bb2139224 Build vendored libUSB with CMake 2016-09-28 13:32:07 -04:00
Léo Lam e8cb4119b8 Drop Dolphin-specific patch to wxWindows
This removes a Dolphin-specific patch to the wxWidgets3 code
for the following reasons:

* Calling wxWindowGTK::DoSetSize on a top-level window can end up
  calling wxTopLevelWindowGTK::DoMoveWindow, which triggers an assert
  because it is not supposed to be called for a top-level wxWindow.

* We should not be patching the wxWidgets code because that means the
  toolbars will still be broken if someone builds without using the
  WX that is in our Externals.

Instead, we now use a derived class for wxAuiToolBar and override
DoSetSize() to remove the problematic behaviour to get the same effect
(fixing toolbars) but without changing Externals code and without
causing asserts and other issues.
2016-09-07 15:15:09 +02:00
EmptyChaos 50756d69c0 WX: Various fixes.
Dolphin no longer lowers itself below the top window when opening.
Dolphin no longer draws garbage lines all over the game list.

Use the correct platform macros so Dolphin can actually find the
translation catalogs on Unix.
2016-08-31 14:32:39 +10:00
Stenzek 951fc44d86 Externals: Add glslang from Vulkan SDK v1.0.21.1 2016-08-11 22:40:32 +10:00
Stenzek 49e57df2b6 Externals: Add Vulkan headers from SDK v1.0.21.1 2016-08-11 22:40:32 +10:00
Mat M fac7d09091 Merge pull request #3737 from EmptyChaos/update-wx
Externals: Update wxWidgets to 3.1.0
2016-07-15 09:48:14 -04:00
comex 8a02473237 Fix more warnings:
- Externals/soundtouch/CMakeLists.txt: add -w (since it's not our code) to
silence an unused variable warning
- Source/Core/Core/NetPlayClient.cpp: Work around a Clang/libc++ bug where
initializing a std::array the way the standard says you're supposed to produces
a warning.  (libc++'s implementation of std::array, like any sane
implementation, has a C array as a field, so the most explicit form of
initialization would use two braces, one for the struct and one for the array.
Clang has a general warning for not being explicit with braces, which is
usually sane.  But the standard only guarantees that initializing std::array
works with a single pair of braces!)  There are other places in Dolphin that
incorrectly use double braces, presumably to avoid the warning, so maybe the
warning should just be turned off, but in any case here I just switch to an
equivalent .fill().
2016-07-10 21:51:28 -04:00
EmptyChaos 822326eea9 Update wxWidgets to 3.1.0
From wxWidgets master 81570ae070b35c9d52de47b1f14897f3ff1a66c7.

include/wx/defs.h -- __w64 warning disable patch by comex brought forward.

include/wx/msw/window.h -- added GetContentScaleFactor() which was not implemented on Windows but is necessary for wxBitmap scaling on Mac OS X so it needs to work to avoid #ifdef-ing the code.

src/gtk/window.cpp -- Modified DoSetClientSize() to direct call wxWindowGTK::DoSetSize() instead of using public wxWindowBase::SetSize() which now prevents derived classes (like wxAuiToolbar) intercepting the call and breaking it. This matches Windows which does NOT need to call DoSetSize internally. End result is this fixes Dolphin's debug tools toolbars on Linux.

src/osx/window_osx.cpp -- Same fix as for GTK since it has the same issue.

src/msw/radiobox.cpp -- Hacked to fix display in HiDPI (was clipping off end of text).

Updated CMakeLists for Linux and Mac OS X. Small code changes to Dolphin to fix debug error boxes, deprecation warnings, and retain previous UI behavior on Windows.
2016-06-26 15:25:29 +10:00
JosJuice 699a90a7b4 Windows: Don't include Externals\curl\lib\ everywhere 2016-06-21 10:58:50 +02:00
Pierre Bourdon c4f5c471bb Externals: Add libcurl. 2016-06-18 18:31:40 +02:00
Ryan Houdek ee6104d1cd Remove mbedtls header install target. 2016-03-01 17:14:09 -06:00
hdcmeta 98f74d3479 D3D12: Add d3dx12.h helper library to Externals 2016-02-15 09:48:23 -08:00
Ryan Houdek ab0091b156 Remove mbedtls install target
Fixes 5.0 blocker bug #9208
2016-02-06 02:43:50 -06:00
Ryan Houdek 0a42a0ab1b Merge pull request #3428 from Sonicadvance1/proper_glextensions
Make GLExtensions no longer require slghtly modified GL headers
2016-01-06 15:24:47 -05:00
Chris Burgener bfcf7c791c Add ffmpeg externals 2016-01-05 18:00:41 +01:00
Ryan Houdek 73d4cf6361 Remove our modified GL headers. 2016-01-02 10:34:16 -06:00
skidau cfa925fbbe Updated SoundTouch library to 1.9.2 2015-12-28 23:08:55 +11:00
Scott Mansell ffb9722f2d Merge pull request #3032 from waddlesplash/dolphin-qt
Lots more minor DolphinQt stuffs.
2015-11-23 21:45:28 +13:00
waddlesplash 2d9c5ce6b3 Externals/Qt: Update to Qt 5.5.0. 2015-11-06 18:39:30 -05:00
Jeffrey Pfau efb7272396 Externals: Update miniupnpc to API version 14 2015-10-13 23:35:52 -07:00
Tillmann Karras f70da0e889 mbedTLS: adapt CMakeLists.txt for Dolphin 2015-09-25 03:46:41 +02:00
Tillmann Karras 4bf776792f mbedTLS: add Dolphin-specific vcxproj file 2015-09-25 03:46:41 +02:00
Tillmann Karras 868eab0bf6 mbedTLS: update license overview
They changed their license from GPLv2+ to Apache 2.0.
2015-09-25 03:46:41 +02:00
Tillmann Karras 9872473f70 mbedTLS: add version 2.1.1
PolarSSL has been renamed to "mbed TLS" and version 2.0 dropped backwards
compatibility. This commit adds only the necessary files without any
modifications, so it doesn't compile yet.
2015-09-25 03:11:48 +02:00
Tillmann Karras 3ae092a086 mbedTLS: delete PolarSSL 1.3 2015-09-24 18:31:33 +02:00
Shawn Hoffman 399083ac8a Drop the old msvcrt files. 2015-09-03 06:10:01 -07:00
Shawn Hoffman 92e9a84685 [windows/wxw] Exclude files which don't publish any symbols. 2015-09-03 04:39:04 -07:00
Shawn Hoffman dfc1f0a87e Patch wxw to compile on vs2015. 2015-09-03 04:38:58 -07:00
Shawn Hoffman 00afa2a328 Patch libusb to compile on vs2015. 2015-09-03 04:38:50 -07:00
Shawn Hoffman aa7208e270 [windows] Update projects to vs2015. 2015-09-03 04:23:01 -07:00
Jeffrey Pfau 67d0e81cf3 Externals: Update gtest to r733 2015-07-20 22:53:28 -07:00
comex 3243a21573 Update enet to latest master - 5f476546edabdf37509cd3448d1a616f5eca535d
Command I used, for posterity:

for fn in $(cd /usr/src/enet; echo **/*); do if [ -e $fn ]; then cp -a \
/usr/src/enet/$fn $fn; fi; done
2015-06-02 18:42:45 -04:00
Tillmann Karras 2742906015 Externals: add summary of licenses 2015-05-25 13:22:31 +02:00
Jules Blok 522e721830 OGL: Add glClipControl support. 2015-05-22 23:52:20 +02:00
Shawn Hoffman ad64336137 quiet some warnings which appear on vs2015.
quieted warnings include shadowed variable names and integer extensions.
2015-03-15 19:28:47 -07:00
Shawn Hoffman 64cb3bce35 windows: don't compile with openmp support 2015-03-15 13:48:46 -07:00
Shawn Hoffman 25064fd8f4 remove win32/mixed project configurations.
remove win32 configs from all the externals, so it shouldn't happen again by accident.
2015-03-14 14:07:21 -07:00
Tillmann Karras a5ea6c6e93 enet: fix Visual Studio files 2015-03-02 22:20:37 +01:00
Augustin Cavalier 54072b9c8a Make sure we unset the CMAKE_REQUIRED_LIBRARIES variable.
If we don't unset it, all the CMake checks will run with PortAudio
in the library list. This didn't affect those who had PortAudio,
but for select Debian systems without it, it breaks everything.
2015-02-27 20:00:02 +00:00
Augustin Cavalier f95c55f26c Enet: ensure CMAKE_REQUIRED_LIBRARIES is empty. 2015-02-26 23:06:58 -05:00
Ziek 779f275486 Added TraversalServer.cpp to Core/Common 2015-02-25 18:28:27 -08:00
Ziek 619a3a5171 Added all of enet lib, changed Cmake files accordingly 2015-02-25 18:28:27 -08:00
Ziek 3f367c22ee Adding enet library for future replacement of tcp 2015-02-25 18:17:49 -08:00
Shawn Hoffman f91e8e9423 make libusb vcxproj use standard dolphin template and don't compile strerror.c. 2015-02-18 13:29:39 -08:00
Shawn Hoffman 8645f33034 Revert "Externals: add Dolphin-specific patches to libusb"
This reverts commit 7a305bef86.
2015-02-18 13:23:37 -08:00