Commit Graph

662 Commits

Author SHA1 Message Date
Anthony J. Bentley eb4cae78aa OpenBSD neither provides nor requires libdl and librt. 2016-07-17 18:06:38 -06:00
Anthony J. Bentley 5bab6210ef Use the standard stat()/fstat() interfaces, not nonstandard *64().
Most modern Unix environments use 64-bit off_t by default: OpenBSD,
FreeBSD, OS X, and Linux libc implementations such as Musl.

glibc is the lone exception; it can default to 32 bits but this is
configurable by setting _FILE_OFFSET_BITS.

Avoiding the stat64()/fstat64() interfaces is desirable because they
are nonstandard and not implemented on many systems (including
OpenBSD and FreeBSD), and using 64 bits for stat()/fstat() is either
the default or trivial to set up.
2016-07-17 04:30:00 -06:00
Mat M fac7d09091 Merge pull request #3737 from EmptyChaos/update-wx
Externals: Update wxWidgets to 3.1.0
2016-07-15 09:48:14 -04:00
EmptyChaos 822326eea9 Update wxWidgets to 3.1.0
From wxWidgets master 81570ae070b35c9d52de47b1f14897f3ff1a66c7.

include/wx/defs.h -- __w64 warning disable patch by comex brought forward.

include/wx/msw/window.h -- added GetContentScaleFactor() which was not implemented on Windows but is necessary for wxBitmap scaling on Mac OS X so it needs to work to avoid #ifdef-ing the code.

src/gtk/window.cpp -- Modified DoSetClientSize() to direct call wxWindowGTK::DoSetSize() instead of using public wxWindowBase::SetSize() which now prevents derived classes (like wxAuiToolbar) intercepting the call and breaking it. This matches Windows which does NOT need to call DoSetSize internally. End result is this fixes Dolphin's debug tools toolbars on Linux.

src/osx/window_osx.cpp -- Same fix as for GTK since it has the same issue.

src/msw/radiobox.cpp -- Hacked to fix display in HiDPI (was clipping off end of text).

Updated CMakeLists for Linux and Mac OS X. Small code changes to Dolphin to fix debug error boxes, deprecation warnings, and retain previous UI behavior on Windows.
2016-06-26 15:25:29 +10:00
comex 659d079d5c Fix in-tree build (cmake .) on OS X.
OS X uses a case insensitive filesystem by default: when I try to build,
a system header does #include <assert.h>, which picks up
Source/Core/Common/Assert.h.  This only happens because CMakeLists adds
'${PROJECT_BINARY_DIR}/Source/Core/Common' as an include directory: in
an out-of-tree build, that directory contains no other source files, but
in an in-tree build PROJECT_BINARY_DIR is just the source root.

This is only used for scmrev.h.  Change the include directory to
'${PROJECT_BINARY_DIR}/Source/Core' and the include to
"Common/scmrev.h", which is more consistent with normal headers anyway.
2016-06-25 23:57:17 -04:00
Pierre Bourdon ac267a2940 5.0 release 2016-06-24 10:09:07 +02:00
Chris Burgener 09dbe2337c Merge pull request #3904 from dhustkoder/master
_DEFAULT_SOURCE flag added, and clang check version for IsTriviallyCopyable m…
2016-06-22 10:54:39 -04:00
dhust 19fed720ff _DEFAULT_SOURCE flag added, and clang check for IsTriviallyCopyable macro
fix clang ver check for 4.0 +

using clang macro __has_feature

__GLIBCXX__ check added

fix __has_feature
2016-06-19 18:32:19 -03:00
Pierre Bourdon 49ce9b153d scmrev: Add "distributor" option.
Used to distinguish between Dolphin distributions (e.g. "dolphin-emu.org",
"Ishiiruka", etc.).
2016-06-18 18:31:40 +02:00
Pierre Bourdon c4f5c471bb Externals: Add libcurl. 2016-06-18 18:31:40 +02:00
Pierre Bourdon 96acd3e7ff Merge pull request #3869 from delroth/out-of-git
Provide better scmrev defaults without .git
2016-06-05 09:27:57 +02:00
Pierre Bourdon bae4f2c7db Provide better scmrev defaults without .git
Use the default values from CMakeLists.txt (previously used for CPack). We
usually update these when tagging a new major version.
2016-05-29 18:29:40 +02:00
Pierre Bourdon 2a79ac0d28 Merge pull request #3734 from Sonicadvance1/no_x86_pie
Make sure x86_64 isn't compiled with PIE.
2016-05-29 17:32:20 +02:00
orbea 2b59b1ac45 mandir added 2016-04-02 13:16:29 -07:00
Ryan Houdek 8b01158c95 Make sure x86_64 isn't compiled with PIE.
Our x86_64 recompilers don't support PIE and fail amazingly if enabled.
Disable it so package maintainers(!) or other randoms don't accidently enable it when we don't support it.
2016-03-14 13:31:55 -05:00
Tillmann Karras d007711eb6 CMake: fix warning 2016-03-13 04:02:27 +00:00
Jeremy Newton feae5ff3d8 Move linux files to Data 2016-03-09 10:58:54 -05:00
Mystro256 84483a1076 Add manpages for Linux and include them in spec file
Note that the manpages are placed in Data
2016-03-09 10:58:03 -05:00
Mystro256 2e367fb052 Add option to use shared gtest library if available 2016-03-05 11:54:17 -05:00
James Cowgill 8c19e80450 Replace the XPM desktop icon with an SVG
This PR installs an SVG icon to use as the main icon for dolphin in Linux
desktop environments (through the .desktop file) and removes the currently used
XPM icon. I've also added a 48x48 PNG for any desktops which don't support SVG
icons.

This has been the recommended way to ship application icons since forever
according to the Icon Theme Spec:
https://www.freedesktop.org/wiki/Specifications/icon-theme-spec/

This is also a prerequisite for dolphin appearing in the GNOME Software Centre
which does not support XPM icons.
2016-02-20 15:32:52 +00:00
Ryan Houdek 2f7e3ae58e CMakeLists cleanup and enable Android headless building. 2016-02-05 11:24:11 -06:00
Ryan Houdek 628e9bad92 Support a headless EGL option.
This is a new option to support completely headless running of Dolphin without X11 on systems that can properly support it.
2016-01-27 15:04:14 -06:00
Ryan Houdek 74478addeb Move Android JNI bits from DolphinWX to the Android folder. 2016-01-06 15:36:44 -06:00
Anthony Serna 82c72cf76b [UI] More DQt removals 2016-01-05 20:02:40 -06:00
spxtr 2f50560602 Add support for sending game memory changes to outside processes 2015-12-29 17:59:16 -08:00
spxtr 949f25175b DolphinQt2 2015-11-27 00:33:07 -08:00
Markus Wick a498c684a2 Merge pull request #2304 from linkmauve/xdg-basedir
UICommon: Respect XDG Base Directory Specification on POSIX systems
2015-11-12 12:31:24 +01:00
Mathieu Comandon 3cecbae324 Make LINUX_LOCAL_DEV a CMake option 2015-11-10 14:15:08 -08:00
Emmanuel Gil Peyrot e20b08491c UICommon: Respect XDG Base Directory Specification on POSIX systems. 2015-11-10 21:53:29 +00:00
Mathieu Comandon f2ae1a2545 Implement relocatable builds on Linux
- Change the path of the Sys folder to the executable's location
- Add LINUX_LOCAL_DEV flag to use relocatable version on Linux
- Add CMake definition for relocatable build
2015-11-10 12:49:04 -08:00
spxtr d9d6cf8eda GC controller input using named pipes
Currently only works on unix, but can be extended to other systems. Can
also be extended to do wiimotes.

Searches the Pipes folder for readable named pipes and creates a dolphin
input device out of them. Send controller inputs to the game by writing
to the file. Commands are described in Pipes.h.
2015-10-24 20:20:03 -07:00
Tillmann Karras 4eace2b49e CMake: simplify FindMiniupnpc.cmake
miniupnpc.h provides MINIUPNPC_API_VERSION since 1.7 and we require 1.7
or later, so there is no reason to have version detection code for older
versions.
2015-10-12 02:26:35 +02:00
Christian Widmer b99d1a0a20 Fix OProfile discovery and drop bfd dependency
Adds a cmake module to correctly discover OProfile and adjusts the
corresponding CMakeLists to make use of it. Additionally removes
linking against the bfd library when compiling with OProfile because
Dolphin does not use it.
2015-10-11 16:27:03 +02:00
shuffle2 a6f04b0e15 Merge pull request #3091 from Tilka/mbedtls
Update mbed TLS (PolarSSL)
2015-10-03 18:00:58 -07:00
Marisa Kirisame 8c5744bca7 miniupnpc API version 14 changed the upnpDiscover functions, adding an argument for TTL (should default to 2)
this enables support for that should the build system have that specific version installed, the miniupnpc bundled in the project is unchanged
2015-09-30 16:50:58 +02:00
Tillmann Karras f6795466e7 mbedTLS: adapt Dolphin code 2015-09-26 07:09:19 +02:00
Lioncash 8b027f6ed7 CMakeLists: Bump C++ compilation from gnu++0x to c++1y 2015-09-06 04:10:40 -04:00
Scott Mansell d2578000bb Merge branch 'stable' 2015-07-04 23:43:36 +12:00
Scott Mansell 0dc8763247 Linux: Don't allow dolphin to be build without evdev support.
Unless explicitly requested.
2015-07-01 10:13:05 +12:00
Scott Mansell ad714993aa CMake: Explicitly pull in threads.
Dolphin uses threads, but never actually pulled them it. Normally
some library we depend on would pull threads in, but there are
potential builds that forget to pull in threads.
2015-07-01 10:13:05 +12:00
Scott Mansell 9065ddf5fa Linux: Disable SDL controller backend by default.
Not deleted, because it's the only option for some other operating
systems such as FreeBSD or any other slightly exotic operating
system someone might try and run dolphin on.
2015-07-01 10:13:05 +12:00
Scott Mansell 2721fdf8a9 Linux: Add an evdev based controller backend, to replace SDL. 2015-07-01 10:13:05 +12:00
comex 4b06089103 Fix linking to libav in non-default path
LIBAV_LDFLAGS has -L, LIBAV_LIBRARIES is just the names of the

I think this is not necessary for other dependencies because they
consist of a single library and go through a different path (check_lib)
that provides the full path to it. e.g. from my CMakeCache.txt:

ICONV_LIBRARIES:FILEPATH=/usr/lib/libiconv.dylib (good)
LIBAV_LIBRARIES:INTERNAL=avcodec;avformat;swscale;avutil (bad)
2015-06-21 15:45:02 -04:00
comex d180e4469e Disable warnings for wx headers
...by telling CMake to use -isystem for the static wx include directory.

AFAICT, this is already done by CMake's FindwxWidgets script in the
shared case.
2015-06-21 13:29:04 -04:00
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
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