Commit graph

107 commits

Author SHA1 Message Date
freiro
b3b35563ce Modularization of copy_msvc_libraries cmake funct
Created a new folder in Citra's root called CMakeModules that should
contain cmake functions used by the various CMakeLists.txt.
2016-12-11 15:36:34 +01:00
Yuri Kunde Schlesner
8e67e13cda Merge pull request #2202 from j-selby/man-docs
Add man documentation
2016-12-08 22:02:04 -08:00
James
d0bc804700 Disable Microprofile on Mingw builds
This fixes a crash when starting games
2016-12-05 13:10:14 +11:00
freiro
7f7bab0fa1 Appending PLATFORM_LIBRARIES instead of redefining them 2016-11-30 16:28:21 +01:00
freiro
662d907aa7 WINVER definition moved to CMake and cleanup 2016-11-30 15:47:09 +01:00
James
00c4cb5aff Add man documentation
Includes both SDL and QT frontends
2016-11-26 13:48:00 +11:00
freiro
6127431299 Move to SDL2-2.0.5 2016-11-22 09:16:04 +01:00
James Rowe
f0dcbd3f73 Add mingw compile support 2016-11-13 23:50:46 -07:00
Jan Beich
c5160cdb45 build: don't install freedesktop.org metadata for SDL2-only builds
Citra SDL2 doesn't have a launcher, and citra.desktop tries to execute
citra-qt which is N/A unless built with ENABLE_QT. Limiting installed
files to one of the options also makes it easier to split them into
separate non-conflicting packages downstream.
2016-10-27 23:28:30 +00:00
Jan Beich
01f9251b53 build: add default install for DragonFly, Solaris, etc. 2016-10-27 23:28:30 +00:00
Jan Beich
9139888795 build: clock_gettime() is in libc on BSDs 2016-10-27 23:28:30 +00:00
Jan Beich
0eb266d3ee build: libc may not provide iconv() on Unix
/usr/bin/ld: ../common/libcommon.a(string_util.cpp.o): undefined reference to symbol 'libiconv_open'
2016-10-27 23:28:30 +00:00
Anthony J. Bentley
f78b6cd433 common: convert to standard stat()/fstat() interfaces
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-10-27 23:28:30 +00:00
bunnei
63451ee190 dynarmic: Add new submodule. 2016-09-15 17:49:25 -04:00
bunnei
0ae6b3a14a CMakeLists: Set Boost_INCLUDE_DIR. 2016-09-15 17:49:21 -04:00
bunnei
286220a292 Revert "MSVC: Add RelWithDebInfo and removing debugging from Release." 2016-09-01 17:06:34 -04:00
James Rowe
e9bae4bb92 MSVC: Add RelWithDebInfo and removing debugging from Release.
This should reduce build size on windows from roughly 12MB compressed to 7MB
2016-08-31 20:45:38 -06:00
bunnei
0e55597731 qt: Use 5.7 on Windows. 2016-08-15 22:52:15 -04:00
James Rowe
56b2f0da7b CMake: Fix for QT 5.7 overwriting -std=c++1y flag
In QT 5.7 they added a new check for CXX features which appends a minimum
required standard to the CXX_FLAGS. Because we were writing the flag
directly previously, cmake assumed it needed to add a c++11 flag to the
build. This tells cmake to use c++14 on every build.
2016-08-04 17:16:16 -06:00
Emmanuel Gil Peyrot
4b1df0ba45 Remove the -msse4.1 on ¬MSVC.
This option makes the generated binary crash with an illegal
instruction when the target CPU doesn’t support the SSE4.1 extension
(see #1968), with no noticeable performance increase compared to a
generic build.
2016-07-23 17:10:32 +01:00
Lioncash
555cb8eba1 CMakeLists: Drop support for Qt 4 2016-06-17 10:48:40 -04:00
MerryMage
df2d284556 Tests: Run tests on CI 2016-05-19 19:28:08 +01:00
MerryMage
638de286c2 AudioCore: SDL2 Sink 2016-05-07 11:32:48 +01:00
MerryMage
2d50954f85 Externals: Add soundtouch 2016-04-28 13:33:14 +01:00
Sam Spilsbury
72fc7f4894 CMakeLists: Use imported version of Threads::Threads
This requires bumping up to a minimum of CMake 3.1. The benefit
of using the imported target is that you can switch to the -pthread
compiler flag on request, which may be necessary for some systems if
available.
2016-04-24 23:39:25 +08:00
Sam Spilsbury
1ebeffcaff CMakeLists: Use CMAKE_THREAD_LIBS_INIT 2016-04-23 11:48:58 +08:00
Lioncash
ff24c3219f CMakeFiles: Compile as C++14 2016-04-03 15:45:41 -04:00
MerryMage
f2c32b7336 Dependencies: Remove GLFW, Add SDL2
citra: Remove GLFW, Add SDL2

FindSDL2: Do not CACHE SDL2_* variables if library is not found

EmuWindow_SDL2: Set minimal client area at initialisation time

EmuWindow_SDL2: Corrections

EmuWindow_SDL2: Fix no decorations on startup on OS X

cmake: windows_copy_files
2016-03-02 14:09:02 +00:00
Tony Wasserka
72d767c35a Enable RTTI on Windows builds. 2015-11-12 16:07:49 +01:00
Yuri Kunde Schlesner
f3e006d3a6 CMake: Silence more MSVC "deprecation" warnings 2015-09-14 17:39:51 -03:00
Yuri Kunde Schlesner
6c6513e775 CMake: Make all cache options appear even in case of errors
The `option` commands have been moved to the top of the file, so that
the relevant options are registered in the CMake cache even if one of
the required libraries is not found. This solves an ergonomic problem
when using bundled libraries where you have to first download GLFW
before being able to select the option to also download Qt.
2015-09-08 20:16:34 -03:00
Yuri Kunde Schlesner
005a5a2763 CMake: Point binary downloads to new official repo 2015-09-08 19:35:15 -03:00
Yuri Kunde Schlesner
4e4896ab6e CMake: Remove support for QTDIR environment variable
Using this variable is problematic is the user has several versions of
Qt installed on their system. There is no way to know ahead of time if
the Qt version pointed to by QTDIR matches the toolchain that is being
targeted.

The Qt installation path can still be easily specified if it's not found
by CMake by setting the Qt5_DIR cache variable after the initial
configuration run, so this shouldn't present an usability issue.
2015-09-08 19:35:14 -03:00
Yuri Kunde Schlesner
3351ac9afb CMake: Don't complain when Boost isn't found in the system. 2015-09-08 19:35:13 -03:00
Yuri Kunde Schlesner
9d2892aec1 CMake: Use HINTS option instead of modifying CMAKE_PREFIX_PATH for Qt 2015-09-08 19:35:12 -03:00
Yuri Kunde Schlesner
e351e56465 CMake: Add option to download Qt and GLFW binaries over HTTP 2015-09-08 19:35:12 -03:00
Yuri Kunde Schlesner
4bb03a1f0b CMake: Fix architecture detection on MSVC
CMAKE_SYSTEM_ARCHICTETURE always returns the *host* not target arch
when using the MSVC generators. (CMake bugs 15170 and 14342.)
2015-09-08 19:35:11 -03:00
Yuri Kunde Schlesner
e5cc2e2ef0 Replace the previous OpenGL loader with a glad-generated 3.3 one
The main advantage of switching to glad from glLoadGen is that, apart
from being actively maintained, it supports a customizable entrypoint
loader function, which makes it possible to also support OpenGL ES.
2015-08-30 08:45:56 -03:00
Yuri Kunde Schlesner
424b0fa646 Integrate the MicroProfile profiling library
This brings goodies such as a configurable user interface and
multi-threaded timeline view.
2015-08-24 22:16:28 -03:00
darkf
8d212ff881 Fix building under MinGW 2015-08-17 22:21:14 -07:00
bunnei
4ffc095fa3 Rename ARCHITECTURE_X64 definition to ARCHITECTURE_x86_64. 2015-08-15 18:03:27 -04:00
bunnei
432d1c5263 Common: Ported over Dolphin's code for x86 CPU capability detection. 2015-08-15 17:33:44 -04:00
Yuri Kunde Schlesner
12f78c2ba6 Enable linker optimizations in MSVC Release builds
Apparently /DEBUG implicitly disables linker optimizations. This
explicitly re-enables them, giving a 40% reduction in binary sizes and
a very slight runtime speed improvement.
2015-07-28 14:32:29 -03:00
JSFernandes
256eb24777 Fix permissions in pre-commit hook 2015-07-14 00:58:18 +01:00
Greg Wicks
9930ef72dd Implement new argument parsing using getopt and add the corresponding library to externals 2015-07-12 15:49:23 -04:00
Yuri Kunde Schlesner
a24a0fbd8a CMake: Fix Debug build configuration in MSVC
Debug was missing compiler flags, causing MSVC to default it to building
with optimizations enabled (making for a not very useful binary for
actual debugging...). Additionally, the variables were re-organized to
remove some redundancy, the old Release build type was removed, and
RelWithDebInfo was renamed to take its place instead.
2015-07-09 16:10:08 -03:00
Yuri Kunde Schlesner
772ef097ea Merge pull request #839 from Lectem/whitespacepolicy
Enforce the "no tab, use spaces" policy with a pre-commit hook.
2015-06-21 14:21:02 -07:00
Lectem
85183a702a force no-tab/trailing spaces with git hook
Remove unneeded stuff from pre-commit script

The check against an empty commit was not needed (it is only a security for the 1st commit after git init).
It could also possibly pose problems because of the redirection to /dev/null on some windows systems.

newline at EOF & fixed indent
2015-06-09 19:59:39 +02:00
Emmanuel Gil Peyrot
b1503b2020 Remove every trailing whitespace from the project (but externals). 2015-05-29 21:59:29 +01:00
Yuri Kunde Schlesner
33c57361a9 Update bundled GLFW to 3.1.1
It may be necessary to fix the CMake paths manually for an exsting CMake
cache after this change.
2015-05-25 00:42:21 -03:00