Commit Graph

518 Commits

Author SHA1 Message Date
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
Pierre Bourdon c25be031fc Dolphin 4.0 release 2013-09-22 16:00:57 +02:00
Pierre Bourdon aa202c2e21 Move global gameinis from User to Sys. Get rid of SHARED_USER. 2013-09-14 06:08:30 +02:00
Glenn Rice d9dd0a7874 Fix building with polarssl from the externals. 2013-09-11 23:35:52 -05:00
Ryan Houdek 53fb0622f0 Fix the glew check. GLES3 can be used on non-Android platforms. 2013-09-08 07:21:33 +00:00
Glenn Rice d617efc5ef When checking for glew, don't fail if a working system version is not
found so we can fall back to the Externals version.
2013-09-07 12:40:40 -05:00
Glenn Rice a3d86ceead When checking for glew via cmake check to see that the system version of glew
is at least 1.8 and has the methods of glew 1.9.  This is an annoying
hack to deal with Ubuntu's glew setup, which is glew 1.8 with 1.9
methods patched in.
2013-09-07 12:24:32 -05:00
Glenn Rice eb8e03fab5 Add a check for a shared polarssl library. This checks to see that the
system version is new enough, and is compiled with havege support.
2013-09-02 20:07:47 -05:00
comex b6728c1405 Avoid unnecessary bundle copies on OS X:
- Make "copy data into bundle" depend on the files actually being
  changed, rather than being run on every build.

- postprocess_bundle depends on system files and checking the Dolphin
  binary and all that, and would be iffy to try to avoid rerunning;
  but it's only needed to produce a redistributable bundle, so add
  SKIP_POSTPROCESS_BUNDLE to skip it for development.
2013-08-30 17:54:52 -04:00
Ryan Houdek 18fd690533 Only use static iconv on Android. 2013-08-29 05:53:15 -05:00
Ryan Houdek cb8e7a1be5 Work around check_lib not finding iconv. 2013-08-29 05:40:16 -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
Pierre Bourdon 73be79f4e0 Fix trailing whitespaces in all files where some were added 2013-08-25 02:49:58 +02: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
Matthew Parlane 17918472ae Fix random d... 2013-08-16 19:26:34 +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
Jordan Woyak a279001472 Remove "-0" from stable version numbers in a more foolproof manner for vs and cmake builds. 2013-08-10 17:19:19 -05:00
Jasper St. Pierre 3239e4946f Use pkg-config to check for XInput2 2013-07-21 00:45:03 -04:00
Max Eliaser 9fbc5ff27c Add X11 XInput2 input plugin, including MPX and with support for axis controls.
Based on the original XLib plugin, and thus shares some of its warts.
2013-07-20 13:58:02 -08:00
Glenn Rice 63e334f59e Uh, that was stupid. Forgot to remove the NOT. 2013-07-15 09:22:47 -05:00
Glenn Rice b2950adc52 When cmake checks for miniupnpc use the MINIUPNPC_VERSION_1_7_OR_HIGHER variable instead of MINIUPNPC_VERSION_PRE1_7. This should fix issue 6422. 2013-07-15 09:20:43 -05: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
Ryan Houdek e24a551515 [Android] MIPS support...lol 2013-07-11 09:10:44 -05:00
Glenn Rice 1aca5fe798 Remove the cmake check for wxWidgets 2.8.9 that somehow got readded to
the code before the correct check for wxWidgets 2.9.3/2.9.4.
Also clean up the indentation in the CMakeLists.txt file.
2013-07-10 21:49:13 -05:00
Glenn Rice 1f6b70bf87 On linux check for a new enough system version of miniupnpc. Fall back
to building the version in the externals if it is not available.
2013-07-09 22:07:27 -05:00
John Chadwick 44db305602 Disable UPnP on Android. (Sorry :() 2013-07-09 18:19:56 -04: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
Matthew Parlane 2f00f87e8e Use working directory for executions.
Fixes issue 6318
2013-05-22 23:34:02 +12:00
Ryan Houdek 09def3ed3f [Android] Add in a compiling option for GLES3 2013-05-05 23:37:01 -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
Matthew Parlane b652f1974f Completed port to gnutls for linux. 2013-04-24 00:32:44 +12:00
Ryan Houdek 24347e5176 Get latest android cmake to support NDK 8e 2013-04-13 15:09:05 -05:00
Ryan Houdek 605bbf5ca8 Merge remote-tracking branch 'origin/master' into Android-trash 2013-04-13 00:58:37 -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
Ryan Houdek 1dd1ebb8bd Fix ARM building. 2013-04-03 05:20:41 +00:00
Jordan Woyak 1f9e3b460d Fix CMake warning. 2013-04-01 15:07:45 -05:00
Pierre Bourdon 43d862bff9 Keep a frame pointer register on OSX - libunwind seems to crash when it's not present 2013-03-29 09:58:30 -07: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 7034c79ab9 Big commit. Fix running the APK, I had missed a view in the manifest. Clean up the Android EGL context creation to fit more in line with how Dolphin works. This breaks input at the moment as well. Change the memarena from 768MB to 64MB to allow 1GB phones to potentially run it. Rename EGL_X11 back to EGL since this merge brings in some of soreau's changes to more easily allow different platforms like Wayland and Android. Not quite all of the code because some needs to be cleaned up still. 2013-03-24 21:06:34 -05:00
Ryan Houdek 019b525285 Missed a few clang compiler flags. 2013-03-19 08:56:46 -05:00
Ryan Houdek 61e1659b97 Disabled OSX x86 build since we require 10.7 minimum. This takes support back to late 2006 models. Also, Missed CG framework addition. 2013-03-19 08:50:56 -05: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
Ryan Houdek c23a6505ad Fix dup Option and move one to the top where it belongs in the CMake file. 2013-03-13 11:56:23 -05: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 11e4403fb2 Fix accidental change from libpulse-simple to libpulse 2013-03-03 08:38:13 +00:00
Ryan Houdek 717b976875 ARM Support without GLSL 2013-02-26 13:49:00 -06:00
Matthew Parlane c30b8c9eae Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_FileIO.cpp
2013-02-23 17:02:58 +13:00
degasus a629dea4dc Merge branch 'master' into GLSL-master
Conflicts:
	CMakeLists.txt
	Source/Core/DolphinWX/Dolphin.vcxproj
	Source/Core/DolphinWX/Src/GLInterface/WX.cpp
	Source/Core/DolphinWX/Src/GLInterface/WX.h
	Source/Core/VideoCommon/Src/TextureCacheBase.cpp
	Source/Core/VideoCommon/Src/TextureCacheBase.h
	Source/Plugins/Plugin_VideoDX11/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoDX11/Src/TextureCache.h
	Source/Plugins/Plugin_VideoDX9/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoDX9/Src/TextureCache.h
	Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureCache.h
	Source/Plugins/Plugin_VideoSoftware/Src/SWmain.cpp

damn mipmap_fixes ...
2013-02-18 18:49:20 +01:00
Ryan Houdek 818a376bd4 Fix header guard and definitions not being set to 1 2013-02-12 14:11:29 -06:00
Ryan Houdek e53d88da2d Add the option to turn on only the EGL interface to use desktop OpenGL with it.
Conflicts:
	CMakeLists.txt
2013-02-12 14:09:49 -06:00
Jordan Woyak e556f47db0 "Fix" using SDL from externals. 2013-02-12 13:59:41 -06:00
Ryan Houdek 8923f0e13b Fix header guard and definitions not being set to 1 2013-02-11 15:06:40 -06:00
Ryan Houdek 0955135290 Add the option to turn on only the EGL interface to use desktop OpenGL with it. 2013-02-11 13:08:41 -06:00
Matthew Parlane 3d480c088f Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp
2013-02-09 20:13:11 +13:00
Jordan Woyak af9b9c8f45 "Fix" using SDL from externals. 2013-02-05 16:29:52 -06:00
Matthew Parlane 33b0a11747 Merge branch 'master' into wii-network 2013-02-01 01:32:54 +13:00
Glenn Rice 18e69acc15 Re-enable a few more warnings. 2013-01-29 21:48:26 -06:00
Glenn Rice 7676c4d43b For each of the recently added warning flags check to see if the
compiler supports the flag before adding it.
2013-01-29 21:28:55 -06:00
Ryan Houdek d2528615fa hah, woops. 2013-01-29 14:06:43 -06:00
Ryan Houdek 75f2ba14b4 Hey Parlane. Fixed it. 2013-01-29 13:59:03 -06:00
parlane 65dea7da36 I blame Billiard. 2013-01-29 19:54:10 +00:00
parlane 4efbe1725f Fix for the fix that didn't fix. 2013-01-29 19:52:44 +00:00
parlane 570997e6a1 4000 warnings about not supporting a warning... 2013-01-29 19:47:58 +00:00
Jordan Woyak 8ab2332854 Enabled more warnings. Get to work! 2013-01-28 20:50:22 -06:00
Matthew Parlane 2dd077028f Merge branch 'master' into wii-network 2013-01-28 22:00:47 +13: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
Ryan Houdek eb07c005e3 Move the cmake option lines to the top of the Cmake file for easy viewing in vim. 2013-01-25 13:55:05 -06: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 0a4272c96b Merge branch 'OpenAL'
* OpenAL:
  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.
  Added a latency setting to the audio settings. Removed the Sample Rate setting.  It is now hardcoded to 48000hz (accurate audio timing).
  Skipped timestretching if the emulator is running below 10% speed to prevent buffer overflows.
  Removed the synchronisation between the CPU thread and the audio thread. Added code to detect and resume from buffer underruns. Disabled the ability to change the DPL2 option after the game has started. Fixed a memory leak that occurred in the DPL2 decoder. Fixed the OSX build.
  Build fix
  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.
  Removed the system timing hack which was activated when the Accurate VBeam option was enabled.
  Fixed the include directories in Audio Common for the Windows 32bit build.
  Fixed the include directories in Audio Common for the Windows build.
  Messed up the static include line
  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.
  OSX: typedef signed char BOOL
  OSX build fix
  Build fix
  Added audio time stretching by using the SoundTouch library.
  Implemented correct audio timing.
  OpenAL for Windows initial commit
2013-01-15 22:40:12 +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
Jordan Woyak 5c371549d3 fix cmake hacks 2013-01-09 18:39:28 -06:00
Ryan Houdek 6b29918ea3 Messed up the static include line 2013-01-09 10:42:05 -06: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 63b38be97c Added audio time stretching by using the SoundTouch library. 2013-01-09 22:57:32 +11:00
degasus bff02b3b73 Merge branch 'arb_framebuffer' into GLSL-master
Conflicts:
	Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp
	Source/Plugins/Plugin_VideoOGL/Src/RasterFont.cpp
	Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureConverter.cpp
2013-01-09 11:00:26 +01:00
Matthew Parlane e8624cc0f2 Merge branch 'gdbstub' into wii-network
Conflicts:
	Source/Core/Core/Src/ConfigManager.cpp
2013-01-08 21:21:05 +13:00
Matthew Parlane 5b96fb766f Merge branch 'master' into wii-network 2013-01-08 21:18:48 +13:00
Matthew Parlane 0ec7ef4b99 Merge branch 'master' into gdbstub 2013-01-08 20:27:34 +13:00
Glenn Rice bb7c262539 Add a linux .desktop file to add dolphin-emu to the menu, and install it
when running 'make install'.
2013-01-07 16:50:48 -06:00
Matthew Parlane b7fd1225ba Started gdb stub support. 2013-01-06 23:28:27 +13:00
Matthew Parlane e0c9a1fd09 Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Common/Src/CommonPaths.h
	Source/Core/Core/CMakeLists.txt
	Source/Core/Core/Src/Boot/Boot_BS2Emu.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net.cpp
2013-01-01 23:28:46 +13:00
Matthew Parlane 29f91eef97 Merge branch 'master' into wii-usb 2012-12-30 21:37:45 +13:00
Ryan Houdek b2911516de Disable the warning about va_list being mangled differently now. 2012-12-30 01:42:33 -06:00
Matthew Parlane cc4d491d6c Add ability to enable GPROF in cmake. 2012-12-30 17:48:22 +13:00
Matthew Parlane 3b459fb500 Add better FindLibUsb support for MacOSX.
Make LibUSB optional, don't compile HID support if it doesn't exist.
A lot less hacky. Works quite well on Ubuntu now.
2012-12-30 16:57:37 +13:00
Matthew Parlane 13bd235c11 Merge branch 'master' into wii-usb 2012-12-29 17:47:52 +13:00
degasus 316a33d1e6 Merge branch 'master' into GLSL-master
Conflicts:
	Source/Core/DolphinWX/Src/VideoConfigDiag.h
	Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h
	Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureConverter.cpp
2012-12-27 10:36:54 +01:00
Ryan Houdek 67c1c6b062 Merge branch 'GLES-software' 2012-12-26 12:54:58 -06:00
Ryan Houdek 01953ff64a Rename the interface files and hopefully fix OSX building. 2012-12-25 19:08:24 -06:00
NeoBrainX 5ac1e908b1 Truly unstable. 2012-12-24 22:12:33 +01:00
NeoBrainX 9a9f567f28 ... and back to unstable again 2012-12-24 21:29:24 +01:00
NeoBrainX 4798524b75 Dolphin 3.5 release. 2012-12-24 21:29:24 +01:00
Ryan Houdek 9209253e0d Initial removal of Nvidia CG. Still some more cleanup to go 2012-12-24 11:09:52 -06:00
Ryan Houdek 296b9b1c16 Small bit of clean up in GLES-software. 2012-12-24 09:37:12 -06:00
Matthew Parlane d9dd94ac8b Add Libusb to cmake and HID files. 2012-12-24 12:58:11 +13:00
Ryan Houdek b78f5debe6 Initial push of GLES and GLUtil file breakup. 2012-12-17 14:54:20 -06:00
Pierre Bourdon 764cd455b3 Revert "fix Snow Leopard compatibility"
This change broke compilation on some OSX 10.7 configurations.

This reverts commit b2e2e49fe4.
2012-11-13 10:22:56 +01:00
Shawn Hoffman b2e2e49fe4 fix Snow Leopard compatibility
Checking for clang in Xcode bundle seems pointless, command line tools should be installed.
Setting the path explicity to avoid fink/macports/homebrew prevents use of locally installed packages like clang and wxwidgets.
Realistically using opencl means the minimum OSX version targetable is 10.6.
Correct TARGET_SYSROOT check, add required -mmacosx-version-min to linker flags.
also using wxwidgets gl component.
2012-10-22 16:45:37 -07:00
Ryan Houdek 3a5b6aed91 Missed a line here 2012-10-09 23:43:22 -05:00
Ryan Houdek 189d12b61c If CG isn't available, still compile and fallback on GLSL 2012-10-09 23:43:22 -05:00
Scott Moreau 80c15f21b4 Add SDL2 support to build system.
Dolphin code already builds against SDL2 but the build system never
checks for SDL2, which is the what latest SDL is called now. SDL2
replaces SDL 1.3. This allows Dolphin to be build against SDL2, which
activates certain new features such as the haptic interface.
2012-07-12 19:47:17 -06:00
Pierre Bourdon c83f87dfc4 Moved the _FILE_OFFSET_BITS=64 definition before the dependency checks. Fixes compilation on Linux x86. 2012-05-17 00:11:55 +02:00
Pierre Bourdon fdff4cb1ff Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_FileIO.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
	Source/VSProps/Dolphin.Win32.props
	Source/VSProps/Dolphin.x64.props
2012-05-16 09:27:37 +02:00
Glenn Rice 40640217f1 Fix hide mouse cursor on linux.
Fix emulator window position when rendering to main on linux.
Allow building against wxWidgets 2.9.3 on linux.
2012-05-02 14:40:40 -05:00
godisgovernment d5ae3e90a8 cmake elif() -> elseif() 2012-03-26 03:27:18 +00:00
Shawn Hoffman 4130116a85 fix building on OS X when no OSX SDK is installed. (i.e. just commandline tools) 2012-03-22 18:11:45 -07:00
Shawn Hoffman f7423a0a4f Merge branch 'master' into wxw3-update
Conflicts:
	Source/Core/DolphinWX/Src/LogWindow.cpp
2012-03-22 17:57:38 -07:00
Pierre Bourdon 5242f09104 Fix Linux build: search for gthread-2.0 and pangocairo, then add both these libs to wx dependencies 2012-03-23 01:06:45 +01:00
Shawn Hoffman c0992cc73e Build fix:
Don't use isascii() - just do it ourselves
Bump required wxw version (for shared libs)
There still seems to be linking issues on some linux distros, I can't reproduce it though...
2012-03-19 23:16:01 -07:00
Shawn Hoffman 6091774ade get wxw3 building on linux
kind of hacky because currently, shared libpng is always expected to be used
on darwin, libpng in externals is always used
2012-03-19 04:59:49 -07:00
Andrew de los Reyes ed3f9ce288 Switch Mac compiler to Clang.
Specifically:

- Look for clang and clang++ in the new (Xcode 4.3) location first,
  then the old (Xcode 4.2) location.

- Look for sysroot in the new (Xcode 4.3) location first, then the old
  (Xcode 4.2) location.
2012-03-18 15:11:31 -07:00
Pierre Bourdon b69a1d225a Use -std=gnu++0x instead of -std=c++0x
Bluez uses the non standard "typeof" instead of "__typeof__" in bluetooth.h.
Both GCC and Clang reject that with std=c++0x but accept it with gnu++0x.
2012-03-08 10:01:40 +01:00
Shawn Hoffman 6eb2cb2666 Merge branch 'master' into wii-network 2012-02-27 22:36:41 -08:00
Jordan Woyak 8a8dc77ef1 enable c++11 compilation in cmakelists 2012-02-24 14:19:24 -06:00
Pierre Bourdon 40e6e9b9fa Fix Linux build 2012-02-18 09:50:21 +01:00
Maarten ter Huurne 15dac4584f Override PATH on OS X to avoid picking up pkg-config from MacPorts. 2011-12-19 02:57:00 +01:00
Maarten ter Huurne 6f27a29d51 Prefer static libs from Externals on OS X.
Several people had trouble building against systemwide installed libs.
And even if the build succeeds, the resulting bundle would not work on
other Macs.
2011-12-19 00:57:20 +01:00
Maarten ter Huurne c4eb150c7e Skip XRANDR check if X11 is not found.
Our code does not compile when HAVE_XRANDR=1 and HAVE_X11=0.
This combination would not normally exist, but on OS X we skip the X11
check so it is possible for X11 to be "not found" even when the OS does
support it. On OS X 10.6 this was not a problem because XRANDR is not
detected there, but apparently on OS X 10.7 XRANDR is available.
2011-12-18 14:38:06 +01:00
Maarten ter Huurne 74d552f3ca Removed debug prints. 2011-12-17 15:32:41 +01:00
Maarten ter Huurne 5cbc31b052 Lowered wxWidgets version number requirement to 2.8.9.
I incorrectly assumed that since wx 2.8.8 lacked wxAuiToolBar, the entire 2.8.x
series lacked it. In fact in wx 2.8.9 this feature was added.

Thanks to Glenn Rice for spotting this issue.
2011-12-16 02:46:55 +01:00
Maarten ter Huurne e13f4644bb Link weakly to OpenCL on OS X.
This makes sure Dolphin still loads when OpenCL is not available.
OpenCL was added in OS X 10.6, while we also support 10.5.
2011-12-15 06:54:42 +01:00
Maarten ter Huurne 27590c3a8f Suppress link warning about QuickTime being 32-bit only.
If we are actually missing symbols because a required architecture is missing
from a library, we'll get a link error as usual, so suppressing this warning
is pretty safe.
2011-12-15 06:41:39 +01:00
Maarten ter Huurne 4c7c29b8b6 Let "make install" on OS X copy the bundle to /Applications.
The "dsptool" executable is not included in the bundle.
The "tester" executable is not included in the bundle and it no longer
installed on other platforms, since it is neither expected nor useful
to install unit tests.
2011-12-14 02:50:36 +01:00
Maarten ter Huurne 344ca5d360 Applied compile and link flags from SCons build for OS X to CMake build.
The following changes were made:
Restricted the "-march=core2" option to i386 because the first Intel Macs
had Intel Core CPUs, not Core2.
Removed the "-mdynamic-no-pic" flag as GCC lists it as a PPC specific flag.
Removed "-Wl,-read_only_relocs,suppress" because it seems to be related
to "-mdynamic-no-pic" and I see no need for it.
Removed "-Wextra-tokens -Wnewline-eof" because they are GCC specific and
not OS X specific.
2011-12-11 21:27:06 +01:00
Maarten ter Huurne 9ede977a56 Added QuickTime framework as dependency for wxWidgets on OS X.
It seems that the required functions are in an already included framework
on x86_64, but on i386 we depend on QuickTime.
2011-12-11 21:24:40 +01:00
Maarten ter Huurne c1cf4f80cf Added bundle version and copyright string to OS X bundle info. 2011-12-11 16:21:17 +01:00
Maarten ter Huurne f9133a7376 Link to the required OS X frameworks.
Previously, there was just one list of frameworks regardless of which part
of the code depended on which frameworks. Now we keep separate lists for
the Dolphin core, the Dolphin GUI and internal use by wxWidgets.
2011-12-07 08:26:44 +01:00
Maarten ter Huurne 24dcb7922c On OS X, compile only against standard system libs and Externals.
Libraries from MacPorts, Fink or manually installed stuff in /usr/local
will be ignored. This ensures the binary will work on other machines as well.
2011-12-05 05:44:35 +01:00
Maarten ter Huurne 54ea98b0a9 Refer to the wxWidgets libary as "wx" instead of its full path name.
This ensures that additional library dependencies declared for "wx"
using target_link_libraries() are applied.
2011-12-05 05:39:41 +01:00
Maarten ter Huurne d440dfe9b2 Link against systemwide LZO using the info gathered by check_lib(). 2011-12-05 05:33:35 +01:00
Maarten ter Huurne bb182d88b7 Link against systemwide OpenCL on OS X. 2011-12-05 05:26:28 +01:00
Maarten ter Huurne 20fa8bb9f2 Fixed linking to wxWidgets built from Externals under OS X. 2011-12-05 01:10:45 +01:00
Maarten ter Huurne 7417ecf67f Tell the linker to not treat its input as Objective C/C++ source.
Flags in CMAKE_CXX_FLAGS are passed to both compile and link commands.

A cleaner solution would be to use set_source_files_properties().
However, currently there are headers (StdThread.h, maybe more) that contain
Objective syntax. So it is not easy to determine exactly which source files
should be compiled as Objective C/C++ and that set can quickly change when
certain #include directives are modified. The solution for that would be to
move all uses of Objective syntax to implementation (.cpp) files and then
apply set_source_files_properties() to those.
2011-12-05 00:57:51 +01:00
Maarten ter Huurne 7f578ce1ae Use Externals/wxWidgets3 instead of Externals/wxWidgets under OS X.
The "3" variant has some extra stuff merged that helps under OS X.
This split should not last longer than until the wxWidgets 3.0 release.
2011-12-04 15:34:23 +01:00
Maarten ter Huurne ffb06c23ac Added version check for wxWidgets.
If the systemwide wxWidgets is too old, we can fall back to the version
from Externals instead of letting the build fail.

Note that while the version in Externals appears to be wxWidgets 2.8,
it has post-2.8 features manually added to it (wxAuiToolBar), so the
version check only accepts 2.9 or higher.
2011-12-04 03:37:02 +01:00
Maarten ter Huurne 7c92b94bc1 Use Cg from Externals if it is not found systemwide. 2011-12-04 02:48:01 +01:00
NeoBrainX 06e640532a Various changes which improve FreeBSD support.
Patches by martymac, all credits go to him ;)
2011-08-27 20:42:11 +02:00
Jordan Woyak 70dffdc3e1 oops 2011-08-22 20:26:10 -05:00
Jordan Woyak 1528c95fe9 Remove hash from revision description for cmake and windows. 2011-08-22 20:06:17 -05:00
Shawn Hoffman 0090c9db9e Merge branch 'new-rev-string' 2011-08-22 08:43:32 -07:00
Jordan Woyak 9613713e14 Append -dirty if the working tree is dirty. 2011-08-21 17:43:56 -05:00
Jordan Woyak bc3ab4ff40 Fix old comment 2011-08-21 17:43:30 -05:00
Jordan Woyak 1236bdffac Hide master branch in titlebar properly. 2011-08-21 17:43:19 -05:00
Jordan Woyak e8fe15c3f7 Make titlebar and about dialog fancy for cmake build.
Windows needs fixing.
2011-08-21 17:43:05 -05:00
NeoBrainX 13ea56895d Should work now. 2011-08-22 00:27:55 +02:00
Jordan Woyak 5a8a1bc6a6 Try again. 2011-08-21 14:34:32 -05:00
Jordan Woyak faf6ce6d85 Fix cmake/sfml version issue on Arch Linux. 2011-08-19 21:12:07 -05:00
Shawn Hoffman 6bc81f5ac4 git compat:
add git support to cmake and make_svnrev.h.js
add .gitignore
2011-08-14 13:17:57 -07:00
Glenn Rice 7135dba54e Add the DSPTool and UnitTests to the cmake build. They are optional, and to enable them add -DDSTPTOOL and -DUNITTESTS to the cmake command line.
Also, don't check to see if a directory is a wad file.  They aren't.  This removes an annoying and invalid debug assertion with the debug build.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7682 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-18 01:47:55 +00:00