Commit graph

922 commits

Author SHA1 Message Date
OatmealDome
f1f0853659 MoltenVK: Move version into a variable 2021-11-13 15:56:12 -08:00
OatmealDome
2209dc0355 MoltenVK: Use an external project instead of a pre-compiled dylib
Also, update MoltenVK to match Vulkan SDK 1.2.189.
2021-11-13 11:43:23 -08:00
Pokechu22
8b5c04de7b Externals/discord-rpc: Fix reference to discord_register.h 2021-10-29 12:14:05 -07:00
Pokechu22
db54e4f2b0 Externals: Update imgui to 1.85 2021-10-26 15:07:57 -07:00
Shawn Hoffman
2200658814 update mgba submodule 2021-10-04 06:18:06 -07:00
OatmealDome
b9ad174606 hidapi: Add new patches to applied patches folder 2021-08-09 21:34:02 -04:00
OatmealDome
25c85d827a hidapi: Don't leak device handle in macOS 10.10 or newer
Ported from libusb's hidapi fork. Original patch by Youw (cdc473dfe43f6432dda7ad53d7656b8ae8ff968b).
2021-08-09 21:24:10 -04:00
OatmealDome
b24599cf5b hidapi: Stop current run loop in removal callback instead of fetching from context 2021-08-09 21:15:17 -04:00
Shawn Hoffman
0e41cf392f msbuild: reduce number of cl batches for mgba 2021-07-21 04:51:41 -07:00
Bonta
44aaf108d1 Externals: Integrate mGBA as a submodule 2021-07-13 16:39:29 +02:00
Skyler Saleh
bcb3c7d80f Apple M1: Update MoltenVK
- Updated MoltenVK library in external to 1.2.170.0 (fixes swapchain crash)
2021-05-22 15:25:18 -07:00
Skyler Saleh
4ecb3084b7 Apple M1 Support for MacOS
This commit adds support for compiling Dolphin for ARM on MacOS so that it can
run natively on the M1 processors without running through Rosseta2 emulation
providing a 30-50% performance speedup and less hitches from Rosseta2.

It consists of several key changes:

- Adding support for W^X allocation(MAP_JIT) for the ARM JIT
- Adding the machine context and config info to identify the M1 processor
- Additions to the build system and docs to support building universal binaries
- Adding code signing entitlements to access the MAP_JIT functionality
- Updating the MoltenVK libvulkan.dylib to a newer version with M1 support
2021-05-22 15:25:17 -07:00
Léo Lam
6036680376
hidapi: Use LIBUSB_LIBRARIES to link to libusb
Because we have an old-style find script that does not define a proper
CMake target for libusb, we need to use ${LIBUSB_LIBRARIES}
rather than "usb".

Ideally, we would fix the find script to define a target. However,
this issue breaks the fifoci-ogl-lin-mesa builder and I'd prefer it
to be fixed sooner rather than later.
2021-02-11 21:58:15 +01:00
Sergei Trofimovich
8cfc41fb3b Externals/rangeset: use qualified 'size_t'
On clang-11 build failed as:

```
[ 42%] Building CXX object Source/Core/Core/CMakeFiles/core.dir/PowerPC/Jit64/Jit.cpp.o
In file included from ../../../../Source/Core/Core/PowerPC/Jit64/Jit.cpp:5:
In file included from ../../../../Source/Core/Core/PowerPC/Jit64/Jit.h:21:
../../../../Externals/rangeset/include/rangeset/rangesizeset.h:325:3: error: unknown type name 'size_t'; did you mean 'std::size_t'?
  size_t size() const {
  ^
```

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
2021-01-28 20:20:43 +00:00
Shawn Hoffman
500a694ca8 msbuild: bundle all dolphin "core" code into single library 2021-01-27 14:29:49 -08:00
Léo Lam
9069ad6cce
Merge pull request #9420 from MerryMage/ext
Externals: Link against required libraries
2021-01-05 15:15:15 +01:00
MerryMage
14c03388b3 Externals: Link against required libraries
* curl requires zlib
* hidapi when not using libudev requires libusb
2021-01-03 14:26:38 +00:00
Jordan Woyak
1699afff87 CMake: Update cmake_minimum_required calls using versions less than 2.8.12. CMake warns support will be removed in a future version. 2020-12-27 14:51:04 -06:00
Admiral H. Curtiss
3d8736f9d7 Update bundled libpng to version 1.6.37 2020-12-13 02:50:12 +01:00
Dentomologist
6136ac82b9 Fix liblzma config on macOS
/Externals/liblzma/config.h #defines HAVE_PTHREAD_CONDATTR_SETCLOCK
which results in /Externals/liblzma/tuklib/mythread.h calling the
function pthread_condattr_setclock.  This function doesn't exist in
macOS 10.12+, which are the only macOS versions Dolphin supports, but
inserting an include guard makes macOS use an alternate function.
2020-11-28 05:51:45 -08:00
Noah Santschi-Cooney
4d26f6ad95
Fixed non-UTF8 chars in PeakFinder.cpp 2020-11-18 19:50:40 +00:00
Lioncash
369a9e01dc Externals: Update fmt to 7.1.0
Updates fmt to the latest release from 6.1.2
2020-10-27 11:36:47 -04:00
Léo Lam
08f9ed043b
Merge pull request #8846 from nyanpasu64/fix-cmake-zlib
Fix Windows CMake builds with shared zlib
2020-10-22 01:11:27 +02:00
LC
5722c680a4
Merge pull request #8006 from JosJuice/qt-rtl
DolphinQt: Enable RTL layout
2020-10-19 07:46:40 -04:00
Stenzek
9649d13462 Externals: Update MoltenVK to v1.1 2020-10-02 22:47:51 +10:00
Admiral H. Curtiss
fdab9783c7 Externals: Add rangeset. 2020-08-24 19:31:32 +02:00
Shawn Hoffman
03a263db20 msbuild: fixup linking of discord-rpc 2020-08-22 16:17:50 -07:00
Shawn Hoffman
2f47f486af msbuild: re-enable standalone vcxproj processing 2020-08-22 16:17:50 -07:00
Shawn Hoffman
390f509bbf windows: disable C4200 directly in libusb.h 2020-08-22 16:17:50 -07:00
Shawn Hoffman
7705f7c1a3 msbuild: refactor stuff out of project files (for externals) 2020-08-22 16:17:50 -07:00
Admiral H. Curtiss
f859da112e Update Windows build to use Qt 5.15.0. 2020-08-22 20:08:38 +02:00
Shawn Hoffman
adf22c0728 vs/msbuild: fix the build generating log files in source dirs 2020-08-16 00:01:22 -07:00
R2DLiu
7bf9feae0f For windows cmake builds, build curl with schannel/winssl capability 2020-07-28 17:40:41 -04:00
nyanpasu64
1a2b6ca2d6 Fix Windows CMake builds with shared zlib
On Linux, if shared zlib is present, zlib.h is always available and -lz
links to zlib, even if you don't run find_package(ZLIB).

For some reason I have zlib installed on Windows (possibly from vcpkg),
so find_package(ZLIB) succeeds and ZLIB_FOUND is true.
When Dolphin uses shared zlib on Windows, the problem is that zlib.h
is not in the default include path, and the CMake target is called
ZLIB::ZLIB and there's neither a target nor a library called z.

However, both find_package(ZLIB) and add_subdirectory(Externals/zlib)
create a target called ZLIB::ZLIB, so I'll switch to that instead.
Hopefully this change doesn't break anyone's build.
2020-07-15 23:25:18 -07:00
Tillmann Karras
506ae2f6b1 Externals/zstd: fix CMake project name 2020-06-16 19:42:55 +01:00
JosJuice
19ce87fa63 Externals: Update msgfmt.exe to 0.20.2
Needed for the next commit. Downloaded from
https://mlocati.github.io/articles/gettext-iconv-windows.html
2020-06-02 22:23:05 +02:00
orbea
ba2d04b793 Externals: Fix build failures with the newer glslang.
v2: Don't include glslang project wide.
2020-05-30 18:54:21 -07:00
orbea
690dee3533 Externals: Update glslang.
This updates glslang to commit 4fc7a33910fb8e40b970d160e1b38ab3f67fe0f3
which is the current version listed in the known_good.json file for the
version 1.2.131.2 of the Vulkan-ValidationLayers repo.
2020-05-30 18:06:03 -07:00
Tillmann Karras
8b23170f13 Externals/licenses: add bzip2 link and update googletest 2020-05-18 00:15:39 +01:00
JosJuice
d7389dc287 Add bzip2, liblzma, zstd to Externals/licenses.md 2020-05-13 21:08:08 +02:00
JosJuice
2137fb7813 Externals: Add zstd
I had to rename Source/Common/Compiler.h because the VS build
confuses it with Externals/zstd/lib/common/compiler.h otherwise.
2020-05-13 20:53:10 +02:00
degasus
9fd03cda9d Externals: Add libLZMA. 2020-04-24 15:18:09 +02:00
degasus
4385afdb0a Externals: Add bzip2. 2020-04-24 15:18:09 +02:00
Stenzek
52d4756679 Externals: Update MoltenVK to SDK version 1.2.131.2 2020-04-07 18:53:26 +10:00
Léo Lam
5038ae384b
Merge pull request #8427 from CookiePLMonster/wil-submodule
Add Windows Implementation Libraries as an external library
2020-03-15 23:28:53 +01:00
spycrab
6a3bd259a7 Update to Qt 5.14.1 2020-02-09 22:30:57 +01:00
Silent
f52a0aba24
Add Windows Implementation Libraries 2020-02-09 19:01:44 +01:00
Lioncash
1873b7a398 Externals: Update fmt to 6.1.2 2020-02-04 14:50:46 -05:00
Stenzek
2a18d1beb4 Externals: Update Qt submodule for ARM64 Windows binaries 2020-01-12 15:23:32 +10:00
Stenzek
6fcb1c6c46 Add an ARM64 target to Visual Studio projects 2019-12-28 19:20:41 +10:00
Shawn Hoffman
392fc1dcdc update the rapidjson used by discord-rpc to current master dfbe1db9da455552f7a9ad5d2aea17dd9d832ac1 2019-12-18 22:20:11 -08:00
Shawn Hoffman
e3a30fbdf2 update minilzo to 2.10 2019-12-18 22:20:11 -08:00
Stenzek
dd23a1ee79 Update VS projects/solutions to VS2019 2019-11-30 13:42:52 +10:00
spycrab
ec526fee56 Externals/Qt: Update to 5.13.1 2019-10-13 16:06:56 +02:00
Connor McLaughlin
19ed64122c
Merge pull request #8371 from stenzek/vulkan-headers
Externals: Update Vulkan headers to 1.1.121.2
2019-10-07 10:46:03 +10:00
Stenzek
6ae1ddabe1 Externals: Update Vulkan headers to 1.1.121.2 2019-10-01 01:30:51 +10:00
Michael M
0f3695a14b Remove XAudio2
Audio on Windows is provided by the cubeb (shared mode) and WASAPI
(exclusive mode) backends, both of which exhibit lower latency.
2019-09-14 14:08:13 -07:00
Stenzek
9a2075f7fa MoltenVK: Update to Vulkan SDK version 1.1.108.0 2019-06-24 13:21:17 +10:00
Lioncash
d5d60c6e64
Externals: Add libfmt 5.3.0 to externals
Allows us to migrate off of printf specifiers and have more type-safe
formatting facilities. It also allows for custom type support as well.
fmt is also on track to have part of it standardized within C++2a, so
this will also lessen the transitional work necessary later on by
allowing new code to use it.

This simply adds the library but doesn't do anything with it yet.
2019-06-10 15:26:43 -04:00
Lioncash
3053fea160 Externals: Update mbedtls to 2.16.1
On a few of our buildbot instances, we get warnings about the usage of
deprecated functions. We should correct these, especially if we're
delegating to system versions of the libraries if they're available.
However, in order to do that, we need to update our library variant from
2.1.1 so that the non-deprecated alternatives are actually available.
2019-06-07 21:56:28 -04:00
Alex James
24226419ed zlib/CMakeLists: Fix check for unistd.h
The CMakeLists file for the static zlib checks for presence of
unistd.h, but it doesn't properly define HAVE_UNISTD_H if it's found.

This change adds the necessary preprocessor definition if unistd.h is
found.

Upstream zlib handles this with by configuring zconf.h with CMake:
cacf7f1d4e/zconf.h.cmakein (L11)

Dolphin's static version of zlib doesn't do this, which is why setting
Z_HAVE_UNISTD_H in zlib's CMakeLists.txt isn't enough.

This probably wasn't noticed since because most *nix systems will use
the shared zlib. Force use of the static zlib (comment out
find_package(ZLIB) in the root CMakeLists.txt) and you'll see implicit
function declaration warnings during its compilation.
2019-05-29 15:03:37 +02:00
Léo Lam
054b1172e3 Externals/libusb: Set policy ISO_ALWAYS_START_ASAP for libusbK
In some cases, this is required to avoid eventually getting a
USBD_STATUS_BAD_START_FRAME error back from the Windows USB stack.

This makes the libusbK code match the behaviour of the Linux backend.

It appears that the libusbK backend tried to get this behaviour by
setting StartFrame to 0. However, libusbK docs state that:

"Specifing 0 for KISO_CONTEXT::StartFrame (start transfer ASAP) is
restricted to the first transaction on a newly opened or reset pipe."
2019-05-27 20:09:55 +02:00
Léo Lam
20770fe22b Externals/libusb: Bounds check the interface number 2019-05-27 20:09:55 +02:00
Léo Lam
99b340a6d0 Externals/libusb: Mask index for control transfers correctly 2019-05-27 20:09:55 +02:00
Léo Lam
8ea197357c Externals: remove unused libusb files and add them to gitignore
This prevents them from being re-added in the future whenever someone
updates libusb. Also removes the need to manually remove those files.
2019-05-27 20:09:55 +02:00
Léo Lam
1b9617c85c Externals: Update libusb to 1.0.23-rc1
Now has support for isochronous transfers in the WinUSB backend,
which may or may not work better than the UsbDk backend.
2019-05-27 20:09:55 +02:00
spycrab
d4633ceded Externals/Qt: Update to latest commit 2019-05-08 20:58:44 +02:00
spycrab
51e025f6dc Externals/minizip: Link against zlib 2019-05-08 20:58:16 +02:00
spycrab
c2903f8b4e Externals/libpng: Link against zlib 2019-05-08 20:57:34 +02:00
Stenzek
f8c088a1fb Externals: Update imgui to 1.70 WIP 2019-04-19 15:13:05 +10:00
Stenzek
565e604679 Externals: Update MoltenVK to SDK version 1.1.101.0 2019-03-06 22:00:22 +10:00
Stenzek
a4c64e7964 Externals: Set target platform to 10.0.17134 for FreeSurround 2019-02-14 20:42:06 +10:00
LAGonauta
7b9375875c Added FreeSurround to Externals
Also cleaned up its source code to support only 5.1 and 7.1 setups.
2019-02-13 22:52:39 -02:00
spycrab
6a6fc56865 Externals/ed25519: Add CMakeLists.txt 2019-02-06 20:50:09 +01:00
Yohann Martel
31bb0327e5 update windows 10 sdk from 10.0.15063.0 to 10.0.17134.0 for imgui 2018-12-21 10:40:58 -05:00
Stenzek
e3708ea8c3 Externals: Add MoltenVK binary, copy to package on macOS 2018-12-01 14:35:45 +10:00
Pierre Bourdon
ad890d5c5b
Merge pull request #7593 from stenzek/externals-imgui
Externals: Add imgui
2018-11-29 03:32:47 +01:00
Yohann Martel
ca4389bbbe update windows 10 sdk from 10.0.15063.0 to 10.0.17134.0 for minizip 2018-11-28 19:18:46 -05:00
Stenzek
cfdbd45105 Externals: Add imgui 2018-11-26 20:40:34 +10:00
Pierre Bourdon
e6b2758ab4
Merge pull request #7477 from Zexaron/ext-minizip
Externals: Add a stripped down version of minizip
2018-11-17 22:23:02 +01:00
Tillmann Karras
97cc9894e4 Update to Visual Studio's default Windows SDK 2018-10-20 00:53:08 +01:00
Tillmann Karras
636ccdfc2b Externals: update discord-rpc for readlink fix 2018-10-09 23:50:26 +01:00
Pierre Bourdon
8e26d33133 Externals: Add a stripped down version of minizip. 2018-10-09 14:27:53 +02:00
Shawn Hoffman
3b3551f040 fix debug build on recent VS releases of msvc 2018-09-29 22:32:36 -07:00
Léo Lam
a482299df6 Externals/discord: Don't run clang-format on source files
It's annoying to have source files automatically reformatted every time
Dolphin is built because it causes git to consider the source tree to
be dirty.
2018-09-16 15:32:48 +02:00
Lioncash
3130d388db Externals: Update SFML to 2.5.0
Among other things, this finally allows pushing 64-bit values into
packets without needing to manually subdivide the value into two 32-bit
values.
2018-08-27 17:18:24 -04:00
spycrab
7cb310791b Cleanup: Remove some left over references to wxWidgets 2018-08-07 15:48:17 +02:00
spycrab
e22c5333ab
Merge pull request #6819 from spycrab/delete_wx
Remove DolphinWX
2018-06-30 00:12:24 +02:00
spycrab
d2527db8ec Externals/Qt: Update to 5.11.1 2018-06-28 14:38:17 +02:00
spycrab
44b22c90df Remove DolphinWX 2018-06-26 20:50:39 +02:00
Pierre Bourdon
2cfdf89898
Merge pull request #6983 from yourWaifu/add-discord-rpc-support
Add Discord Rich Presence support
2018-06-25 00:06:27 +02:00
yourWaifu
63f03455f3 Discord Rich Presence CMake integration
I have no idea if this works or not. Hopefully the build bot will tell me.
2018-06-19 22:43:03 -04:00
spycrab
fe6e46f846 Externals/GTest: Update to latest master 2018-06-12 14:52:43 +02:00
Sleepy Flower Girl
f25d833dbd Fixed issue Discord RPC library not clearing presence during shutdown 2018-06-03 15:37:27 -04:00
Sleepy Flower Girl
678f8da95b Moved Discord RPC library's source code to external 2018-06-03 15:29:01 -04:00
Sleepy Flower Girl
d5303ddf0b Add Discord Rich Presence support 2018-06-03 15:27:20 -04:00
Stenzek
bc96557ec4 Externals: Update glslang to upstream commit 32d3ec3 2018-06-02 07:34:31 +00:00
Stenzek
c05dd2ee56 Externals: Update Vulkan headers to 1.1.75 2018-05-31 11:37:23 +00:00
Emmanuel Gil Peyrot
c51ae9c62a Remove SOIL altogether from the project. 2018-05-20 13:44:42 +02:00
Léo Lam
48242f1521
Merge pull request #6638 from lioncash/lzo
CMakeLists: Don't dump LZO's includes into the top-level directory
2018-04-13 20:28:44 +02:00
Lioncash
2851c7e5ee
CMakeLists: Don't dump zlib's includes into the top-level directory 2018-04-13 08:32:48 -04:00
Lioncash
b256f873ca
CMakeLists: Link in zlib privately where applicable
Also, use the target name introduced via find_package(ZLIB) instead
of hardcoding the 'z' name in the link libraries.
2018-04-13 08:29:46 -04:00
Lioncash
7de2d1c9d6
CMakeLists: Don't dump LZO's includes into the top-level directory
Instead, we add the includes to the LZO target's interface. That way
only libraries that link it in can see them.
2018-04-13 07:39:09 -04:00
Lioncash
6a637cfc22
CMakeLists: Don't dump libpng's includes into the top-level directory
Instead, add the includes to the target, which only libraries that link it in can actually see.
2018-04-11 17:33:52 -04:00
Lioncash
b9c872dbca
CMakeLists: Don't dump bochs' includes into the top-level directory
Instead add it to the target interface. This way, only libraries that
link in bochs will see its include directories.
2018-04-08 20:43:18 -04:00
Lioncash
a4ba92c697
CMakeLists: Don't dump xxhash's includes into top-level directory scope
We already use a custom CMakeLists file for xxhash, so we can just make it's headers
public as part of its target interface.

This way, only libraries that link in the xxhash target will see its headers, as opposed
to every target under the top-level directory.
2018-04-06 10:41:58 -04:00
Pierre Bourdon
0427d3474c Import ed25519 implementation from https://github.com/orlp/ed25519 2018-03-19 00:11:55 +01:00
Pierre Bourdon
891a1eeb6a Import picojson to Externals from https://github.com/kazuho/picojson 2018-03-19 00:11:55 +01:00
Vincent Duvert
bb5e5d964a Added patches for hidapi modifications
This allows tracking what modifications were made to the upstream code.
2018-01-13 21:20:54 +01:00
Vincent Duvert
3abc288e02 macOS: Add errno setting in set_report (HID)
IsDeviceUsable in IOhidapi.cpp uses errno to detect if hid_write failed because of an unconnected Wiimote on a Dolphinbar (it expects errno == EPIPE in this case).
macOS’s implementation of hid_write detected this specific error (IOHIDDeviceSetReport returns kUSBHostReturnPipeStalled) but didn’t set errno so the check failed.
This add errno assignment to failure cases of macOS’s hid_write.
2018-01-07 11:14:51 +01:00
Vincent Duvert
8d5810a103 macOS: Use unique IDs for HID paths
If available, use the system-generated unique ID for HID device paths instead of a transport/vid/pid/location tuple.
The Mayflash Dolphinbar registers four HID devices (regardless of the number of connected Wiimotes) which had the same path with the previous path building method, causing a bit of confusion when detecting and connecting to Wiimotes.
The unique IDs do not change if the computer is suspended and resumed, but do change if the HID device is unplugged/replugged.
2018-01-07 11:00:01 +01:00
MerryMage
2d6047472b wxWidgets3: Fix compilation due to change in assert macros in macOS 10.13 SDK 2017-10-29 20:23:46 +00:00
Michael M
aa40c4a7ce Externals: update cubeb to kinetiknz/cubeb@c2bd582
A bunch of changes, looks mainly like bug fixes and code cleanup.

Notable changes:
- `cubeb_get_min_latency`'s signature was changed to take params via
  pointer, requiring Dolphin code to be tweaked in two places.
- A fix for kinetiknz/cubeb#320, as reported by @shuffle2
- Fixed build on FreeBSD (kinetiknz/cubeb#344), as contributed by @endrift
2017-10-21 14:28:39 -07:00
orbea
be3b25a750 Set wxUSE_XLOCALE to 0 2017-08-24 12:56:18 -07:00
Michael M
bd29183d76 miniupnpc: expose namespaced target alias 2017-08-17 13:15:02 -07:00
Michael M
b8ead9b8a9 miniupnpc: use correct include dirs for cmake 2017-08-17 13:15:02 -07:00
Vicki Pfau
df6165391e Externals: Fix FreeBSD build 2017-07-30 07:46:23 -07:00
Léo Lam
a3a3bf9144 Externals/glslang: Silent even more warnings
* -Wno-unused-but-set-variable: only set this flag with gcc, otherwise
  clang will issue warnings about the warning option being unknown :)
  (-Wunknown-warning-option)

* -Wmissing-variable-declarations: clang warns about missing extern
  declarations for non-static variables.
2017-07-28 21:55:35 +08:00
Stenzek
7449f1e818 CMake: Use add_compile_options instead of add_definitions for glslang
Fixes the warning spam in the build logs.
2017-07-28 22:12:25 +10:00
shuffle2
599a235a19 Merge pull request #5691 from ligfx/openalonlywindowsdynamic
OpenAL: only enable on Windows + dynamically load DLL
2017-06-27 01:18:06 -07:00
shuffle2
3094b1bd4f Merge pull request #5684 from TaoSc/xxhash-update
Update xxhash to 0.6.2
2017-06-27 00:59:27 -07:00
Michael Maltese
8e849b1595 Remove OpenAL DLL from Externals 2017-06-27 00:06:14 -07:00
Shawn Hoffman
38b61edaa5 Qt/Windows: Properly link against qtmain. 2017-06-23 00:46:13 -07:00
Léo Lam
04e7e027e0 Remove unused solution files 2017-06-16 13:09:50 +02:00
Léo Lam
b08201654e Externals: Add zeux/pugixml@38edf25
Along with VS boilerplate to get it to build on Windows.
2017-06-13 14:05:10 +02:00
Tao Schreiner
ab2fca042e Update xxhash to 0.6.2 2017-06-10 14:02:27 +02:00
shuffle2
b841f796f9 Merge pull request #5588 from TaoSc/zlibupdate
Update zlib to 1.2.11
2017-06-09 17:25:20 -07:00
Shawn Hoffman
4000009e8b msbuild: disable warnings from Externals\enet 2017-06-07 18:44:03 -07:00
Shawn Hoffman
ae3c8a4be9 msbuild: update to Qt5.9.0 2017-06-05 11:44:21 -07:00
Leo Lam
a829f8faaf Merge pull request #5434 from TaoSc/master
Update libpng to 1.6.29
2017-06-04 13:52:41 +02:00
Shawn Hoffman
88ccda17d3 cubeb: don't define _MBCS or redefine _CRT_SECURE_NO_WARNINGS 2017-06-03 18:20:40 -07:00
Shawn Hoffman
d1d75ff962 remove unused msbuild file content 2017-06-03 18:20:40 -07:00
Shawn Hoffman
397720a9fe might as well update yet some more pointless version numbers.. 2017-06-03 18:20:40 -07:00
Shawn Hoffman
e8e2f329fb wxw: clean up vcxproj a bit 2017-06-03 18:20:40 -07:00
Shawn Hoffman
80642a944d wxw[msw]: disable wxUSE_DBGHELP (issue 7591) 2017-06-03 18:20:40 -07:00
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