Commit Graph

740 Commits

Author SHA1 Message Date
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
NeoBrainX bf29ea9635 Version bump for CPack in trunk as well ;)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7622 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-24 15:28:43 +00:00
Shawn Hoffman 2309e36b28 Revert changes made for 3.0 release 2011-08-20 14:05:43 -07:00
NeoBrainX 35d1599724 Tag Dolphin 3.0
git-svn-id: https://dolphin-emu.googlecode.com/svn/tags/3.0@7615 8ced0084-cf51-0410-be5f-012b33b47a6e

3.0: Removed SVNRevGen stuff; changed revision string to 3.0; Removed installer since it was vastly outdated; Bumped CMake major version to 3

git-svn-id: https://dolphin-emu.googlecode.com/svn/tags/3.0@7616 8ced0084-cf51-0410-be5f-012b33b47a6e

3.0: Add the languages which were chosen to be release-worthy.
Uhm, unless I forgot something important, I guess we can declare 3.0 as officially released now and stuff. Cheers ;)

git-svn-id: https://dolphin-emu.googlecode.com/svn/tags/3.0@7617 8ced0084-cf51-0410-be5f-012b33b47a6e

3.0: Fix SCons build

git-svn-id: https://dolphin-emu.googlecode.com/svn/tags/3.0@7627 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-23 23:11:12 +00:00
Glenn Rice b705b92075 On linux don't check to see if the xdg-screensaver program is present at build time. Just build in the code to call the program. If the program does not exist it will silently fail, and the screensaver will not be inhibited.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7606 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-17 13:14:55 +00:00
Glenn Rice 47135170d8 Fix the cmake build for natty to find the glib libraries properly. Yuck!
Fix a few minor compiler warnings.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7551 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-19 14:26:03 +00:00
Glenn Rice d5c4976532 Linux build fix.
Also move the primary translation pot file to the external repository to facilitate updating translations when strings in the code are changed.  Now the only time the primary dolphin repository needs to be changed for translations is when a new language is added.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7438 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-06 13:58:03 +00:00
Glenn Rice 4ccb31e7af Move translation po files to an external svn repository. The location is http://dolphin-emu-translations.googlecode.com/svn/trunk. I have given some of the primary dolphin committers write access to that repository. If you are a dolphin-emu committer, and I didn't give you access, and you want it, just let me know.
Now po files can be updated as often as we want without bumping up the svn revision numbers of dolphin itself.  I left the dolphin-emu.pot and primary build files in the primary dolphin-emu svn.  The dolphin-emu.pot file will still need to be updated on occasion to reflect changes to strings in the program.  The gettextize script will still work as before for this.
Also added Arabic translations to the build thanks to mansoor.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7343 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-14 13:33:11 +00:00
Glenn Rice 024a87af7a Fix the Host_GetKeyState deadlock caused by Billiard's latest changes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7304 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 21:58:54 +00:00
Glenn Rice fb4f317503 Make OpenMP optional on linux. For now it is on by default, but you can disable it by adding -DOPENMP=OFF to the cmake command line.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7301 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 16:12:06 +00:00
Glenn Rice d40e7f26a0 Build fix of linux build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7296 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 12:45:29 +00:00
Glenn Rice b8b81001bd Linux build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7288 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 02:32:09 +00:00
Glenn Rice 8e91183897 Add Portuguese translations thanks to Zilaan.
Update several of the other languages.
Fix those pesky DSPIntUtil.h compiler errors.
Clean up some remnants of building the plugins in the primary CMakeLists.txt file.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7127 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-11 02:38:23 +00:00
nakeee 90bae5d57f A bit more cmake osx work
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7111 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 07:45:46 +00:00
nakeee 9bbd5b9157 Small fix for cmake on osx, more work left to be done
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7096 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-07 15:51:38 +00:00
Jordan Woyak dfe84ce0ac Removed the Lua script console and Externals/Lua. The script console was incomplete and no one was working on it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7051 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-03 20:41:23 +00:00
Glenn Rice 8b309e26dc Remove PluginSpecs.h. Merge the few needed enums from that file into Common.h for now. I am up for suggestions on a better place for those.
Fix frame dumping on linux.
Make sure that on screen messages get cleared between games.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7039 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-02 04:40:27 +00:00
Soren Jorvang b3a183dffe Core and DSPCore now have mutual dependencies, which breaks the
assumption on the part of many linkers that static libraries make
up a DAG, so merge libdspcore into libcore.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6967 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 14:06:48 +00:00
Soren Jorvang e429d75489 Clean up nowx and stop cocoaApp busy-waiting in the main loop.
Set up an exit(3) task to shut down real wiimotes. This shouldn't
really be necessary, but we do currently handle a number of error
conditions by calling exit(3).

Retire the inputuicommon library.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6852 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-15 10:33:07 +00:00
Glenn Rice 5a175c16c3 Fix the cmake version check for gtk.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6816 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-11 16:09:39 +00:00
Glenn Rice 9bbed569d9 Add the last few languages added to the windows build.
Make pthreads linkage precise for the nowx build.  Fixes issue 3875.
Fall back to pkg-config for gtk+-2.0 if cmake is version 2.8.2.  That version has a bug that doesn't detect gdk-pixbuf-2.0.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6810 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-11 02:18:34 +00:00
NeoBrainX 81638396c0 Some more work on CMake on Windows:
- add support for precompiled headers with MSVC
- compile with _FILE_OFFSET_BITS=64 and _LARGEFILE_SOURCE only for our sources, some dependencies seem to have problems with it enabled...
- disable -Wall for MSVC too prevent warning flood
- rename aes_cbc.c and aes_core.c to cpp files since it makes stuff a lot easier and there's really no reason not to do it since they had been compiled as C++ before anyway

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6797 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09 16:36:19 +00:00
Glenn Rice 05198a8e4e Go back to using FindGtk for the cmake build. The module is fixed with later versions of cmake. We may need to check the cmake version and fall back to pkg-config for those using older versions. Please test.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6787 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-08 19:14:45 +00:00
Glenn Rice 34732999a1 Added some languages:
Added Norwegian Bokmål thanks to KHRZ
Added Polish thanks to Baszta
Added Russian thanks to Kein

Also cleaned up the appearance of the GFX config dialog a bit, fixed a minor issue in the cmake build, and fixed the nowx build.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6786 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-08 17:35:34 +00:00
Glenn Rice aac34f037f Add profiling (via oprofile) to the cmake build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6782 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-08 05:27:18 +00:00
Glenn Rice 418357190b Make the gui more accurately reflect connected wiimotes. Also connect and disconnect wiimotes when settings are changed in the wiimote configuration dialog during emulation.
Fix the number of connected wiimotes in the configuration dialog so it works with translations, and update translations accordingly.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6771 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-07 15:18:00 +00:00
Glenn Rice 4f6d4f5ddd Add internationalization support. There aren't really any translations yet other than a little French thanks to DavidVag. So now the translators need to go to work. See http://wiki.wxwidgets.org/Internationalization for directions. The binary .mo files are generated at build time on linux. They are provided in Data/Languages for windows. I don't know where they need to go on OSX, but they should be able to be generated there at least. I added a target to generate them on windows, but does not build by default as it requires that msgfmt.exe from the gnu gettext tools be installed and in the path.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6747 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-05 04:35:46 +00:00
Glenn Rice 4e97f83578 Fix a mistake... :P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6733 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-03 22:08:03 +00:00
Glenn Rice 8e184171e7 Remove wiiuse, and use our own code. Works on linux and windows. On OSX it should compile, but I don't know about functionality. Even on linux and windows I can't promise this is bug free (wiiuse certainly wasn't). Please report issues as you find them for all platforms.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6693 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-31 02:10:07 +00:00
Glenn Rice d1631bec3f Build fix for linux. svnrev.h was not found when compiling OCLTextureDecoder.cpp as that include directory was only used in Core/Common.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6610 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 14:02:43 +00:00
Glenn Rice d01542ee0a Fix another part of issue 3716 missed in the last revision.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6602 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-17 22:13:58 +00:00
Glenn Rice 77837b8034 Make sure a few more directories exist when needed. Most package builders (including cmake/cpack) do not install the empty directories in the shared data, and so the paths need to be created at runtime.
Also set up cmake/cpack to create prebuilt binary packages and source packages.
Also change the vertex shader dump file name in the gfx debugger to something that makes more sense.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6587 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 14:47:13 +00:00
Glenn Rice 3d3411f3a0 Added a FASTLOG option for the cmake build to enable all logs.
Also make sure all necessary include directories are added in the check_lib macro.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6571 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-13 05:29:13 +00:00
Glenn Rice 73da637a42 Rename wii wc24 system files to lower case as on the wii itself. These files are not detected on linux unless the case matches. This fixes an issue when Mario Kart Wii (and possible other games) is run with a clean user directory that renders the game unplayable.
Also fix some compiler warnings.
On linux don't install the license.txt file.  Most distributions handle license files via a package.  For example on debian based systems this gives a lintian warning.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6568 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-12 15:25:03 +00:00
Glenn Rice 24569aca3d Fix a linkage issue on newer linux distributions created in revision 6544.
Also update the menu link to dolphin-emulator.com


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6553 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-11 01:09:28 +00:00
Glenn Rice 06013d5eec Make the cmake check_lib macro more versatile. It first tries pkg-config, and if that fails it then check for libraries and required headers. Also cleaned up the output a little bit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6544 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-10 02:00:05 +00:00
Soren Jorvang c2f84fdccb CLRun is now used everywhere but OS X.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6532 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 16:57:32 +00:00
Soren Jorvang 7901e74f00 Reestablish *BSD build using CMake.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6516 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-04 15:19:04 +00:00
Glenn Rice fae12f43c2 Inhibit the screensaver while the emulator is running on linux. Fixes issue 3279. Uses the xdg-screensaver method suggested in that issue.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6477 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-25 02:26:46 +00:00
Glenn Rice 39a4781a5f Check if CLOCK_MONOTONIC is supported before using clock_gettime.
Fix the cmake check to see if -Wno-unused-result is supported by the compiler.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6453 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-21 19:13:55 +00:00
Glenn Rice 86dc8d09fe For the cmake write generate the svnrev.h file in the build directory instead of in the source so that a proper out-of-source build can be done. Fixes issue 3528.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6449 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-20 20:20:12 +00:00
Christian Morales Vega 7632a5abd4 Fix for issue 3507. Compile with old GLEW versions, support user-specified CFLAGS and link plugins to all the used libs.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6441 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-18 23:27:27 +00:00
Glenn Rice f8fbcecad6 Encode framedumps in AVI format on linux as on windows. This adds the additional dependency of libavformat-dev. Remember if you want raw framedumps as before add -DENCODE_FRAMEDUMPS=OFF to the cmake command line.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6438 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-18 16:46:17 +00:00
Glenn Rice 993b40dfa4 Make it possible to build even if the source no longer contains svn versioning information. To use it add "-DDOLPHIN_WC_REVISION=exported" to the cmake command line. Of course you can replace "exported" with whatever you like. Fixes issue 3517.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6430 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-17 05:34:55 +00:00
Glenn Rice a279b391cc Make Linux/MacOSX system checks correct in the cmake build. UNIX is true on both linux and osx. The cmake build probably still doesn't work on MacOSX though.
Also added an option to explicitly disable building with MPG framedumps.  To use it add -DENCODE_FRAMEDUMPS=OFF to cmake on the command line.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6429 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-17 01:03:39 +00:00
Glenn Rice 0644295f3d Build fix. Remove some obsolete code. Fix some compiler warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6428 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 21:14:19 +00:00
Glenn Rice 4f81997c14 Fix the no gui cmake build.
Add a version check for avcodec and swscale libraries.
Fix a bug in the xlib wiimote emulation button configuration.  If you are using a mouse button for wiimote emulation you may need to adjust your settings.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6426 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 04:34:52 +00:00
Glenn Rice d0e8d8a509 Linux cmake build fix. I fixed the scons build as well, so this might fix the macosx build also.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6424 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 00:13:33 +00:00
Glenn Rice 50882c8d30 On linux encode frame dumps in MPG format instead of writing raw frames. To enable this portion of the code you must have libavcodec-dev and libswscale-dev installed (package names for Ubuntu).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6414 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 21:14:26 +00:00
Glenn Rice d6d907f49c Linux needs the -fvisibility=hidden flags. The font selection of the debugger segmentation faults without it. Since the font is selected when the application begins the debugger is rendered inoperable.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6411 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 15:13:04 +00:00
Soren Jorvang 9b12ad6c94 Allow building on OS X with static wx libs.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6400 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 03:10:11 +00:00
Glenn Rice 17662d4ac6 Change the cmake check_lib routine to use REQUIRED/OPTIONAL instead of TRUE/FALSE.
Add a check to see if -Wno-unused-result is supported by the compiler.
Fix some compiler warnings in the wiiuse code.
Fix a bug in the wxGTK panic alert code.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6399 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 22:07:27 +00:00
Soren Jorvang 02edf66b49 Simplify OpenCL compile-time detection on OS X.
Turn wiiuse io_osx.m into Objective-C++.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6398 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 20:02:01 +00:00
NeoBrainX e79fcce1d4 Fix compiling wiiuse on with CMake and SCons
Also fix confusing formatting in a SConscript file

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6395 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 19:36:33 +00:00
Glenn Rice c0bdf4de81 Several little things.
The C version of the GenericLog was being used in both C and C++ branches of the code.
Parent panic alerts by the main_frame so that those windows get the icon too.
Fix a couple of compiler warnings.
Added some checks for libraries in the cmake build.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6385 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-12 05:05:27 +00:00
Glenn Rice c6d95c9087 Remove my DESTDIR hack from the cmake build. It turns out this is built into cmake and works in the same way it does with the gnu autotools. Use it in the standard way with "make DESTDIR=/desired/location install".
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6382 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-11 15:50:52 +00:00
Glenn Rice 7b34def0fc A couple of changes to the cmake build system.
First:  Added a DESTDIR option for package building.
Second:  Change the OpenCL setup.  On both linux and windows use CLRun.  I completely removed the option here.  If CLRun works on MacOSX this should be done there as well, and this change implemented in the scons build also.  Then we could remove the HAVE_OPENCL and the new USE_CLRUN definitions.  Then we will finally have the dynamic detection of opencl set up cross platform.
On a side note, it doesn't seem that the program loaded from TextureDecoder.cl compiles or runs.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6366 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 01:59:53 +00:00
Glenn Rice e72ae04e5c Setup opencl to work like most of the other externals. Autodetect native shared libraries and if not found fall back to the static libs built from the externals.
Also some general clean up of the main CMakeLists.txt file.  I think it is nice to keep the checks and analysis of the results together.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6363 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-09 00:29:07 +00:00
NeoBrainX 4782a8fc5a More CMake work:
- various fixes for using CMake on Windows
- support building external SDL, zlib, CLRun, wxWidgets
- support using precompiled GLew and WiiUse libs on Windows

For what it's worth, I'm not quite sure if I got all the wx files right...
Building with MSVC2008 still doesn't work yet, but is a lot closer now.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6361 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-08 14:04:56 +00:00
Glenn Rice 57f01776ef Fix cmake so it is possible to build without bluetooth support, and the typo that tells you bluetooth is enabled when it is not.
Fixes issue 3464.
Also make the check for portaudio really check the version of portaudio.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6359 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-08 02:51:31 +00:00
Glenn Rice e96943c121 Added an option in the cmake build to disable wxWidgets. To use add "-DDISABLE_WX=1" to the cmake configuration command. Also fixed the nowx build.
Set scons build to autodetect OpenCL by checking for both the library and header instead of having an option.  Unfortunately there probably needs to be a path variable that can be set to the location to look for the headers.  For example on Ubuntu with nvidia, the headers are located in /usr/include/nvidia-current instead of /usr/include, and hence not found by scons.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6355 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-07 17:45:35 +00:00
Glenn Rice d0afc20596 Added checks for portaudio and opencl to the cmake build system.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6351 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-06 03:49:18 +00:00
Glenn Rice 7864f3c087 Missed a needed -fPIC.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6350 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-05 23:38:37 +00:00
Glenn Rice eb167e3ca8 Set "Release" as the default build type. Also cleaned up the CMakeLists.txt file a bit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6346 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-05 04:19:22 +00:00
Glenn Rice 2383e2b0f5 Improve the compiler flags for the cmake build system. -fPIC only needs to be specified for static libraries that are linked into shared libraries. cmake automatically uses -fPIC for shared libraries. Also ported several other needed compiler flags from the scons build. Set up the debug build, enabled with "-D CMAKE_BUILD_TYPE=Release", to work with wxWidgets debugging.
Note that most users will want to use the release build to get a -O3 optimized build.  This can be enabled by adding "-D CMAKE_BUILD_TYPE=Release".


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6344 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-05 02:23:24 +00:00
Glenn Rice 4ac40687ea Okay. Big (possible controversial changes) to the cmake build system.
I am officially killing the local/global build crap.  The "local" build thing should never have existed.  There is now only one build that is essentially what the "global" build was before.  This is the way a proper build system should work.  I will soon write a wiki page to describe how to properly use the cmake build system, and how you can still set things up to get the "local" build from before.  However, that type of build should be considered a developer tool, and not the way that dolphin-emu should be built.
Briefly, to use cmake now do the following from the toplevel of dolphin's source:
mkdir Builddir
cd Builddir
cmake ..
make
make install (you may need superuser privileges)

Note that the scons build is still building dolphin in the old way.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6341 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-04 13:47:17 +00:00
Glenn Rice 4b0d4ded98 More cmake work.
Added autodetection of shared libraries.
Added a check for Xrandr.
Fix OpenAL linkage.
Copy User and Sys directories to lower case in the binary directory.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6338 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-04 02:01:07 +00:00
Glenn Rice 381f92b151 Fix some linkage issues with the cmake build system.
Also X11 is required on *nix systems.
GTK2 is required for building the wxWidgets builds on *nix systems.
Added a check for pulseaudio.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6334 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-03 04:13:36 +00:00
NeoBrainX b75a805859 Add an experimental CMake build system as a possible replacement for SCons. Only tested on Linux, should work on OS X and Windows in the future as well though.
Some notes about this:
- config.h doesn't get written yet, so you'll have to use one generated by SCons
- dependency checking isn't really implemented, yet. Just some basic checks for OpenGL or ALSA, we need something more sophisticated though.
- the OpenGL plugin fails to load for some reason which I can't debug right now due to the libc debuginfo package version in openSUSE not matching the runtime packages
- there's even some support for generating install packages (rpm/deb/.. packages, NSIS installer, etc). It doesn't work properly right now though, since some paths seem to be hardcoded into Dolphin's source
- probably lots of other stuff I forgot... Just take a look at all the TODOs in the CMakeLists.txt files for more information ;P

Additionally, I added various files to the svn:ignore list.

tl;dr: Unless you are a dev or you're building binary packages, this commit shouldn't bother you :P


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6326 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-01 15:47:02 +00:00