Commit Graph

762 Commits

Author SHA1 Message Date
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
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
mathieui 3b0f3cb4fe Externals: Clean up some unneeded files from libusb
And add a DOLPHIN file recapitulating the changes from upstream
2015-02-12 21:58:23 +01:00
Tillmann Karras 7a305bef86 Externals: add Dolphin-specific patches to libusb 2015-02-12 01:05:22 +01:00
Tillmann Karras 4fa38f0c02 Externals: update libusb to version 1.0.19 2015-02-12 01:04:43 +01:00
Pierre Bourdon 1e809d9c11 Revert "Merge pull request #1903 from RisingFog/libav"
This reverts commit 34079a0037, reversing
changes made to 3274df7158.
2015-01-26 02:35:29 +01:00
Fog a20b576d86 Remove un-needed files 2015-01-23 20:22:09 -05:00
Fog 6cad635bd8 Use ffmpeg for Windows Video Dumping instead of VFW 2015-01-21 19:47:45 -05:00
degasus 402fb4bd20 xxhash: Add cmake + VS files
Based on riking's PR.
2015-01-21 07:35:34 +01:00
degasus b1206ffbad Externals: add xxhash
Files are copied unmodified from https://code.google.com/p/xxhash/
2015-01-20 21:19:27 +01:00
Tillmann Karras 6bcdb10eee CMake: simplify some expressions 2015-01-03 13:17:57 +01:00
Shawn Hoffman 33634b6489 windows: use qt 5.4.0 2014-12-13 20:59:40 -08:00
James Cowgill a93f86330e Port dolphin to SFML 2.1 2014-11-25 16:44:38 +00:00
James Cowgill 11dbe6b6ce Update Externals/SFML to 2.1
- all files converted to unix line endings
- files from other subsystems and most of system have been removed
- include/SFML/System.hpp and include/SFML/Network.hpp modified to
  not include removed stuff
- IpAddress.*pp renamed to IPAddress.*pp to workaround git apply bug
  with case-only renames
2014-11-25 16:44:38 +00:00
Rohit Nirmal 6bd7b1a42a Compile external WX with C++11 if Linux.
Fixes PR #1545.
2014-11-17 22:58:29 +00:00
Rohit Nirmal 12b7600ae7 Explicitly compile external WX in C++11 mode.
Apparently an update to gcc now requires this.
2014-11-15 21:41:41 -06:00
Chris Ballinger ffe976659e Fix OpenGL linker error on OS X 2014-10-22 00:34:31 -07:00
Shawn Hoffman 035a1c0ec2 windows/qt: add (hopefully) all plugins DolphinQt should possibly need.
For now they are all copied to binary directory, once the project is more mature
it can be stripped down.
2014-09-18 15:24:14 -07:00
Shawn Hoffman 9d57ac68a4 Add Qt submodule for windows. 2014-09-15 15:07:42 -07:00
Augustin Cavalier 60ffe152de PolarSSL: don't install stuff.
Be a little more careful next time, @Sonicadvance1!
2014-09-14 14:21:04 -04:00
Fiora 1bd8d1ee98 Add immediate tests for WriteNormalOp
also fix a bug in Bochs that was preventing adc from passing.
2014-09-13 16:39:34 -07:00
Ryan Houdek a48e284317 Update external polarssl to 1.3.8
There were some fixes back on March 13th, 2014 for fixing compiling on MIPS64.
Also some fixes on June 25th, 2014 for SPARC64 fixes.

Probably more things, but those are what I care about.
2014-09-08 02:21:18 -05:00
Ryan Houdek 7a1eca149f Merge pull request #841 from AMDmi3/bundled-smfl-include-order
Place bundled SFML include paths before others
2014-09-06 02:17:37 -05:00
skidau ba2bec1c0a Updated SoundTouch library to 1.8.1 [r198] 2014-09-04 20:41:45 +10:00
skidau a148d31718 Update OpenAL-soft to 1.16.0 2014-09-03 19:48:54 +10:00
Shawn Hoffman 266992684d msvc: remove some remnants of SDL and DSound from projects and general cleanup. 2014-09-01 21:27:44 -07:00
Shawn Hoffman eb08fb5095 msvc: do not compile sample programs for miniupnpc and libpng. 2014-09-01 21:27:43 -07:00
comex 3ee1e5cbf0 Switch from disabling a laundry list of warnings for wxWidgets to just disabling everything, since they're almost certainly not our problem and I want to compile with -Werror. 2014-08-23 15:21:28 -04:00
Shawn Hoffman 1332805bb6 Add headers required by XAudio2_7 to externals.
This makes all builds' audio compatible with downlevel Windows and removes
the need for developers to install the June 2010 DirectX SDK.
2014-08-23 11:03:07 -07:00
Dmitry Marakasov 99df57a35e Place bundled SFML include paths before others
This allows to build with bundled SFML when system SFML (of another
version) is installed
2014-08-20 17:44:18 +04:00
Shawn Hoffman 317e63e7ba msvc: disable compiler warnings when building all Externals (cl /W0), except for wxWidgets, where all warnings are fixed.
Note warnings may still be generated by code in Externals if it is included into warning-enabled code (this is the case for libusb).
Also, quiet an intellisense warning in wxWidgets caused by using __w64 for an inapplicable type.
2014-08-19 22:33:42 -07:00
shuffle2 2270c3e90a Merge pull request #797 from shuffle2/msvc-pch
Windows: Use a shared precompiled header for dolphin code under Source/
2014-08-16 14:58:28 -07:00
Fiora 290643ad25 Externals: update Bochs to newer version
Should resolve the disassembler not handling all the opcodes Dolphin generates.
2014-08-15 00:44:37 -07:00
Shawn Hoffman f1b82a34b2 Windows: Use a shared precompiled header for dolphin code under Source/ 2014-08-14 23:51:13 -07:00
Lioncash 0718937237 Common: Introduce the new Gekko disassembler to Common.
This moves the Gekko disassembler to Common where it should be. Having it in the Bochs disassembly Externals is incorrect.

Unlike the PowerPC disassembler prior however, this one is updated to have an API that is more fitting for C++. e.g. Not needing to specify a string buffer and size. It does all of this under the hood.

This modifies all the DebuggingInterfaces as necessary to handle this.
2014-08-04 00:45:07 -04:00
Lioncash 8b13afbb8e Remove the 32-bit config platform from the VS solution and projects 2014-06-24 22:07:26 -04:00
lioncash efdcfe404f Fix a typo in a function prototype in PowerPCDisasm.h
Should be GetGPRName not GetGRPName.

Removed an unnecessary extern declaration of GetGRPName in RegisterWindow.cpp.

Also added GetFPRName to the PowerPCDisasm header for consistency.
2014-06-04 12:12:28 -04:00
Jordan Woyak 9af18d1b96 Remove SDL from Externals. 2014-05-04 19:41:02 -05:00
Pierre Bourdon 9ea845310d Unittests: Always use GTest from Externals (recommended way from GTest FAQ). 2014-03-03 03:38:46 +01:00
Tillmann Karras 15576287f8 CMake: remove USE_SHARED_POLARSSL_LIBRARY
This could easily be mistaken for a Dolphin option.
2014-02-24 21:10:33 +01:00
Tillmann Karras 33beaf20f3 PolarSSL: adapt Dolphin to new version
- strip down PolarSSL's CMakeLists.txt
- switch to the PolarSSL 1.3 API
- use entropy interface instead of havege (PolarSSL 1.3 has disabled
  havege by default because it is "considered unsafe for primary usage")
- add VS2013 .vcxproj file
2014-02-24 16:20:50 +01:00
Tillmann Karras d025d63fd6 PolarSSL: update to current stable version (1.3.4)
I just removed Externals/polarssl/, added the new version, then deleted
the following files/directories:

DartConfiguration.tcl
Makefile
doxygen/
library/Makefile
programs/
scripts/
tests/
visualc/
2014-02-24 16:20:48 +01:00
Ryan Houdek 95ab2380c9 [GLExtensions] wxWidgets expects to statically link in to GL 1.1 functions like any sane project. Let them do this. 2014-01-17 16:05:47 +01:00
Ryan Houdek 97dc20d1be [GLExtensions] Pull in all the function pointers for OpenGL 1.1, This removes the need for a couple compile time differences between GL and GLES3 mode. 2014-01-17 16:05:40 +01:00
Ryan Houdek 10bd61a9d2 [GLExtensions] Dynamically pull in the GL 1.3 and 1.4 functions as well. 2014-01-17 15:56:54 +01:00
Ryan Houdek 71681de81a [GLExtensions] Initial code drop for GLExtensions. This drops GLEW entirely from the codebase. This has been tested on Android and Linux+ATI. Of course untested on Windows and Apple. Also untested with Linux + EGL but should be fine there. There are most likely a couple of extensions I'm missing which would result in null pointer runs but not bad for the initial commit.
Conflicts:
	CMakeLists.txt
	Externals/GLew/glew.vcxproj
	Externals/GLew/glew.vcxproj.filters
	Source/Core/VideoBackends/OGL/CMakeLists.txt
	Source/Core/VideoBackends/OGL/GLFunctions.cpp
	Source/Core/VideoBackends/OGL/GLFunctions.h
	Source/Core/VideoBackends/OGL/GLUtil.h
	Source/Core/VideoBackends/OGL/Render.cpp
	Source/VSProps/Base.props
2014-01-17 15:50:51 +01:00
Jasper St. Pierre 43e618682e Convert all vcxproj files to UNIX line endings 2013-12-31 14:03:18 -05:00
Ryan Houdek d8b7f4d73f [Android] Support grabbing OpenGL extensions and a function for checking for support. 2013-12-28 01:08:52 -06:00
Ryan Houdek a87e0e7489 Remove our GLU dependency. Fix static zlib 2013-12-23 16:01:34 -07:00
waddlesplash 95a1465697 Fix the ZLib in Externals. The CMakeLists file looked like it was copy-pasted from ZLib itself. It didn't work for various reasons. 2013-12-17 19:34:04 -05:00
Ryan Houdek eb3b933dd0 Remove all instances of OpenCL in the Dolphin Project. A brief history of OpenCL in Dolphin. OpenCL was originally added to the Dolphin codebase 1 month after it was released with OS X Snow Leopard in 2009. OpenCL was one of the largest group projects that Dolphin ever has had. The OpenCL texture decoder was originally aded with version 1.0 of the OpenCL spec; This version didn't have the capability of a OpenCL-OpenGL interop which would allow for uploading textures once and have it decoded directly to a OpenGL texure. This was to be worked out when the OpenCL 1.1 spec was released and allowed the interop. This work has never been done, and no one in the team is willing to work on it for various reasons. OpenCL has had the unreasonable expectation that it increases the performance of video games that require a large amount of EFB copies like NSMBW. In reality, enabling OpenCL just put the graphics card in a higher power mode which increased the game speed. This is due to the unfortunate effect of Dolphin tending to not push GPUs out of their lower frequency power savings modes. Thanks to everyone that had contributed to the OpenCL texture decoder. 2013-12-11 15:15:55 -06:00
comex 60818222e4 Disable a certain clang warning for libpng. 2013-12-08 15:43:23 -05:00
comex 1334d7fc41 Update wx to r75363 to address a wx bug that was breaking netplay on OS X. 2013-12-08 15:37:10 -05:00
Ryan Houdek 3e6e997e8b Fix OS X wxWidgets complaining. 2013-11-15 01:15:44 +00:00
Shawn Hoffman f4056978c8 [windows] update SDL-2.0.0 to 2.0.1. Fixes issue 6793. 2013-11-04 23:50:52 -08:00
comex 3f1ea21e4f Fix warnings. 2013-11-03 20:54:06 -05:00
Matthew Parlane dab9af43a4 [Windows] Add missing dlls and enable OpenMP support. 2013-11-03 11:54:45 +13:00
Shawn Hoffman ccd30024b3 Update to VS2013 and a slew of build-related updates. Notes:
* Currently there is no DEBUGFAST configuration. Defining DEBUGFAST as a preprocessor definition in Base.props (or a global header) enables it for now, pending a better method. This was done to make managing the build harder to screw up. However it may not even be an issue anymore with the new .props usage.
* D3DX11SaveTextureToFile usage is dropped and not replaced.
* If you have $(DXSDK_DIR) in your global property sheets (Microsoft.Cpp.$(PlatformName).user), you need to remove it. The build will error out with a message if it's configured incorrectly.
* If you are on Windows 8 or above, you no longer need the June 2010 DirectX SDK installed to build dolphin. If you are in this situation, it is still required if you want your built binaries to be able to use XAudio2 and XInput on previous Windows versions.
* GLew updated to 1.10.0
* compiler switches added: /volatile:iso, /d2Zi+
* LTCG available via msbuild property: DolphinRelease
* SDL updated to 2.0.0
* All Externals (excl. OpenAL and SDL) are built from source.
* Now uses STL version of std::{mutex,condition_variable,thread}
* Now uses Build as root directory for *all* intermediate files
* Binary directory is populated as post-build msbuild action
* .gitignore is simplified
* UnitTests project is no longer compiled
2013-10-26 17:55:38 -07:00
comex a9908fdf09 Fix build issues on OS X i386. 2013-10-07 02:16:51 -04:00
Matthew Parlane d261dfaf46 Upgrade libusb to 1.0.16 2013-09-30 18:36:54 +13:00
comex 18abc33306 2x banner images! 2013-09-25 03:06:27 -04:00
comex 693cee36cb Hack up wx to support @2x images in the toolbar. Oh please let's switch to Qt... 2013-09-25 02:03:32 -04:00
comex a38821fc38 Comment out wx change to set WS_POPUP.
Fixes issue 6651, apparently.  We don't use wxGLCanvas, so the line
isn't necessary in the first place.
2013-09-24 22:48:31 -04:00
comex 54c3b8d357 Reapply shuffle2's patch.
This is a wx bug:
http://trac.wxwidgets.org/ticket/13933
2013-09-23 02:58:04 -04:00
comex 66ed9a1804 Upgrade WX to r74856, mainly to support @2x. 2013-09-23 02:58:04 -04:00
comex cf4d015b2a Don't disable SO_REUSEADDR on non-Windows, where it is safe. 2013-09-22 16:11:43 -04:00
Ryan Houdek 6340ad68be Merge branch 'GLES3-FSAA' 2013-09-22 10:00:51 -05:00
Ryan Houdek 91619e28b8 Pull in the glRenderbufferStorageMultisample function pointer at run time. 2013-09-22 09:10:47 -05:00
Pierre Bourdon 323ecdb772 Ship vcomp100.dll with Dolphin 2013-09-22 16:00:56 +02:00
Matthew Parlane 6dc16a59f8 Made defaults "explicitly defaulted" for PolarSSL Fixes issue 6601 2013-09-15 11:13:06 +12:00
Jordan Woyak 0fc1ca0169 Make Bochs_disasm not depend on Common. 2013-09-12 12:26:59 -05:00
Ryan Houdek 160d72a9ae [Android] Add in a static libiconv library so non English games don't crash Dolphin Mobile. 2013-08-29 04:43:31 -05:00
Matthew Parlane d3bc69fe20 Remove ltcg from polarssl. 2013-08-26 23:26:11 +12:00
Matthew Parlane 72e0423f8b Fix debug builds. Sorry. 2013-08-25 13:39:30 +12:00
Matthew Parlane 5548e77438 Merge branch 'master' into wii-network 2013-08-24 23:56:31 +12:00
Matthew Parlane b6e054a2be Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/Core.vcxproj
	Source/Core/Core/Core.vcxproj.filters
	Source/Core/Core/Src/CoreParameter.cpp
	Source/Core/DolphinWX/Dolphin.vcxproj
	Source/Core/DolphinWX/Dolphin.vcxproj.filters
2013-08-23 00:51:12 +12:00
skidau 5cec914484 Changed the default audio latency to 2. Made soft_oal.dll the default on Windows builds as the old OpenAL32.dll is outdated and contains bugs. 2013-08-18 17:03:21 +10:00
Matthew Parlane 4ac0fb0a3e Remove unneeded polarssl files. 2013-08-16 21:36:36 +12:00
Matthew Parlane 9de7611ff9 Merge branch 'master' into wii-network
Conflicts:
	CMakeLists.txt
	Source/Core/Core/Core.vcxproj
	Source/Core/DolphinWX/Dolphin.vcxproj
	Source/Core/DolphinWX/Dolphin.vcxproj.filters
	Source/Dolphin_2010.sln
	Source/VSProps/Dolphin.Win32.props
	Source/VSProps/Dolphin.x64.props
2013-08-16 19:17:07 +12:00
Matthew Parlane d8b39b9dcf Support PolarSSL on *nix
Removed unneeded PolarSSL directories.
Remove duplicate sha1 and md5 files.
Define out SSL test file writing.
Fix format string bug and warning.
2013-08-15 23:36:17 +12:00
Matthew Parlane e1f8146d96 Use explicit output dir for PolarSSL 2013-08-15 21:53:52 +12:00
Matthew Parlane b93d62dcb8 Remove LTCG and platform toolset, fix code style. 2013-08-15 21:43:43 +12:00
Matthew Parlane fede38985e Replace OpenSSL with PolarSSL
Works on windows, not yet cmake.
2013-08-15 20:47:47 +12:00
Ryan Houdek a9ebd7d3e5 Fix Android Build. 2013-07-26 15:02:03 +00:00
Jasper St. Pierre 3b29320113 wx: Prevent warnings when compiling with recent versions of g++
g++ tends to think this is a string literal instead of concatenation.
2013-07-21 17:56:20 -04:00
Ryan Houdek ea146627e6 [Android] Enable OpenGL ES 3 by default. Add in a modified GLES3/gl3.h header for supporting it. 2013-07-13 18:42:04 -05:00
John Chadwick 16cd26d177 Add UPnP support.
Feedback is in logs as suggested by skid_au. The checkbox is still there, but
mostly for people who would like to opt out (unfortunately, I can not be sure
how this feature may behave for some routers - there's a hell of a lot of bad
UPnP implementations.)

The Visual Studio stuff is a little messy, so I apologize if anything is a bit
off. I tested most configurations and it worked.

I also tested CMake on Debian Wheezy, Ubuntu Saucy, and Mac OS X Mountain Lion.
All seemed to be OK.
2013-07-09 18:08:43 -04:00
Jasper St. Pierre 7493f19cda Squash warnings from wx
See: http://trac.wxwidgets.org/ticket/15137
2013-07-05 22:13:11 -04:00
Tetsuo55 0c9c3c9737 forgot to add free() to the previous malloc change 2013-06-23 00:14:45 +02:00
Tetsuo55 02351b77f9 replace alloca with malloc to fix windows builds 2013-06-22 22:44:27 +02:00
Tetsuo55 1bd80d781c fix deb-x64 and osx-x64 builds after soundtouch update 2013-06-22 21:51:11 +02:00
Tetsuo55 d8f5ecf3ce update soundtouch to svn revision 173 2013-06-22 20:19:27 +02:00
Tetsuo55 88d1195f93 update zlib to v1.2.8 2013-06-22 17:39:46 +02:00
Ryan Houdek 2b9f79dff3 [Android] Remove SimonVT menudrawer library. Move to Google's support library for their navigation drawer support. Overall cleanup. 2013-06-22 07:45:05 -05:00
calc84maniac a031351eb2 Use SOUNDTOUCH_INTEGER_SAMPLES only on Android build. Some audio backends (i.e. OpenAL) only support floating-point samples. 2013-05-07 23:22:28 -04:00
Matthew Parlane e98069b647 Merge branch 'master' into wii-network 2013-04-25 01:13:14 +12:00
Ryan Houdek 453fdff4bd Add SimonVT's android-menudrawer. This will be used in the menu interface for Dolphin Android. 2013-04-23 14:27:49 -05:00
Matthew Parlane 934e150596 Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/Src/Boot/Boot_BS2Emu.cpp
	Source/Core/Core/Src/ConfigManager.cpp
	Source/Core/Core/Src/HLE/HLE_OS.h
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.h
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net.h
2013-04-24 00:48:00 +12:00
Ryan Houdek 75efe7d315 Update libpng to 1.2.50 so it can be built with Clang 3.2 2013-04-18 22:11:07 -05:00
Matthew Parlane 0c9d8d34e1 Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/CMakeLists.txt
2013-04-11 19:55:36 +12:00
Pierre Bourdon 4895e38bd5 This change might work better if I git add the files 2013-03-29 07:31:15 -07:00
skidau 7784fa4c67 Merge branch 'master' into wii-network
# By Ryan Houdek (185) and others
# Via degasus (12) and others
* master: (625 commits)
  Revert "Don't open/close file for every file operation." as it was crashing PokePark in Windows builds.
  Array overrun fixed in VertexShaderCache for the DX11 plugin.
  Fixed DSPTool build.
  Windows build fix
  Go back to assuming every HID device is a wiimote on Windows. Fixed issue 6117. Unfixed issue 6031.
  VideoSoftware: Improve fog range adjustment by using less magic and more comments.
  revert RasterFont for VideoSoftware
  ogl: fix virtual xfb
  Windows build fix from web interface...
  Adjusted the audio loop criteria, using >= on the Wii and == on GC.  This fixes the audio static that occurred in Wii games after hours of play.
  Forced the exception check only for ARAM DMA transfers. Removed the Eternal Darkness boot hack and replaced it with an exception check.
  VideoSoftware: Implement fog range adjustment, fixing issue 6147.
  implement 4xSSAA for OGL
  move ogl-only settings into backend
  Fix description of disable fog, and move it to enhancements tab.
  Reverted rd76ca5783743 as it was made obsolete by r1d550f4496e4.
  Removed the tracking of the FIFO Writes as it was made obsolete by r1d550f4496e4.
  Forced the external exception check to occur sooner by changing the downcount.
  Mark the Direct3D9 backend deprecated.
  Prefer D3D11 and OpenGL over D3D9 by default.
  ...

Conflicts:
	CMakeLists.txt
	Source/Core/Common/Common.vcxproj.filters
	Source/Core/Common/Src/CommonPaths.h
	Source/Core/Core/Core.vcxproj.filters
	Source/Core/Core/Src/Core.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_FileIO.cpp
	Source/VSProps/Dolphin.Win32.props
	Source/VSProps/Dolphin.x64.props
2013-03-27 13:19:23 +11:00
Ryan Houdek 8c1091a21f Merge branch 'master' into GLSL-master
Conflicts:
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
	Source/Plugins/Plugin_VideoDX11/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoDX9/Src/VertexManager.cpp
2013-03-15 11:19:52 -05:00
skidau 808eaf7c49 Fixed the Windows 32bit debug build. 2013-03-14 22:18:13 +11:00
degasus a1c5e90083 Merge branch 'master' into GLSL-master
Conflicts:
	CMakeLists.txt
	Source/Core/DolphinWX/CMakeLists.txt
	Source/Core/DolphinWX/Src/GLInterface.h
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
	Source/Core/VideoCommon/Src/TextureCacheBase.cpp
	Source/Core/VideoCommon/Src/VertexManagerBase.cpp
	Source/Plugins/Plugin_VideoDX11/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoDX9/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcxproj
	Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcxproj.filters
	Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h
	Source/Plugins/Plugin_VideoOGL/Src/PixelShaderCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoOGL/Src/VertexShaderCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/main.cpp
2013-03-06 15:59:29 +01:00
Ryan Houdek 0bd218ea8e Update CLRun to have OCL 1.2 2013-02-23 01:47:37 -05:00
degasus f677b8cba3 update to glew1.9, win binaries also from official release 2013-02-04 21:11:12 +01:00
Matthew Parlane ca4ea817e0 Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Common/Src/CommonPaths.h
	Source/Core/Common/Src/FileUtil.h
	Source/Core/Core/Src/HLE/HLE.cpp
	Source/Core/Core/Src/PowerPC/Interpreter/Interpreter.cpp
2013-01-26 21:46:12 +13:00
degasus e0ffdda26e Merge branch 'immediate-removal' into GLSL-master
Conflicts:
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
	Source/Plugins/Plugin_VideoSoftware/Src/SWRenderer.cpp

immediate-removal is a new created branch seperated from master but reverted the revert of immediate-removal
so we get less conflicts by merging
2013-01-24 16:58:28 +01:00
skidau 6d4a566bc4 Changed SoundTouch to use float samples, allowing SSE to be used.
Made the DPL2 decoder disabled by default.
Re-added the audio hack used by the Accurate VBeam emulation option.
2013-01-15 22:29:26 +11:00
Matthew Parlane 9754fda516 Merge branch 'wii-usb' into temp merge branch
Conflicts:
	Source/Core/Common/Src/Log.h
	Source/Core/Core/Core.vcxproj
	Source/Core/Core/Core.vcxproj.filters
	Source/VSProps/Dolphin.Win32.props
	Source/VSProps/Dolphin.x64.props
2013-01-11 23:07:12 +13:00
skidau 80f4475e76 Added a Dolby Pro Logic II (DPL2) decoder in the OpenAL backend. DPL2 audio is decoded to 5.1. Code adapted from ffdshow.
Added an option in the DSP settings to disable the DPL2 decoder in case Dolphin incorrectly detects a 5.1 audio system.
Updated the OpenAL files to OpenAL Soft 1.15.1 in the Windows build.

Fixes issue 3023.
2013-01-11 14:03:09 +11:00
Ryan Houdek 01f4d9f386 Fix include paths and compiling in Linux. Externals soundtouch is 1.7.1, while Ubuntu 12.10 is 1.6.x. Externals soundtouch is compiled with integer samples, while ubuntu is compiled with float samples. Float samples is probably the more common route. If you're going to use soundtouch, you should probably use SAMPLETYPE instead of explicitly choosing short. This probably breaks the windows build since its includes aren't setup. 2013-01-09 10:26:12 -06:00
skidau 7600cf106b OSX: typedef signed char BOOL 2013-01-10 00:24:42 +11:00
skidau 8494a439c7 OSX build fix 2013-01-10 00:06:35 +11:00
skidau 91fe5cc821 Build fix
Added SoundTouch as a dependency of AudioCommon.
Removed the "soundtouch_config.h" include on Linux and OSX.
2013-01-09 23:45:13 +11:00
skidau 63b38be97c Added audio time stretching by using the SoundTouch library. 2013-01-09 22:57:32 +11:00
skidau 6df1dacca8 OpenAL for Windows initial commit 2013-01-07 12:16:04 +11:00