Jeffrey Pfau
1b9f55692b
Fix 64-bit FreeBSD build
2015-06-13 21:52:47 -07:00
Matthew Parlane
f32cede086
Revert "x64: build a Position-Independent Executable (PIE)"
2015-06-14 16:06:26 +12:00
Jules Blok
35aa676fe7
Decide whether Dolphin is stable based on the branch name.
2015-06-09 21:07:33 +02:00
Tony Wasserka
680e73baa2
Make CMakeLists.txt recognize "stable" as a stable branch.
2015-06-09 20:03:49 +02:00
Ryan Houdek
59e2225f7d
Remove ARMv7 support.
2015-06-07 22:44:13 -05:00
Ryan Houdek
49a0adb2e9
Merge pull request #2506 from comex/enet-build-fixes
...
ENet fixes (build fixes, upgrade)
2015-06-07 23:16:42 -04:00
Tillmann Karras
0e1c51e5b9
CMake: add ENABLE_PIE option
2015-06-03 21:44:31 +02:00
comex
eb234da67f
Disable shared libenet by default because I'm going to diverge it soon.
...
The changes I intend to make are:
- supporting IPv6 by rebasing on https://github.com/freeminer/enet
- adding custom code for quick resending
Even if I manage to get the latter upstream (which I'd like to wait for
some testing before attempting), I don't know what the original author
might do with the former, so...
Leave an option to use it for the sake of Linux distros - this means any
changes must stay protocol compatible, and Dolphin must work around any
API incompatibilities (e.g. for IPv6).
2015-06-02 18:42:50 -04:00
comex
d31d2b1949
Add check for enet_socket_get_address in shared enet.
2015-06-02 18:42:50 -04:00
comex
599e42c562
Work around check_libs failing on OS X due to -x objective-c.
2015-06-02 18:42:48 -04:00
comex
fd855758cc
Explicitly specify .pc names, since the previous guess in CheckLib.cmake wasn't always right.
...
This fixes detection of at least libenet via pkg-config, and I think
libpng via pkg-config pulseaudio via direct detection.
Also remove the NOT APPLE from the shared libenet check, because there's
no reason for it.
2015-06-02 18:42:45 -04:00
Tillmann Karras
c4beec7070
CMake: require wxWidgets 3.0.1 or newer
...
Fixes issue 7206 on outdated systems (e.g. Ubuntu 14.04).
Note: Our version in Externals is somewhere between 3.0.0 and 3.0.1.
2015-04-23 17:50:13 +02:00
Ryan Houdek
b267e5147c
Merge pull request #2203 from alucryd/findx11
...
Include the FindX11 module
2015-03-15 07:40:20 -05:00
Maxime Gauduin
148ce85b26
Include the FindX11 module
2015-03-13 12:58:08 +01:00
degasus
691b690afe
enet: Search for shared library
2015-03-02 22:18:57 +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
Ziek
619a3a5171
Added all of enet lib, changed Cmake files accordingly
2015-02-25 18:28:27 -08:00
Ziek
074d688884
Change netplay initial gctime to be determined by the hosts initial time
2015-02-25 18:28:26 -08:00
Tillmann Karras
387777ed72
Fix VTune static library dependencies
...
Since libcommon.a is also the last library to be linked, this has the
totally hacky but useful side-effect that it doesn't require people to
modify CMake files for temporarily adding VTune code to other Dolphin
libraries.
2015-02-22 20:49:30 +01:00
Tillmann Karras
0ec48e0ec9
JitRegister: fix VTune integration
2015-02-12 02:14:49 +01:00
degasus
402fb4bd20
xxhash: Add cmake + VS files
...
Based on riking's PR.
2015-01-21 07:35:34 +01:00
Tillmann Karras
6bcdb10eee
CMake: simplify some expressions
2015-01-03 13:17:57 +01:00
Ryan Houdek
5eb8876bac
[AArch64] Removes ARMv8 as a generic target.
...
Generic flag disables the ability to have backpatching supporting.
Also compiles Dolphin with CRC instructions enabled.
2014-12-20 19:36:48 -06:00
skidau
b806680eac
Merge pull request #1522 from jcowgill/sfml-2.1
...
Update / Port to SFML 2.1
2014-11-26 12:33:03 +11:00
James Cowgill
a93f86330e
Port dolphin to SFML 2.1
2014-11-25 16:44:38 +00:00
Pringo
9cbf353755
Update CMakeLists.txt
2014-11-25 00:27:13 -05:00
comex
ba4a763410
Move library aggregation into common CMakeLists.txt; add missing libs to DolphinQt.
...
Fixes DolphinQt build (on OS X, anyway) when libav is enabled.
2014-11-19 20:09:12 -05:00
comex
efb2f361aa
Don't murder the default PATH and CMAKE_SYSTEM_PREFIX_PATH on OS X. Just prioritize /usr.
...
Changing PATH basically screws everything up, and while the attempt to
avoid MacPorts copies of system libraries was well-intentioned, it made
the OS X buildbot unable to pick up ffmpeg and libusb.
It's sufficient to put /usr first to make sure we use the system copies
of duplicated libraries.
2014-11-14 15:00:50 -05:00
comex
cb0af4057e
Link Foundation/CoreServices into unit tests so they build with DISABLE_WX.
2014-11-14 11:28:13 -05:00
Ryan Houdek
eb7543d139
Enables ARMv7 build options entirely on ARM.
...
We only support ARMv7 with Dolphin, so if we are building on ARM have our target be for armv7-a.
2014-11-14 15:14:53 +00:00
Rohit Nirmal
6d9c68a617
Fail CMake if building WX without GTK libraries.
2014-11-10 20:49:33 -06:00
Jasper St. Pierre
44b879dac2
Destroy OpenMP
2014-11-06 18:38:24 -08:00
Lioncash
8959adefb2
Merge pull request #1506 from waddlesplash/dolphin-qt
...
Dolphin[Qt|WX]: Miscellaneous cleanup.
2014-11-06 20:55:44 -05:00
Augustin Cavalier
a96acea03c
Dolphin[Qt|WX]: Miscellaneous cleanup.
...
DolphinQt:
* Make the connect() calls explicit, not automatic
* Follow better naming convention for the QActions
* Remove the Open action from the toolbar.
Dolphin[Qt|WX]:
* Move the "Skip Bundle" option to the root CMakeLists so that both DolphinQt and DolphinWX can use it.
2014-11-06 15:47:27 -05:00
Tillmann Karras
c34d99e40e
Work around LLVM header peculiarity
...
Bug report: http://llvm.org/bugs/show_bug.cgi?id=21472
2014-11-04 02:29:33 +01:00
Gabriel Corona
cf3ba671bf
Fix LLVM
...
$(llvm-config --ldflags) was passed to the compiler but it needs to be
passed to the linker instead (-L and -l flags).
2014-10-28 01:36:27 +01:00
Ryan Houdek
bd1a192faf
Fixes LLVM library detection.
...
I must have had a dirty cmake configuration which didn't encounter this issue.
Make sure we are using LLVM_DEFINITIONS to know where we are linking to libraries at.
Link against libLLVM-${VERSION}, the other one was linking us against static libraries...
2014-10-26 16:17:57 -05:00
Ryan Houdek
cb10bef9a4
Implements LLVM based disassembler for the debugger.
...
This will work for all of our platforms, x86, ARMv7, and AArch64.
Main issue with this is that LLVM's cmake files aren't correctly finding the LLVM install.
Not sure if this is Ubuntu's issue or not, it may just work on other operating systems.
We could potentially improve this, you can pass in a specific CPU in to the LLVM disassembler. This would probably affect latency times that are
reported by LLVM's disassembly? This needs to be further investigated later.
2014-10-24 18:10:21 -05:00
Chris Ballinger
ffe976659e
Fix OpenGL linker error on OS X
2014-10-22 00:34:31 -07:00
Ryan Houdek
b3a79f00d4
Removes Android cmake option.
...
We auto detect if we are building for Android. No need to have this option.
2014-10-21 08:47:25 -05:00
Augustin Cavalier
16c6a19190
DolphinQt: initial commit.
...
This adds the beginning of the DolphinQt user interface. It doesn't
do anything useful yet and only builds via CMake.
2014-09-15 15:06:05 -07:00
Augustin Cavalier
a15d9ed0b6
Migrate PNGs from DolphinWX to the Data/Sys/Resources directory.
...
* Aren't used by anything (yet) as DolphinWX compiles XPM versions into the build
* Moved the .desktop file as well, adjusted INSTALL rule accordingly
2014-09-06 11:47:21 -04: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
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
Jasper St. Pierre
8bd4b9d2f9
Remove support for Wayland
...
Yes, this is a fancy new feature, but our Wayland support was
particularly bitrotten, and ideally this would be handled by a platform
layer like SDL. If not, we can always add this back in when GLInterface
has caught up. We might be able to even support wxWidgets and GL
together with subsurfaces!
2014-08-19 10:05:56 -04:00
Jasper St. Pierre
b84fd718a7
CMakeLists: Try to fix the X11 detection on OS X
2014-08-06 21:38:57 -04:00
Lioncash
e34f7f112d
CMakeLists: Increment the minimum required version of wxWidgets
2014-07-14 19:07:10 -04:00
degasus
9560ecdbec
CMake: warn on missing variable declarations
2014-07-11 16:07:23 +02:00
degasus
3ff1c538ee
CMake: warn on missing declarations
2014-07-11 16:07:22 +02:00
Tillmann Karras
95eade2a47
CMake: remove unused/duplicate definitions
2014-06-27 19:48:36 +02:00
Tony Wasserka
a8f32adcab
Merge pull request #470 from pauldacheez/s-Gamecube-GameCube
...
Fix the capitalization of "GameCube" throughout the project.
2014-06-13 21:52:08 +02:00
Paul Olszewski
5d793881b0
Fix the capitalization of "GameCube" throughout the project.
2014-06-08 11:24:49 +09:00
Ryan Houdek
6e1d312091
Make it so ARMv7 isn't a generic target.
...
Rearranges a bit of code so that ARM isn't a generic build anymore. Because it obviously isn't
2014-06-07 20:26:31 -05:00
Ryan Houdek
b7519fdde1
Merge pull request #337 from Tilka/lto
...
Fix LTO with GCC 4.9
2014-06-07 00:54:28 -05:00
shuffle2
e25c9fef46
Merge pull request #418 from Sonicadvance1/x86_32-cmake-removal
...
Add a Cmake generic build option and remove x86_32 build capabilities.
2014-05-26 13:36:05 -07:00
Ryan Houdek
28e643c384
Add a Cmake generic build option and remove x86_32 build capabilities.
...
Adds the ability to build our generic build option without manually enabling it in the cmake file.
If trying to build on a x86_32 host, throw a fatal error but say that a binary can be built as a generic build if one wants.
2014-05-25 20:52:52 -05:00
Jordan Woyak
9af18d1b96
Remove SDL from Externals.
2014-05-04 19:41:02 -05:00
Tillmann Karras
e22be59f82
Fix LTO with GCC 4.9
...
For LTO to work, GCC 4.9 requires using the wrappers gcc-ar and gcc-ranlibs:
http://gcc.gnu.org/gcc-4.9/changes.html
CMake doesn't account for this yet:
http://public.kitware.com/pipermail/cmake-developers/2014-January/009344.html
2014-05-03 11:54:31 +02:00
Ryan Houdek
cc2dac6722
Adds Link Time Optimization cmake option.
...
Adds a LTO option that isn't enabled by default.
Allows building release binaries with link time optimizations without generating a -dirty build.
Not enabled by default due to concerns of memory usage and increased build time.
2014-04-23 04:15:25 -05:00
Ryan Houdek
c44df3d932
Moves a few Cmake options so that debug options are near one another.
...
Moves GDBSTUB to the top as well where it should be.
2014-04-23 04:15:08 -05:00
Ryan Houdek
8ecb7524bc
Fix arch detection on x86.
2014-03-17 11:46:19 -05:00
Ryan Houdek
d4c53eed01
Fix arch detection on x86.
2014-03-17 11:36:27 -05:00
Ryan Houdek
a6ee74b58d
Fix arch detection on x86.
2014-03-17 11:33:11 -05:00
Guilherme Espada
dacd2431d3
Fix building on mac without a c/c++ compiler set.
2014-03-10 15:58:50 +00:00
Matthew Parlane
79ae3c1510
Use correct capitalization for SoundTouch.h in CMakeLists.txt
...
Fixes Issue 7074: Typo in CMakeLists.txt
2014-03-11 00:39:30 +13:00
Ryan Houdek
4dc2d71e34
OS X likes to be different. It reports the host processor type as i386 instead of x86 or x86_64 like a typical sane system.
2014-03-04 14:45:50 -06:00
Ryan Houdek
4f02132f93
Make our architecture defines less stupid.
...
Our defines were never clear between what meant 64bit or x86_64
This makes a clear cut between bitness and architecture.
This commit also has the side effect of bringing up aarch64 compiling support.
2014-03-04 09:36:59 -06:00
Pierre Bourdon
9ea845310d
Unittests: Always use GTest from Externals (recommended way from GTest FAQ).
2014-03-03 03:38:46 +01:00
Pierre Bourdon
2d71571be5
Do not hard fail when running 'make unittests' without GTest.
2014-03-03 03:12:58 +01:00
Pierre Bourdon
d4ed4adace
Add the infrastructure required to easily add unit tests and test it with a very simple test file.
2014-03-03 00:25:41 +01:00
Pierre Bourdon
747021e0c8
CMake: detect GTest if it is installed
2014-03-02 04:15:33 +01:00
Pierre Bourdon
0f89060cf3
Remove Source/{Unittests,TestSuite}.
...
These directories have been unused for several years and without any automated
way of running the tests, they are pretty much useless.
While they might be useful as a reference, in their present state they should
not be kept in the repository.
2014-02-23 22:36:32 +01:00
Pierre Bourdon
362dec9c7c
Dolphin now builds on Linux with only Source/Core as include dir
2014-02-18 12:18:47 +01:00
Pierre Bourdon
dc1db82f70
Fix Linux build
2014-02-18 12:09:38 +01:00
Pierre Bourdon
9da6900595
Merge pull request #12 from Armada651/osx_rumble
...
OS X Rumble Support
2014-02-09 16:10:07 +01:00
Jules Blok
c6d650c058
ForceFeedback: Add OSX rumble support
2014-02-09 17:01:45 +09:00
degasus
5c646d334a
Pulseaudio: rewrite the pa backend with the async api
...
The default async api allow us to set some latency options. The old one (simple API) was the lazy way to go for usual audio where latency doesn't matter.
This also streams audio, so it should be a bit faster then the old one.
2014-02-07 00:20:10 +01:00
Ryan Houdek
839df31347
Merge of GL-AutoChoose.
...
This branch is the final step of fully supporting both OpenGL and OpenGL ES in the same binary.
This of course only applies to EGL and won't work for GLX/AGL/WGL since they don't really support GL ES.
The changes here actually aren't too terrible, basically change every #ifdef USE_GLES to a runtime check.
This adds a DetectMode() function to the EGL context backend.
EGL will iterate through each of the configs and check for GL, GLES3_KHR, and GLES2 bits
After that it'll change the mode from _DETECT to whichever one is the best supported.
After that point we'll just create a context with the mode that was detected
2014-01-18 04:11:59 +00:00
Ryan Houdek
cd145cb63e
[GLExtensions] Refix GLES3 build. Until we clean up the platform detection this'll need to be here.
2014-01-17 16:06:40 +01:00
Ryan Houdek
c744aca323
[GLExtensions] Move the include directory location for Externals/GL so no other library includes global GL folder first.
2014-01-17 16:06:35 +01:00
Ryan Houdek
3d4d3f6b11
[GLExtensions] Remove a bunch of unneeded headers. Fix Linux+EGL compiling. Move include to glx.h around to work around it including global GL/gl.h
2014-01-17 16:06:29 +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
Ryan Houdek
1118226f27
Merge branch 'master' into buffer_storage
2013-12-31 19:18:30 -06:00
Jasper St. Pierre
34692ab826
Remove unnecessary Src/ folders
2013-12-31 14:03:19 -05:00
Ryan Houdek
d8ceb97a60
[buffer_storage] Require GLEW 1.10 which has the new OpenGL 4.4 methods. Fixes linux build.
2013-12-27 15:37:31 -06:00
Ryan Houdek
a87e0e7489
Remove our GLU dependency. Fix static zlib
2013-12-23 16:01:34 -07:00
Ryan Houdek
63ab203923
Fix ARM unix build.
2013-12-12 21:17:42 +00:00
Ryan Houdek
c21003feab
If we are using OpenGL ES 3, then don't check for OpenGL/GLU
2013-12-12 13:42:15 -06:00
Ryan Houdek
7ff429152d
Fix Cmake failure.
2013-12-12 13:35:22 -06: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
Ryan Houdek
1dfe303119
[ANDROID] Fix ARMv5 build.
2013-11-30 12:25:01 -06:00
Ryan Houdek
49eef423a8
[Android-overlay] Add the new overlay icons. Support configuring them. Disable hardfloat since it has issues since Dalvik doesn't understand passing floats due to ABI differences.
2013-11-29 18:37:33 -06:00
Ryan Houdek
2c09e8fc5a
[Android] Enable hard-float support. Requires Android NDK r9b.
2013-11-24 16:43:53 -06:00
Ryan Houdek
13578dc0b3
[Android] Enable the ability to find OpenMP on Android...which isn't used in the generic texture decoder so no win.
2013-11-24 16:28:20 -06:00
Ryan Houdek
117bf435b0
Fix GUI-less build. Also potentially OS X. We now require libpng due to our screenshot code relying on it now. WXWidgets links in libpng by itself so it isn't noticed in a wxwidgets build. OS X seems to not have libpng linked in from wxWidgets so just link in libpng at all times.
2013-11-15 01:09:38 +00:00
comex
bfdc913714
Actually enable PCH.
2013-10-20 16:55:01 -04:00
comex
de1773affb
Basic precompiled header support for Linux/OS X. Shaves 20-30% off full rebuild time on my system.
2013-10-17 00:07:35 -04:00
comex
4cdce55615
Don't define _M_IX86 on ARM(!).
...
Also define _M_* in a common location, and clean up code that these
changes break (including DSPJit files that assume X86 yet are compiled
on ARM for some reason...)
2013-09-24 01:30:41 -04:00
comex
146cf56295
Darwin: Don't overwrite the C compiler if the user set one manually.
2013-09-24 01:14:56 -04:00
Pierre Bourdon
2395725200
We're not stable anymore :(
2013-09-22 16:28:09 +02:00