Tobias
a11bc03d4a
Port yuzu-emu/yuzu#2253: "Migrate off directly modifying CMAKE_* compilation-related flags directly" ( #4714 )
...
* CMakeLists: Move compilation flags into the src directory
We generally shouldn't be hijacking CMAKE_CXX_FLAGS, etc as a means to
append flags to the targets, since this adds the compilation flags to
everything, including our externals, which can result in weird issues
and makes the build hierarchy fragile.
Instead, we want to just apply these compilation flags to our targets,
and let those managing external libraries to properly specify their
compilation flags.
This also results in us not getting as many warnings, as we don't raise
the warning level on every external target.
* CMakeLists: Move off of modifying CMAKE_*-related flags
Modifying CMAKE_* related flags directly applies those changes to every
single CMake target. This includes even the targets we have in the
externals directory.
So, if we ever increased our warning levels, or enabled particular ones,
or enabled any other compilation setting, then this would apply to
externals as well, which is often not desirable.
This makes our compilation flag setup less error prone by only applying
our settings to our targets and leaving the externals alone entirely.
This also means we don't end up clobbering any provided flags on the
command line either, allowing users to specifically use the flags they
want.
2019-06-18 12:12:32 +02:00
Lioncash
7b3c4b05c6
CMakeLists: Handle VS 2019 in a less annoying manner
...
VS 2019 is binary compatible with VS 2017, so we can safely use
the prebuilt libraries for VS 2017 with VS 2019. This makes it less
annoying to build yuzu with the most up to date toolchain.
2019-05-19 18:29:58 +02:00
khang06
7842decde6
fix clang-format target when using a path with spaces on windows
2019-04-02 21:02:43 -04:00
B3N30
80b4dd21d2
audio_core: dsp_hle: add Media Foundation decoder...
...
* appveyor: switch to Media Foundation API
* Travis CI MinGW build needs an update with the container image
2019-02-09 11:56:51 +01:00
liushuyu
8fe3e37df5
audio_core: fix msvc include issue
2019-02-09 11:55:12 +01:00
B3N30
bd9984b5f8
Addressed reviews
2019-02-09 11:55:12 +01:00
B3N30
c521f3b7d6
CoreAudio::HLE: Add FFmpeg aac decoder
2019-02-09 11:52:31 +01:00
Weiyi Wang
008197a569
Remove scripting switch in cmake
2019-02-02 15:25:23 -05:00
BreadFish64
6609ff83a7
android: set up cmake
2018-11-20 14:24:19 -05:00
Weiyi Wang
724b458a83
Merge pull request #4373 from FearlessTobi/port-1553
...
Port yuzu-emu/yuzu#1553 : "common: Remove memory_util.h/.cpp"
2018-10-26 22:38:18 -04:00
Lioncash
9f6c1b058a
CMakeLists: Use PROJECT_SOURCE_DIR instead of CMAKE_SOURCE_DIR
...
This is more localized to what we want to enforce directory-wise with
the project. CMAKE_SOURCE_DIR indicates the root of the source tree, but
this would cause the wrong behavior if someone included yuzu as part of
a larger buildsystem (for whatever reason). Instead, we want to use the
directory where the "project(yuzu)" command was declared as the root
path reference.
2018-10-27 00:20:52 +02:00
Lioncash
24b931eca1
CMakeLists: Remove EMU_ARCH_BITS definition
...
This was only ever used by the now-removed memory_util functions. Also,
given we don't plan to support 32-bit architectures, this is just a
leftover from citra at this point.
2018-10-26 23:40:08 +02:00
Weiyi Wang
57ce5079bc
Merge pull request #4336 from wwylele/file-util-mingw
...
Only redefine some 64-bit file operation for MSVC
2018-10-21 20:34:48 -04:00
fearlessTobi
9901b289b6
Review comments -part 4
2018-10-20 10:35:55 -04:00
Weiyi Wang
380b83e9bd
cmake: mingw also needs _FILE_OFFSET_BITS=64
2018-10-16 13:23:07 -04:00
Weiyi Wang
fc46bba4f2
CMake: disable scripting on default
2018-10-15 12:23:47 -04:00
bunnei
4a5a97ab88
Merge pull request #4253 from wwylele/string-util-cleanup
...
common/string_util cleanup
2018-10-01 17:52:58 -04:00
Weiyi Wang
1f9f220a3e
Merge pull request #4262 from EverOddish/master
...
Added CMake option to enable/disable scripting support
2018-09-25 22:57:07 -04:00
EverOddish
86ea9d3b1b
Adding description to CMake option
2018-09-25 21:13:02 -04:00
spycrab
fb3af43444
cmake: Output binaries to bin on every platform
2018-09-24 16:36:14 +02:00
EverOddish
fce7afb8dc
Added CMake option to enable/disable scripting support
2018-09-23 19:16:18 -04:00
Weiyi Wang
e087cb9a28
string_util: unify UTF8<->UTF16 conversion to codecvt
2018-09-22 17:23:48 -04:00
Frederic Laing
d8f09f69eb
Addressed feedback
2018-09-21 14:48:55 +02:00
Frederic Laing
596700cb3a
Merge branch 'citra-qt-startup-project' of https://github.com/FreddyFunk/citra into citra-qt-startup-project
2018-09-21 14:48:00 +02:00
Frederic Laing
c4bf626b88
Addressed feedback
2018-09-21 14:47:43 +02:00
Frederic Laing
cc3404a097
Set citra-qt project as default StartUp Project in Visual Studio
...
Set citra-qt project as default StartUp Project in Visual Studio
2018-09-21 14:46:20 +02:00
Frederic L
d26b363562
Set citra-qt project as default StartUp Project in Visual Studio
...
Set citra-qt project as default StartUp Project in Visual Studio
2018-09-14 02:27:33 +02:00
Weiyi Wang
2396e58ee4
Merge pull request #4170 from FearlessTobi/port-stupid-fixes
...
citra_qt: Backport some review fixes of Lioncash
2018-09-04 01:47:03 +03:00
fearlessTobi
2f6f232965
Backport some review fixes of Lioncash
2018-09-01 15:41:46 +02:00
Pengfei Zhu
3b3b0bbdf5
Merge pull request #4152 from citra-emu/port-1030
...
Port yuzu-emu/yuzu#1030 from yuzu: "externals: Update to SDL2-2.0.8"
2018-09-01 12:08:13 +08:00
Tobias
c8bcd35b7a
Port #1030 from yuzu: "externals: Update to SDL2-2.0.8"
2018-09-01 08:12:06 +08:00
Lioncash
ce472144ff
CMakeLists: Add architecture detection for AArch64
...
We already have an equivalent in place for the 32-bit ARM architecture, so we
should also have one for the newer 64-bit ARM architecture as well.
2018-08-31 00:07:01 +02:00
Merry
b49d042200
Merge pull request #4101 from Hedges/GDBClean
...
GDB Modernization
2018-08-25 13:58:38 +01:00
Merry
c292a9e2f5
Merge pull request #4080 from zhaowenlan1779/port-yuzu-922
...
Port "CMakeLists: Change MSVC14 variable to MSVC_VERSION" from yuzu
2018-08-24 19:14:51 +01:00
Vamsi Krishna
6cb9a45154
Add Discord Rich Presence Support ( #3883 )
...
* Initial Discord RPC support
Build with Discord Presence ON
Fix RPC detection
Fix Time elapsed on pause; will now continue to count.
* Fix CI builds with compile flag
Addressed reviews
Fix silly mistakes
Fix 'Not in-game' display
class instead of namespace
Fix
Revamped
remove redundant code
Using Pimpl pattern
* Implement Null class
* Fix config updation
* Addressed All Reviews
* externals/discord-rpc : Updated to latest commit
2018-08-20 11:20:33 +02:00
Jarek Syrylak
bd658a8801
GDB Modernization:
...
- Can be used in either DynCom or Dynarmic mode
- Added support for threads
- Proper support for FPU registers
- Fix for NibbleToHex conversion that used to produce false error codes
- Fix for clang-format failing under Windows
2018-08-16 10:40:52 +01:00
Lioncash
f5ddcef340
CMakeLists: lowercase find_library usage
...
The rest of the CMake script uses lowercase for commands (which is the
general CMake style), making it more consistent with surrounding code.
2018-08-12 13:39:22 +08:00
Lioncash
b399186f18
CMakeLists: Change MSVC14 variable to MSVC_VERSION
...
Use of the MSVC14 variable is discouraged in the CMake documentation
(which makes sense, since MSVC_VERSION is the more general appliable
variable).
2018-08-12 13:38:42 +08:00
James Rowe
6bcbda5ab2
Input: UDP Client to provide motion and touch controls
...
An implementation of the cemuhook motion/touch protocol, this adds the
ability for users to connect several different devices to citra to send
direct motion and touch data to citra.
2018-08-07 21:05:09 -06:00
zhupengfei
bebe04d58e
Revert "CMake: Avoid non-compliant standard library extensions in MSVC"
2018-07-13 19:54:00 +08:00
James Rowe
a3acb5129b
Merge pull request #3773 from kdex/master
...
CMake: Avoid non-compliant standard library extensions in MSVC
2018-05-31 23:07:28 -06:00
darkf
af73dd45f0
audio_core: Implement a cubeb audio sink
2018-05-31 21:01:48 -05:00
kdex
513fffc96b
CMake: Avoid non-compliant standard library extensions in MSVC
2018-05-24 06:23:06 +02:00
James Rowe
80bfd87270
Merge pull request #3730 from FearlessTobi/game-compat-fixes
...
citra_qt: Refactor game list compatibility system
2018-05-11 11:59:53 -06:00
朱鹏飞
57827de38b
citra_qt: camera integration ( #3566 )
...
* Implement camera feature
* Make OpenCVCamera optional
* Fix styling problems
* CI configuration
* Fix CI
* Hopefully final fix
* Hopefully final fix
* Fix all the problems
* Oops..
* Add Qt Multimedia Camera
* Another oops
* Try to fix broken linux CI
* Try to fix broken linux CI
* Fix problems
* Improve UI
* Fix problems
* camera: Add support for Qt <5.10 and fix preview error
* CI: try to fix linux-frozen travis build
* camera: fix problems and add multiple handlers support
* fix CI
* remove most ServiceFramework changes
* Fix format
* Remove last ServiceFramework change
* camera: remove unused interfaces; revert submodule change
* camera: fix CI error
* ci: use ccache for opencv build
* citra_qt: fix configuration error; CI: add mediaservice plugin
* citra_qt: fix clang-format
* citra_qt: fix documentation error
* citra_qt: fix configuration page; camera: fix pausing crash
* citra_qt: fix preview not stopping
* camera: extend handlers length
* camera: fix camera resume error
* camera: fix clang-format
* camera: remove all OpenCV; citra_qt: rewrite configuration
* camera: remove all OpenCV; citra_qt: rewrite configuration
* camera: remove all OpenCV; citra_qt: rewrite configuration
* CI: fix linux ci
* camera: check settings update; citra_qt: fix configuration error
* service_cam: use a better way to apply configuration
* Service_CAM: rewrite camera reload
* cam: fix clang format
* citra_qt: fix argument load issue; camera: base of system camera selection
* citra_qt: Add system camera selection
* camera: fix image upside down, Implement SetFrameRate in Qt Multimedia Camera
* camera: Add missing <array> include, update SetFrameRate and add settings in Qt Multimedia Camera header
* camera: move started in Qt Multimedia Camera header
* QtMultimediaCamera: Move frame rates to SetFrameRate; Set minimum and maximum frame rate
* Update appveyor.yml
2018-05-11 11:42:23 -06:00
FearlessTobi
f354744ad4
citra_qt: Refactor game list compatibilty
2018-05-10 03:57:57 +02:00
FearlessTobi
fbc05fac19
Show game compatibility within Citra
2018-04-16 00:42:58 +02:00
MerryMage
75fa1b2cde
appveyor: Generate PDBs for mingw build
2018-03-27 11:57:34 +01:00
James
9283053701
Move WebServices to use LibreSSL + cpp-httplib ( #3501 )
...
Move WebServices to use LibreSSL + cpp-httplib
Remove curl + openssl build dependencies
2018-03-24 13:19:35 -06:00
Cédric Legrand
67650a4040
Upgrade Boost dependency to 1.66
2018-03-23 21:50:00 +01:00
Cameron Cawley
8d1cab4892
CMake: Set EMU_ARCH_BITS in CMakeLists.txt
2018-03-16 13:29:36 +00:00
James Rowe
b6d94864fd
CMake: Conditionally turn on bundled libs for MSVC
...
Removes the annoying step when generating sln for MSVC where you have to
click an extra checkbox after the first generate fails by using a
conditional option. The USE_BUNDLED options will be off by default, but
if the enable_lib option is enabled and the toolset is msvc, they are
turned ON.
2018-03-09 10:50:08 -07:00
James Rowe
47ea473018
CMake: Add a custom clang format target
...
Checks to see if clang-format can be found, and if it is, sets up a
custom target that will run against the src dir and auto formats all
files. In MSVC, this is a project, and in Makefiles, its a make target
2018-03-09 10:50:08 -07:00
James
9829a84fc6
Remove PICA image dumping/libpng
2018-03-07 09:10:54 +11:00
MerryMage
ce31cf531d
CI: Update to C++17 and use Ubuntu 18.04 as baseline
2018-02-06 17:02:21 +00:00
BreadFish64
d462eacefb
get rid of useless if statement
2018-01-18 10:40:24 -06:00
BreadFish64
c3afd73592
Merge branch 'master' into CompatibiltyReporting
2018-01-18 10:36:32 -06:00
James Rowe
e1ffcde355
Merge pull request #3297 from wwylele/translation-tx
...
citra-qt: add translation support; link translation with transifex
2018-01-18 09:01:00 -07:00
BreadFish64
f985d277c8
get rid of cmake GUI option
2018-01-10 20:39:32 -06:00
BreadFish64
da59ce91c9
require web services
2018-01-10 19:44:09 -06:00
Emmanuel Gil Peyrot
6773546d5c
CMakeLists: Disable architecture checks with -DENABLE_GENERIC=1
2018-01-08 17:54:37 +01:00
BreadFish64
e768a92587
add compatibility reporting to qt frontend
2018-01-01 19:25:38 -06:00
wwylele
500a7f07c2
cmake: generate translation file and add to resource for citra_qt
2017-12-16 13:11:05 +02:00
Lioncash
ab021d163e
CMakeLists: Derive the source directory grouping from targets themselves
...
Removes the need to store to separate SRC and HEADER variables,
and then construct the target in most cases.
2017-12-11 21:11:52 -05:00
KAMiKAZOW
f0fa4a6691
Install Linux icon in hicolor instead of pixmaps
...
hicolor is the preferred location for applications. See https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html#directory_layout
2017-10-15 08:39:48 +02:00
James Rowe
709c89a1d8
Installer: Converted the build scripts to cmake and added an "installer" target
2017-09-28 10:46:05 -06:00
James Rowe
9e847b7549
Build: Enable SSL in mingw by linking against WinSSL
...
The mingw builds aren't submitting telemetry because the curl library
they are linked against is configured to use openSSL and openSSL looks
for the certificates in the users home folder. This keeps it from
contacting web services because it can't communicate over SSL.
This commit adds a download in mingw builds that will download a
precompiled curl for mingw linked against winssl and sspi.
2017-09-11 09:10:17 -06:00
DaMan
40505bc4fc
Add manifest
2017-09-02 20:08:11 -04:00
bunnei
f44a1e0291
common: Add build timestamp to scm_rev.
2017-08-03 20:10:37 -04:00
MerryMage
a08edd67eb
tests: Add tests for vadd
2017-07-23 12:29:51 +01:00
MerryMage
9ca6728217
CMakeLists: Check that all submodules are present
2017-07-16 19:52:05 +01:00
bunnei
33b012e86b
web_service: Add CMake flag to enable.
2017-07-11 18:33:41 -04:00
B3n30
6ba089fafb
Set global definition WIN32_LEAN_AND_MEAN ( #2807 )
...
Set definition WIN32_LEAN_AND_MEAN to avoid windows.h including a lot of libs that are usually not used.
2017-06-24 17:38:16 -07:00
Yuri Kunde Schlesner
2ef7450465
CMake: Set MSVC flags for improved C++ standards conformance
...
This makes the compiler stricter and also enables small optimizations.
2017-06-17 12:21:26 -07:00
Yuri Kunde Schlesner
9a08160ae5
CMake: Re-organize root CMakeLists.txt file
...
Separates the file into sections and re-orders things to fit in them
2017-05-27 23:45:55 -07:00
Yuri Kunde Schlesner
c211368734
CMake: Move definitions of externals to the CMakeLists in that directory
2017-05-27 23:33:14 -07:00
Yuri Kunde Schlesner
d736cca848
CMake: Create INTERFACE targets for microprofile and nihstro
2017-05-27 22:34:52 -07:00
Yuri Kunde Schlesner
74afcd5328
CMake: Add SoundTouch include path to target property
2017-05-27 22:09:28 -07:00
Yuri Kunde Schlesner
cb49df156d
CMake: Use target properties to add inih include paths
2017-05-27 21:59:02 -07:00
Yuri Kunde Schlesner
776cb91785
CMake: Define an interface target for SDL2 definitions
2017-05-27 21:38:49 -07:00
Yuri Kunde Schlesner
34b6c8bd88
CMake: Remove CITRA_QT_LIBS var
...
This used to be required to support both Qt4 and Qt5, but we dropped Qt4
so it's not needed anymore.
2017-05-27 20:53:39 -07:00
Yuri Kunde Schlesner
089baa04e8
CMake: Stop using FindOpenGL, which seems to not be required anymore
2017-05-27 20:48:00 -07:00
Yuri Kunde Schlesner
d6ff5c6f75
CMake: Use append instead of set to modify list
2017-05-27 20:44:51 -07:00
Yuri Kunde Schlesner
0f563111a2
CMake: Use IMPORTED target for Boost
2017-05-27 20:44:51 -07:00
Yuri Kunde Schlesner
4660bc1c78
CMake: Use IMPORTED target for libpng
2017-05-27 20:44:51 -07:00
Yuri Kunde Schlesner
a06220682c
Add the fmt string formatting library
...
More info at http://fmtlib.net/
This commit was based on @jroweboy's work on his spdlog branch, but with
modifications.
2017-05-27 14:26:02 -07:00
Fernando Sahmkow
d8af401b2c
Fix Microprofile in MinGW ( #2530 )
2017-02-04 15:36:38 -08:00
Kloen
abc5c134a3
Removed unused and outdated external qhexedit
2017-01-22 18:46:48 +01:00
James Rowe
0a6ca01991
Change deploy to use github releases instead, but only for the citra-nightly repo
2017-01-04 20:53:46 -07:00
James Rowe
b03e7bf28f
Add deploy to bintray for builds to master
2016-12-31 13:54:51 -05:00
bunnei
d30d6f81aa
Merge pull request #2303 from freiro/citra-qt_missing_sdl2_dll
...
Copy SDL2.dll when compiling citra-qt with msvc
2016-12-16 11:35:55 -05:00
Yuri Kunde Schlesner
17fccb8c5d
Externals: Add Xbyak
2016-12-14 20:06:08 -08:00
Jeffrey Pfau
07ab936f12
CMakeLists: Autodetect clang and only then use libc++
2016-12-13 09:41:55 -08:00
freiro
031fc3a460
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
5a3ed81d9a
Merge pull request #2202 from j-selby/man-docs
...
Add man documentation
2016-12-08 22:02:04 -08:00
James
61687840bc
Disable Microprofile on Mingw builds
...
This fixes a crash when starting games
2016-12-05 13:10:14 +11:00
freiro
35e979f041
Appending PLATFORM_LIBRARIES instead of redefining them
2016-11-30 16:28:21 +01:00
freiro
0c22e52f52
WINVER definition moved to CMake and cleanup
2016-11-30 15:47:09 +01:00
James
e5f8df8088
Add man documentation
...
Includes both SDL and QT frontends
2016-11-26 13:48:00 +11:00
freiro
9ca3a2d461
Move to SDL2-2.0.5
2016-11-22 09:16:04 +01:00