Commit Graph

687 Commits

Author SHA1 Message Date
Shawn Hoffman ddae5058e9 msbuild: increment other version numbers to vs2017 equivalents 2017-06-03 18:20:39 -07:00
Arkadiy Shapkin dda7e2cc2c VS2015/2017 build fix and enable C++11 features
Patch by KindDragon from google/googletest#811
2017-05-28 13:37:33 +02:00
BhaaL 072c161445 upgrade to Windows SDK 10.0.15063.0
this is required for /permissive- to work, because some headers in the
Windows SDK use Microsoft extensions that are not allowed in standards mode
2017-05-28 13:37:31 +02:00
Michael Maltese 34ad1eb547 Externals: remove PortAudio 2017-05-27 18:28:57 -07:00
Michael Maltese 17f4413143 Externals/cubeb: add Visual Studio build files 2017-05-27 18:28:56 -07:00
Michael Maltese 812520cc65 Add cubeb@62871b2 to Externals/
Includes submodule sanitizers-cmake@f09151b
2017-05-27 18:28:56 -07:00
shuffle2 d4faa099d9 Merge pull request #5481 from ligfx/updateqt5.8
Update ext-win-qt submodule for Qt 5.8
2017-05-27 17:59:46 -07:00
Michael Maltese abaec0be8f Remove reference to d3dx12 license 2017-05-26 01:16:04 -07:00
Michael Maltese 00761a39c4 Remove Externals/d3dx12 2017-05-26 01:16:04 -07:00
Michael Maltese 07a23f6924 Update ext-win-qt submodule for Qt 5.8
Accompanying PR for https://github.com/dolphin-emu/ext-win-qt/pull/3
2017-05-26 01:00:15 -07:00
Pierre Bourdon d592bdd4d4 Migrate to Visual Studio 2017.
Auto-generated by the IDE, I'll trust it knows what it's doing.
2017-05-25 15:58:59 -07:00
Tao Schreiner 100420f4d1 Update libpng to 1.6.29 2017-05-21 22:42:04 +02:00
Tao Schreiner b3c26b6ec4 Update zlib to 1.2.11 2017-05-18 19:49:06 +02:00
Mat M f3052b7a15 Merge pull request #5318 from ligfx/cmakehidapi
CMake: clean up HIDAPI build
2017-05-03 19:54:06 -04:00
Michael Maltese 537fbf33a7 Remove HIDAPI Autotools build system and unused files 2017-04-27 02:41:00 -07:00
Michael Maltese 655ab9b4e2 CMake: clean up HIDAPI build 2017-04-27 02:41:00 -07:00
Michael Maltese 6e1940c404 CMake: don't globally include wxWidgets headers 2017-04-25 17:18:20 -07:00
Michael Maltese f4c0723387 CMake: move wxWidgets check_lib code into wxWidgets 2017-04-25 17:18:20 -07:00
Michael Maltese 6197d9622f CMake: move GTK+ check into wxWidgets 2017-04-25 17:18:20 -07:00
Michael Maltese 8e7648f42a CMake: modern-ize wxWidgets 2017-04-25 17:18:18 -07:00
MerryMage 8ff26a6eda soundtouch: Use shorts instead of floats for samples 2017-04-12 13:15:00 +01:00
Augustin Cavalier 0831dad467 Initial support for Haiku. 2017-03-27 23:46:19 -04:00
Chris Burgener 9b1165acf6 Update Windows ffmpeg to 3.2.4 2017-02-28 12:29:45 -05:00
Ryan Houdek 77c7fa836f Add the cpp-optparse project to Externals.
From https://github.com/weisslj/cpp-argparse
2017-02-16 14:09:13 +01:00
Léo Lam b8dd3e690f Externals: Update mbedtls to 2.4.1
The latest version has tons of security fixes (which is expected for a
library such as mbedtls).

Updating also allows getting rid of a few deprecation warnings.
2017-02-12 10:29:02 +01:00
Michael Maltese 68dfff5798 CMake/Libusb: compile libusb/os/windows_usbdk.c 2017-02-10 16:24:16 -08:00
Sameeh Jubran 2571eb16ff Only use usbdk when installed
Check UsbDK availability at run time and activate UsbDk backend when
possible.

Fall back to current behavior when UsbDK not installed.

Signed-off-by: Dmitry Fleytman <dfleytma@...>
Signed-off-by: Sameeh Jubran <sameeh@...>
2017-02-10 13:12:41 +01:00
Matthew Parlane d244597b42 Merge pull request #4408 from leoetlino/usb
IOS: USB support (OH0, USB_VEN, USB_HID)
2017-02-07 09:17:05 +13:00
Florent Castelli 5984ca26f3 wx: Move platform defines to wx setup header
Usually, this is passed as a preprocessor definition, but this is error
prone and just complicating the compiler invocation for no good reason.
2017-02-06 04:27:06 +01:00
Léo Lam 56fec3d72a Switch to the usbdk backend for libusb on Windows
The usbdk backend is the only libusb backend that has official support
for isochronous transfers (which are required for Wii Speak,
microphones and cameras). And it's actively developed and maintained.
2017-02-05 11:36:49 +01:00
Florent Castelli 049446d9bb cmake: Properly link against pthread on Linux using CMake's detection 2017-02-04 03:38:20 +01:00
Mat M a3ba169e7d Merge pull request #4809 from Orphis/cmake_windows
CMake for Windows: getting a working binary!
2017-02-03 08:33:13 -05:00
Florent Castelli 12dd45266e portaudio: Remove unwanted shared portaudio library 2017-02-03 05:11:41 +01:00
Florent Castelli 3842a9b71c OpenAL: Move Windows binaries to lib folder and fix CMake detection
The module FindOpenAL is looking for the dll in a folder called lib, not x64.
This is only used on Windows x64, it's fine to remove the platform name.
2017-02-03 04:54:54 +01:00
Florent Castelli 0d73f3e3b3 mbedtls: Remove unwanted "lib" target 2017-02-03 04:24:45 +01:00
Florent Castelli e5f576f862 gtest: Update to latest version from git 2017-01-26 03:14:08 +01:00
Markus Wick eed64bb0fe Merge pull request #4744 from ligfx/cleanup-osx-cmake
CMake: Cleanup macOS-related logic
2017-01-24 14:36:10 +01:00
Michael Maltese 4cbd07b81f CMake: remove unneeded macOS frameworks 2017-01-24 01:27:41 -08:00
Florent Castelli 803ea7b143 cmake: Fix curl build for Windows 2017-01-24 05:48:08 +01:00
Florent Castelli 7fe8395c33 cmake: Move listctrl in wxWidgts to platform specific generic 2017-01-24 03:22:03 +01:00
Florent Castelli fa04c1479e cmake: Remove PCH support
Compilers are very picky and don't use PCH when they have been compiled
with different flags. I even got some ICE in MSVC, so removing them for now.

Modules are the solution.
2017-01-24 03:22:03 +01:00
Matthew Parlane 7ebfd357b5 Merge pull request #4699 from Orphis/cmake_cleanup
CMake cleanup (but wait, there's more!)
2017-01-21 16:38:09 +13:00
Florent Castelli c3e876b6be cmake: Fix building wxWidgets on Windows
And disable unused network functions.
2017-01-21 03:25:58 +01:00
Matthew Parlane accf18431f Merge pull request #4694 from ligfx/update_portaudio
PortAudio: Update to v190600_20161030
2017-01-21 14:55:21 +13:00
Florent Castelli 796ca00f3c cmake: Don't add GCC flag to MSVC in libpng 2017-01-21 02:44:18 +01:00
Michael Maltese 69be0705d9 PortAudio/MSBuild: remove now-unused definitions
- The `PA_USE_{ASIO,WMME,...}` macros are no longer used, instead do
feature selection by compiling only the backends wanted.
- The `PA_WDMKS_NO_KSGUID_LIB` macro has been obviated along with the
link to ksguid.lib.
2017-01-20 15:40:21 -08:00
Michael Maltese 3dc7d18775 PortAudio: Update to v190600_20161030 2017-01-20 15:40:21 -08:00
Florent Castelli 08d6a24bbc cmake: Build HIDAPI on Windows 2017-01-21 00:34:02 +01:00
Florent Castelli a7376266b3 cmake: Fix libusb on Windows and make it static 2017-01-20 17:51:29 +01:00
Florent Castelli 9e451d601c cmake: Fix glslang on Windows 2017-01-20 17:51:29 +01:00
Florent Castelli b670f434b2 cmake: Fix bochs disasm on Windows 2017-01-20 17:51:29 +01:00
sephiroth99 2616192af3 Fix possible undefined reference when linking libusb from externals
When on Linux and using libusb from Externals, and with libudev
available, an "undefined reference" error message appears at link time.
This is due to a wrong define being set in CMake for libusb with
libudev. This causes the code for netlink being used instead of the
correct code for libudev support.

Fix the issue by setting the correct define so the correct libusb code
is used.
2017-01-09 22:48:59 -05:00
Léo Lam 04db41adf3 Externals: Update libusb to version 1.0.21
1.0.21 adds a usbdk backend, which may be helpful as it could be
used in the future to work around the missing isochronous transfer
support for WinUSB backends.

Here is the full changelog (from libusb).

2016-10-01: v1.0.21:
* Core: Refactor code related to transfer flags and timeout handling
* Darwin: Ignore root hub simulation devices
* Darwin: Improved support for OS X El Capitan
* Darwin: Work around devices with buggy endpoint descriptors
* Darwin: Do not use objc_registerThreadWithCollector after its deprecation
* Darwin: Use C11 atomics on 10.12+ as the OS atomics are now deprecated
* Linux: Support preallocating kernel memory for zerocopy USB
* Linux: Deal with receiving POLLERR before all transfers have completed
* Solaris: Add solaris backend
* Windows: Add Visual Studio 2015 support
* Windows: Add usbdk backend
* Prevent attempts to recursively handle events
* Fix race condition in handle_timeout()
* Allow transferred argument to be optional in bulk APIs
* Various other bug fixes and improvements
2016-11-20 18:11:42 +01:00
Lioncash 65a8b999b4 wxWidgets (gtk): Patch that allows label switching to work for wxToolBar
This applies a patch that was merged into the mainline wxWidgets tree to
support label changing with wxToolBar. This originally only worked on
Windows and macOS, which is kind of annoying.

This is beneficial because it means that a tool doesn't have to be removed
and then reinserted into a wxToolBar instance in order to change the
label.

For more details, see ticket #17567 on the wxWidgets issue tracker.
2016-10-29 02:49:45 -04:00
Vincent Duvert 671fdb8acf wxWidgets: Fix build on case-sensitive macOS
On macOS, wxWidget’s tooltip.mm tries to include a system header with an improper capitalization (Appkit instead of AppKit), which causes the build to fail if the system headers are located on a case-sensitive filesystem.
2016-10-16 11:42:41 +02:00
EmptyChaos 9df8388900 WXMSW-Patch: Fix wxTipWindow internal assertion failure. 2016-10-04 13:47:21 +11:00
shuffle2 be6aeaad33 Merge pull request #4150 from Pringo/master
Externals: Update libusb to version 1.0.20
2016-10-03 14:32:26 -07:00
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
Pringo ca1c77bbf6 Patch libusb to compile on vs2015. 2016-08-25 19:05:03 -07:00
Pringo 4aea898d53 Externals: Update libusb to version 1.0.20 2016-08-25 18:27:40 -07: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