Lioncash
1dd4132eb1
externals: Update fmt to 7.1.0
...
Keeps the used version of the library up to date.
2020-10-26 18:34:44 -04:00
Morph
09126f3a4a
cmake: Update to Qt 5.12.8
2020-09-09 08:50:39 -04:00
Lioncash
1f9ac1541f
CMakeLists: Update fmt to 7.0.3
...
Keeps the library up to date and fixes a few bugs
2020-08-14 09:17:23 -04:00
Lioncash
1c3490a8db
General: Tidy up clang-format warnings
2020-08-08 20:08:44 -04:00
Lioncash
2e68282214
CMakeLists: Update boost to 1.73
...
Keeps the library up to date.
2020-07-27 22:10:01 -04:00
Lioncash
6bb77b06dc
CMakeLists: Update catch to 2.13
...
Keeps the library up to date
2020-07-27 22:09:04 -04:00
Lioncash
5b785232de
CMakeLists: Update zstd to 1.4.5
...
Keeps the library version up to date.
2020-07-27 22:07:34 -04:00
Lioncash
d25265d63a
CMakeFiles: Update json to 3.8.0
...
Keeps the tracked version of the library up to date.
2020-07-27 22:06:11 -04:00
FearlessTobi
347b50ad43
yuzu: Port translation support from Citra
...
Co-Authored-By: Weiyi Wang <wwylele@gmail.com>
2020-07-18 14:09:11 +02:00
LC
edb2caaae5
Merge pull request #4280 from jbeich/system-libusb
...
cmake: pass libusb include directory
2020-07-13 22:21:07 -04:00
Lioncash
07632ad825
CMakeLists: Enable usage of C++20 on Linux
...
This also fixes building on Linux with C++20, so we can enable it across
the board for all OSes that we officially support.
2020-07-12 18:15:29 -04:00
Lioncash
b971b82275
CMakeLists: Correct boost asio disabling define name
...
Previously the name of the define was missing the BOOST_ prefix.
2020-07-12 17:17:51 -04:00
Lioncash
539675b21a
CMakeLists: Disable concepts in boost asio
2020-07-12 15:56:44 -04:00
LC
ed89bcc767
Merge pull request #4290 from lioncash/latest
...
CMakeLists: Make use of /std:c++latest on MSVC
2020-07-12 12:25:10 -04:00
MerryMage
6744e7ea4a
CMakeLists: Do not search for system libusb on macOS
2020-07-11 14:37:34 +01:00
Lioncash
fb0fefc75c
CMakeLists: Make use of /std:c++latest on MSVC
...
Provides the buildbot with one builder that is always tracking the
latest version of the C++ standard, allowing us to progressively rectify
our code and amend any differences between standards over time instead
of waiting for a complete standard change, potentially breaking a lot of
code all at once.
2020-07-11 04:45:40 -04:00
bunnei
995067538d
Merge pull request #4221 from jbeich/unused-qt-opengl
...
cmake: drop dependency on QtOpenGL
2020-07-10 15:18:04 -04:00
bunnei
01a1adfb0c
Merge pull request #4287 from lioncash/fmt7
...
CMakeLists: Update fmt to 7.0.1
2020-07-10 13:02:21 -04:00
Lioncash
798c1b457d
CMakeLists: Update fmt to 7.0.1
...
Keeps the package up to date with the latest major release of fmt.
This version brings in quite a bit of improvements, such as code size
reduction, etc.
2020-07-10 04:51:03 -04:00
Lioncash
d39b457566
CMakeLists: Use lower-case command names
...
Our convention uses lower-case command names, so this is just a
consistency change.
2020-07-10 01:18:40 -04:00
David Marcec
48aa076049
cmake: Fix libusb builds breaking
2020-07-10 14:02:44 +10:00
Jan Beich
48ff15602e
cmake: pass libusb include directory as well
...
In file included from src/input_common/gcadapter/gc_adapter.cpp:8:
src/./input_common/gcadapter/gc_adapter.h:11:10: fatal error: 'libusb.h' file not found
#include <libusb.h>
^~~~~~~~~~
2020-07-09 15:26:54 +00:00
Jan Beich
2af7e40ce6
cmake: unbreak system libusb support
...
Reference libusb doesn't support DragonFly and FreeBSD because those
ship a different libusb implementation (supports 0.1, 1.0, 2.0 API).
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(usbi_alloc_device) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(usbi_alloc_device) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_has_capability) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_has_capability) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_has_capability) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(usbi_connect_device) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(usbi_disconnect_device) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_get_device_list) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_get_device_list) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_unref_device) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_unref_device) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_write
>>> referenced by core.c
>>> core.c.o:(usbi_signal_event) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_read
>>> referenced by core.c
>>> core.c.o:(usbi_clear_event) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_wrap_sys_device) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_wrap_sys_device) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_wrap_sys_device) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_open) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>> core.c.o:(libusb_open) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_read
>>> referenced by core.c
>>> core.c.o:(libusb_close) in archive externals/libusb/libusb.a
ld: error: undefined symbol: usbi_write
>>> referenced by core.c
>>> core.c.o:(libusb_close) in archive externals/libusb/libusb.a
ld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors)
c++: error: linker command failed with exit code 1 (use -v to see invocation)
2020-07-07 10:13:18 +00:00
Ameer
f829932ed1
Fix merge conflicts?
2020-07-04 00:59:40 -04:00
Jan Beich
b1b1ed7597
cmake: stop linking against QGL after c6a0ab9792
2020-07-01 22:11:39 +00:00
David Marcec
d5dfe34c49
externals: Track opus as submodule instead of using conan
...
Supersedes #4068 see for details.
2020-07-01 15:09:33 +10:00
Jan Beich
dda90ce1c2
cmake: depend on WebEngine with system Qt
...
CMake Error at src/yuzu/CMakeLists.txt:7 (add_executable):
Target "yuzu" links to target "Qt5::WebEngineCore" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
2020-06-29 23:52:45 +00:00
Ameer
121af3646d
Singleton GC Adapter class, remove globals, fix naming convention
...
Fix clang formatting
Manual fix for configure_input_player formatting
Add missing lib usb cmake command
2020-06-21 21:17:07 -04:00
bunnei
2a3d4cad63
externals: Revert to libressl, as build is broken with find_package(OpenSSL). ( #4093 )
...
* externals: Revert to libressl, as build is broken with find_package(OpenSLL).
* fixup! externals: Revert to libressl, as build is broken with find_package(OpenSLL).
* fixup! externals: Revert to libressl, as build is broken with find_package(OpenSLL).
2020-06-16 21:46:19 -04:00
bunnei
104b334e40
Update CMakeLists.txt
2020-05-31 18:35:36 -04:00
bunnei
0ac8848eae
Update CMakeLists.txt
2020-05-31 17:46:25 -04:00
Markus Wick
e8baf07136
Mark the opus version check as broken.
2020-05-09 12:47:59 +02:00
James Rowe
bc30a591ba
Replace externals with Conan ( #3735 )
...
* Remove git submodules that will be loaded through conan
* Move custom Find modules to their own folder
* Use conan for downloading missing external dependencies
* CI: Change the yuzu source folder user to the user that the containers run on
* Attempt to remove dirty mingw build hack
* Install conan on the msvc build
* Only set release build type when using not using multi config generator
* Re-add qt bundled to workaround an issue with conan qt not downloading prebuilt binaries
* Add workaround for submodules that use legacy CMAKE variables
* Re-add USE_BUNDLED_QT on the msvc build bot
2020-05-08 17:09:29 -04:00
Jan Beich
1a2df0a5f3
cmake: Silence -Werror=implicit-fallthrough in SDL2 headers
...
In file included from src/input_common/sdl/sdl_impl.cpp:16:
In file included from /usr/local/include/SDL2/SDL.h:32:
In file included from /usr/local/include/SDL2/SDL_main.h:25:
/usr/local/include/SDL2/SDL_stdinc.h:445:9: error: unannotated fall-through between switch labels [-Werror,-Wimplicit-fallthrough]
case 3: *_p++ = _val; /* fallthrough */
^
/usr/local/include/SDL2/SDL_stdinc.h:445:9: note: insert '[[fallthrough]];' to silence this warning
case 3: *_p++ = _val; /* fallthrough */
^
[[fallthrough]];
/usr/local/include/SDL2/SDL_stdinc.h:445:9: note: insert 'break;' to avoid fall-through
case 3: *_p++ = _val; /* fallthrough */
^
break;
/usr/local/include/SDL2/SDL_stdinc.h:446:9: error: unannotated fall-through between switch labels [-Werror,-Wimplicit-fallthrough]
case 2: *_p++ = _val; /* fallthrough */
^
/usr/local/include/SDL2/SDL_stdinc.h:446:9: note: insert '[[fallthrough]];' to silence this warning
case 2: *_p++ = _val; /* fallthrough */
^
[[fallthrough]];
/usr/local/include/SDL2/SDL_stdinc.h:446:9: note: insert 'break;' to avoid fall-through
case 2: *_p++ = _val; /* fallthrough */
^
break;
/usr/local/include/SDL2/SDL_stdinc.h:447:9: error: unannotated fall-through between switch labels [-Werror,-Wimplicit-fallthrough]
case 1: *_p++ = _val; /* fallthrough */
^
/usr/local/include/SDL2/SDL_stdinc.h:447:9: note: insert '[[fallthrough]];' to silence this warning
case 1: *_p++ = _val; /* fallthrough */
^
[[fallthrough]];
/usr/local/include/SDL2/SDL_stdinc.h:447:9: note: insert 'break;' to avoid fall-through
case 1: *_p++ = _val; /* fallthrough */
^
break;
3 errors generated.
2020-04-18 23:26:22 +00:00
Brian Clinkenbeard
13b02a1414
fix CMake build errors for certain SDL2 installations
2020-02-17 13:01:40 -08:00
Brian Clinkenbeard
68043dd233
use config mode for finding SDL2 with CMake
2020-02-10 19:56:33 -08:00
fearlessTobi
ac3690f205
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.
Co-Authored-By: jroweboy <jroweboy@gmail.com>
2020-01-23 20:55:26 +01:00
Jake Merdich
dc70a36b44
Ignore git-related files in cmake for EA tarballs
...
This fixes the early-access builds on Windows (tested on EA 58). Cmake
was previously looking for git-related files that were stripped out of
the early access builds and failing; check if those exist before reading
them.
2019-12-05 22:48:20 -05:00
Zach Hilman
d8bcb1e973
cmake: Add cmake option to build Boxcat backend
...
Default enabled
2019-09-30 17:26:10 -04:00
Tobias
cae9708a00
Revert "CMake: Get Git submodule dependencies via CMake ( #2474 )"
...
This reverts commit 5cef446f42
.
2019-06-29 22:19:47 +02:00
Frederic L
5cef446f42
CMake: Get Git submodule dependencies via CMake ( #2474 )
...
* CMake: Get Git submodule dependencies via CMake
* CMakeLists: Fixed unintentional line break
* travis: Bring parity between linux-mingw and linux build script
* CMakeLists: Fixed typo in error message
2019-06-19 22:26:12 -04:00
Lioncash
a6fb6ccc83
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-14 19:05:51 -04:00
khang06
945e39471d
fix clang-format target when using a path with spaces on windows
2019-04-07 02:10:01 +02:00
bunnei
f08db7295a
Merge pull request #2253 from lioncash/flags
...
Migrate off directly modifying CMAKE_* compilation-related flags directly
2019-03-23 13:46:53 -04:00
MerryMage
51f609fee7
CMakeLists: Raise minimum Boost requirement to 1.66.0
...
Required due to bugfix in boost for changed template resolving rules in GCC 7.3.0 in C++17 mode
2019-03-17 23:04:03 +00:00
Lioncash
13bc74e957
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.
2019-03-17 01:49:09 -04:00
Lioncash
e5b004e903
CMakeLists: Remove now-unnecessary GCC special-casing
...
This issue has since been fixed in newer versions of Boost, so we don't
need to worry about this anymore.
2019-03-15 20:49:58 -04:00
ReinUsesLisp
cc94a6d101
cmake: Add Vulkan option
2019-02-12 18:33:02 -03:00
ReinUsesLisp
be4641c43f
gl_shader_disk_cache: Invalidate shader cache changes with CMake hash
2019-02-06 22:20:57 -03:00
Zach Hilman
15501477e7
Update Qt MSVC external to 5.12.0
2018-12-31 13:19:23 -05:00
Zach Hilman
ef4c4e239d
cmake: Add USE_QT_WEB_ENGINE flag and update build system
2018-12-28 15:32:39 -05:00
Hedges
af42320021
GDBStub improvements:
...
- Add FPU support
- Fix access to TLS
Fix clang-format.
2018-11-13 15:44:20 +00:00
bunnei
fc9d8afead
Merge pull request #1542 from lioncash/project
...
CMakeLists: Use PROJECT_SOURCE_DIR instead of CMAKE_SOURCE_DIR
2018-10-23 18:44:08 -04:00
Lioncash
289adf87ac
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-23 12:24:43 -04:00
Weiyi Wang
d9ca6351dd
cmake: mingw also needs _FILE_OFFSET_BITS=64
2018-10-23 15:11:25 +02:00
Lioncash
c8beb665dc
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-20 17:36:31 -04:00
bunnei
b8b90ce6e6
Merge pull request #1332 from FearlessTobi/port-web-backend
...
Port web_service from Citra
2018-10-06 02:43:09 -04:00
Weiyi Wang
fdb35760a7
string_util: unify UTF8<->UTF16 conversion to codecvt
2018-10-02 16:10:34 +02:00
fearlessTobi
ac06105dfe
Review comments -part 4
2018-10-02 15:30:49 +02:00
fearlessTobi
4d139943f2
Port web_service from Citra
2018-10-02 15:30:48 +02:00
spycrab
1008be9b67
CMake: Remove superfluous CMAKE_RUNTIME_OUTPUT_DIRECTORY assignment
2018-09-25 17:55:08 +02:00
fearlessTobi
f90b75cc4c
Port citra-emu/citra#4214 : "Set citra-qt project as default StartUp Project in Visual Studio"
2018-09-22 12:24:02 +02:00
James Rowe
8606995515
Merge pull request #1225 from tech4me/travis-windows
...
travis: running mingw build on travis ci
2018-09-20 21:39:15 -06:00
tech4me
a8f54f96fc
travis: running mingw build on travis ci
...
This commit also fixed a broken cmake dependency with unicorn
2018-09-19 14:22:14 -04:00
Frederic Laing
9f2bcdbb76
Update CMakeLists.txt
...
Set yuzu project as default StartUp Project in Visual Studio
2018-09-12 17:36:10 +02:00
fearlessTobi
78653f7339
Show game compatibility within yuzu
2018-08-29 15:42:53 +02:00
Lioncash
319dbc5843
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-14 19:06:55 -04:00
bunnei
eb2633f3ef
externals: Update to SDL2-2.0.8.
2018-08-12 02:42:10 -04:00
Lioncash
3d486fffed
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-11 19:36:43 -04:00
Lioncash
436acbb630
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-11 19:36:21 -04:00
bunnei
f437c11caf
audio_core: Implement Sink and SinkStream interfaces with cubeb.
2018-07-30 21:45:24 -04:00
bunnei
0b831dd2ba
Revert "Use Ninja for MSVC AppVeyor builds" ( #584 )
2018-06-23 03:17:32 -04:00
Michał Janiszewski
79de0f8fe8
Drop /std:c++latest from MSVC command line
...
CMake already sets it to version 17 in all cases
2018-06-05 22:41:28 +02:00
bunnei
2863e1edb9
Merge pull request #66 from RiverCityRansomware/qtUpdate
...
Updates CMakeLists to use Qt 5.10.0 instead of Qt 5.7
2018-04-02 16:06:58 -04:00
N00byKing
34b733e70e
CMake: Set EMU_ARCH_BITS in CMakeLists.txt
2018-03-21 19:03:20 +01:00
bunnei
4cd2b475cb
Merge pull request #144 from KAMiKAZOW/patch-1
...
Install Linux icon in hicolor instead of pixmaps
2018-01-26 18:33:51 -05:00
James Rowe
9a005d5239
Fix typo for dependent options
2018-01-25 22:04:04 -07:00
KAMiKAZOW
9e41053ead
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
Same as https://github.com/citra-emu/citra/pull/3007
2018-01-26 04:00:12 +01:00
MerryMage
add8d40f3f
CMakeLists: Fix unicorn build for macOS developers with x86_64-only systems
...
Some of us do not have any i386 libraries required to build x86-32 universal libraries.
2018-01-21 13:59:43 +00:00
MerryMage
bba785d643
CMakeLists: Do not look for system Unicorn by default
...
Since we use a custom build of unicorn it doesn't make much sense to look for
the system version, unless the user explicitly wants to override this.
2018-01-21 13:58:39 +00:00
James Rowe
1e662e6e9a
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-01-20 16:44:48 -07:00
James Rowe
c3e22a2f6c
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-01-20 15:45:59 -07:00
River City Ransomware
c8a094e164
Port citra #3352 to yuzu ( #103 )
...
* Port citra #3352 to yuzu
This change allows non x86_64 architectures to compile yuzu by skipping the building of dynarmic
* Fixed clang-format errors
* fixes more clang-format errors
2018-01-19 19:36:09 -05:00
Lioncash
e710a1b989
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.
2018-01-17 21:51:43 -05:00
River City Ransomware
ec204a27dc
Update qt
...
Updates qt from 5.7 to 5.10.0, fixing some errors relating to setting the process dpi
2018-01-17 09:20:53 -05:00
spycrab
33778e4984
CMake: Override PYTHON environment variable for libunicorn
2018-01-16 20:05:05 +01:00
James Rowe
2d7a85f7af
Build: Automagically handle unicorn
...
On MSVC if unicorn isn't found, fallback to bundled unicorn
On everything else, fallback to building unicorn in externals
Also fixes loading unicorn in msvc
2018-01-16 09:39:07 -07:00
James Rowe
e026b66bbb
Build: Add unicorn as a submodule and build it if needed
...
Adds a cmake custom target that will build unicorn on first compile and
uses this in the build scripts as well. Updates Appveyor and Travis
build scripts to work with the new unicorn build, and updates the paths
to all of the different artifacts.
2018-01-16 01:15:52 -07:00
Simonx22
e9cf161917
rename CITRA to YUZU
2018-01-15 23:05:20 +01:00
bunnei
67c8b671d2
Merge pull request #17 from spycrab/bindir
...
CMake: Output binaries to bin/
2018-01-15 12:56:58 -05:00
spycrab
8a440faa69
CMake: Output binaries to bin/
2018-01-15 13:47:38 +01:00
Harry Prevor
554cc9488f
fixed build for gcc c++17 / boost.icl incompatibility
2018-01-14 21:48:01 -05:00
Robin Lambertz
e9e511ca04
Fix compilation on case-sensitive OSX
...
When compiling on a case-sensitive filesystem on OSX, cmake doesn't find
the FindUnicorn file, because it looks for Findunicorn.cmake. We should
uses the correct case to avoid this issue.
2018-01-14 14:40:26 +01:00
James Rowe
c2d28351c7
Add new icons and fix up the linux paths for install
2018-01-13 15:40:57 -07:00
James Rowe
ebf9a784a9
Massive removal of unused modules
2018-01-12 19:11:03 -07:00
bunnei
941cdae6f0
CMakeLists: Use C++ 17.
2018-01-12 19:37:23 -05:00
bunnei
1b9ed033fc
cmake: Use LIBUNICORN_* on Windows.
2018-01-08 20:12:20 -05:00
MerryMage
f10a304ecd
fix macos build
2018-01-08 19:20:10 -05:00
bunnei
738845cc0e
externals: Use unicorn DLL instead of static lib.
2018-01-04 13:15:29 -05:00
bunnei
3f8b9181b5
unicorn: Use for arm interface on Windows.
2018-01-04 00:13:23 -05: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
James Rowe
c3ea6f4ddb
Add mingw compile support
2016-11-13 23:50:46 -07:00
Jan Beich
8b833d3a97
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
2240cb2eb0
build: add default install for DragonFly, Solaris, etc.
2016-10-27 23:28:30 +00:00
Jan Beich
52da9de5c4
build: clock_gettime() is in libc on BSDs
2016-10-27 23:28:30 +00:00
Jan Beich
48b6c98d31
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
26af2b644c
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
1ea1affe0a
dynarmic: Add new submodule.
2016-09-15 17:49:25 -04:00
bunnei
8410e7891c
CMakeLists: Set Boost_INCLUDE_DIR.
2016-09-15 17:49:21 -04:00
bunnei
a71d6cc040
Revert "MSVC: Add RelWithDebInfo and removing debugging from Release."
2016-09-01 17:06:34 -04:00
James Rowe
8b685c4308
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
33d17d0b62
qt: Use 5.7 on Windows.
2016-08-15 22:52:15 -04:00
James Rowe
a976c2e3ba
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
e09e683720
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
d5f5aeeab8
CMakeLists: Drop support for Qt 4
2016-06-17 10:48:40 -04:00
MerryMage
87de1ca968
Tests: Run tests on CI
2016-05-19 19:28:08 +01:00
MerryMage
920d2cf41d
AudioCore: SDL2 Sink
2016-05-07 11:32:48 +01:00
MerryMage
27ce3b3f51
Externals: Add soundtouch
2016-04-28 13:33:14 +01:00
Sam Spilsbury
df81fa11fc
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
d051bd3032
CMakeLists: Use CMAKE_THREAD_LIBS_INIT
2016-04-23 11:48:58 +08:00
Lioncash
5ef90464a1
CMakeFiles: Compile as C++14
2016-04-03 15:45:41 -04:00
MerryMage
ba2a54a9dd
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
5f567a8229
Enable RTTI on Windows builds.
2015-11-12 16:07:49 +01:00
Yuri Kunde Schlesner
f226365f55
CMake: Silence more MSVC "deprecation" warnings
2015-09-14 17:39:51 -03:00
Yuri Kunde Schlesner
6cec330103
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
9e52aaa01d
CMake: Point binary downloads to new official repo
2015-09-08 19:35:15 -03:00
Yuri Kunde Schlesner
70d0d8890a
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
fdb0f8203e
CMake: Don't complain when Boost isn't found in the system.
2015-09-08 19:35:13 -03:00
Yuri Kunde Schlesner
2eec2c156b
CMake: Use HINTS option instead of modifying CMAKE_PREFIX_PATH for Qt
2015-09-08 19:35:12 -03:00
Yuri Kunde Schlesner
078969bdd0
CMake: Add option to download Qt and GLFW binaries over HTTP
2015-09-08 19:35:12 -03:00
Yuri Kunde Schlesner
eb26a1941e
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
a1a5570e97
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
0fcabd2b11
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
e053d30bf7
Fix building under MinGW
2015-08-17 22:21:14 -07:00
bunnei
b39c053785
Rename ARCHITECTURE_X64 definition to ARCHITECTURE_x86_64.
2015-08-15 18:03:27 -04:00
bunnei
4d51792285
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
Yuri Kunde Schlesner
a188e0fa57
Merge pull request #675 from jroweboy/windows-build-fixes
...
Windows build fixes
2015-05-14 20:55:58 -07:00
Emmanuel Gil Peyrot
d0ee89e2fe
Install a .desktop file to make citra-qt launchable from DE menus.
2015-05-13 19:48:06 +02:00
Yuri Kunde Schlesner
bf12f270b3
Common: Remove many unnecessary cross-platform compatibility macros
2015-05-06 23:50:08 -03:00
James Rowe
5b9a5493c5
Updated the copy commands to run on post_build and use generator expressions to simplify the code as well
2015-03-26 04:04:24 -06:00
James Rowe
2d7008f03c
Changes to bring the previous commits in line with the comments on thepull request. Made the debug build a true debug build with no optimizxations and the RelWithDebInfo is what it says it is too. Changed the copying of the dlls to the build directories to happen at configuration time instead of build time
2015-03-26 04:04:23 -06:00
James Rowe
4a7e21eb58
More changes to the CMakeFiles for better MSVC compatibility. Added in the RelWithDebInfo target and setup copying the Qt 5 Dlls to the output directories.
2015-03-26 04:04:22 -06:00
James Rowe
fa79b3f4f4
Small changes to the CMake file to make windows build easier
2015-03-26 04:04:22 -06:00
bunnei
a9b3f29b90
Merge pull request #483 from yuriks/cmake-fix
...
CMake: Inform the user when architecture auto-detection fails
2015-02-03 12:42:46 -05:00
Yuri Kunde Schlesner
8c39324333
CMake: Inform the user when architecture auto-detection fails
2015-01-19 19:40:43 -02:00
Yuri Kunde Schlesner
555c82739e
CMake: Fix wrong filename in message
2015-01-13 17:47:32 -02:00
darkf
67c644e317
Fix building on MinGW
2015-01-11 20:22:08 -08:00
Yuri Kunde Schlesner
57503df97f
CMake: Consistently set _DEBUG and NDEBUG in all platforms
2015-01-10 18:42:24 -02:00
bunnei
e213f91373
Fix Windows build
2015-01-10 12:32:28 -05:00
bunnei
e7d2118858
Merge pull request #342 from uppfinnarn/master
...
Build improvements
2015-01-10 02:03:07 -05:00
chinhodado
f689e97380
Cleanup: Remove redundant /Oi flag
...
`/Oi` is included in `/Ox` already
2015-01-09 10:59:01 -05:00
Johannes Ekberg
b027f7fe15
Looks like that might be needed on OSX after all
2015-01-09 15:50:47 +01:00
Johannes Ekberg
d7ad14ae20
Use -pthread where and only where needed
...
Passing -pthread to GCC as a flag makes it both link to libpthread, and make C standard library routines reentrant. This makes the additional explicit links unnecessary.
Additionally, on OSX, this is the default behavior, and clang will print a message about it being unused if it's present there.
2015-01-09 15:50:46 +01:00
Johannes Ekberg
1351819810
Link Cocoa, IOKit and CoreVideo on OSX
...
These are implicitly linked by Xcode, but with this, you can also build it with any other generator, which does not have this behavior.
CoreFoundation is included as a part of Cocoa (which is an umbrella framework), and Cocoa is generally recommended to link against, rather than its individual components (CoreFoundation, Foundation, libobjc, ...).
2015-01-09 15:50:46 +01:00
Johannes Ekberg
7d7ab70279
Generic PLATFORM_LIBRARIES var
...
This both reduces redundancy in add_executable definitions, and makes it easier to link additional libraries. In particular, extra libraries are needed on OSX - see next commit.
2015-01-09 15:50:46 +01:00
Yuri Kunde Schlesner
f983d955f9
CMake: Enable VS parallel builds for a good reduction in compile times
...
This enables the /MP compiler flag, which parallelizes builds of by
distributing compilation of individual object files across workes
processes, instead of being limited to per-project parallelism.
Reduces the time for a full compile from 72 s to 45 s on my machine.
2015-01-09 12:42:35 -02:00
Yuri Kunde Schlesner
da04976437
CMake: Require Boost 1.57.0 (fixes Travis OS X)
2014-12-29 02:08:10 -02:00
bunnei
949d95659e
Merge pull request #275 from yuriks/cmake-clean
...
Clean up CMake library specification
2014-12-22 11:11:37 -05:00
Yuri Kunde Schlesner
361735e7fe
CMake: Silence PNG not found error
...
Hopefully this will make people stop thinking it's a hard dependency.
2014-12-21 21:26:52 -02:00
Yuri Kunde Schlesner
ed8f32f03e
CMake: Use improved optimization flags on MSVC
...
While not having a noticeable effect on CPU-bound applications, this
change gives an about 30-50% increase in performance for games using
the GPU.
2014-12-21 21:26:51 -02:00
Tony Wasserka
056a8f9dfa
Add nihstro (a 3DS shader tools suite) as a submodule.
2014-12-20 18:06:55 +01:00
Yuri Kunde Schlesner
98a9aba46f
Remove C++14/1y requirement
2014-12-20 03:45:02 -02:00
Yuri Kunde Schlesner
731b31fe97
Switch to C++14 to use std::make_unique
2014-12-16 01:08:14 -02:00
Yuri Kunde Schlesner
06f31e8b47
Clean up CMake library specification
...
The X11 libraries don't need to be specified when doing dynamic linking
2014-12-15 19:34:17 -02:00
Tony Wasserka
4d4572c697
Integrate Boost into build system and perform a trivial cleanup in vertex_shader.cpp.
2014-12-07 23:52:17 +01:00
Subv
8712c9dcd6
CMake: Place all the built files in BUILD_DIR/bin/<Configuration> when compiling with MSVC
2014-12-01 18:48:27 -05:00
archshift
e6594f9f53
Added configuration file system.
...
Uses QSettings on citra-qt, and inih on citra-cli.
2014-10-07 15:09:37 -07:00
archshift
051b162add
Removed the need for X11 on OS X
...
It only causes issues when someone (who doesn't need it) doesn't have it.
2014-09-02 23:32:15 -07:00
Yuri Kunde Schlesner
45976da975
CMake cleanup
...
Several cleanups to the buildsystem:
- Do better factoring of common libs between platforms.
- Add support to building on Windows.
- Remove Qt4 support.
- Re-sort file lists and add missing headers.
2014-09-01 18:06:30 -03:00
Yuri Kunde Schlesner
478289140d
Replace GLEW with a glLoadGen loader.
...
This should fix the GL loading errors that occur in some drivers due to
the use of deprecated functions by GLEW. Side benefits are more accurate
auto-completion (deprecated function and symbols don't exist) and faster
pointer loading (less entrypoints to load). In addition it removes an
external library depency, simplifying the build system a bit and
eliminating one set of binary libraries for Windows.
2014-09-01 17:41:56 -03:00
Tony Wasserka
c4691b784b
Pica: Add support for dumping textures.
2014-08-25 22:03:18 +02:00
Sacha
90f23020f5
Add Qt5 option. Use Qt5 by default.
2014-08-19 21:34:00 +10:00
Sacha
b7ecc9543a
CMake Cleanup
2014-08-18 14:35:44 +10:00
Phillip Stephens
8bfd32e854
* Remove -fpermissive
2014-05-19 20:48:14 -07:00
archshift
9216c96f48
CMakeLists: Fixed GLEW include var name, compile flag vars
...
After adding FindGLEW.cmake to externals, the variable call for the GLEW include path needed to be revised.
Append flags on OSX, rather than overwrite them.
I realized that GCC_COMPILE_FLAGS was changed to CMAKE_CXX_FLAGS mistakenly, so both were changed to a more platform-independent name.
2014-05-19 16:42:34 -07:00
archshift
403e4bf837
CMakeLists: rename HEADS, improved comments
...
Changes for clarity of comments, removed redundant compiler flags.
2014-05-19 15:19:36 -07:00
archshift
71b8789803
Indent fixes
2014-05-19 13:51:59 -07:00
archshift
603ef89dad
Indent fixes
2014-05-17 12:54:38 -07:00
archshift
1e729e7cae
Added FindGLEW to cmake-modules
2014-05-16 23:03:10 -07:00
archshift
7817d6c79a
Support for C++11 on OSX
2014-04-30 23:47:38 -07:00
archshift
a7f3ed003d
A bit of Cmake love
2014-04-30 16:56:47 -07:00
archshift
52377cf0d2
Some more experimentation
2014-04-29 19:27:01 -07:00
archshift
5a9c2ce5ea
IT'S ALIVE!
2014-04-28 19:40:39 -07:00
Thomas Edvalson
c51e4822b1
Fixed CMake's import of GLFW.
2014-04-25 10:50:25 -04:00
bunnei
15dacc4d3f
removed "COVERAGE_" from "GCC_COVERAGE_COMPILE_FLAGS"
2014-04-24 14:42:03 -04:00
bunnei
80a040ac77
fixes to scm_rev generation to make it conistent with windows build
2014-04-23 19:13:00 -07:00
bunnei
4405a53cf3
added scm rev generation on Linux/cmake
2014-04-23 18:43:57 -07:00
bunnei
7a136b8a84
fixes to build on linux
2014-04-22 19:42:29 -07:00
bunnei
9527fc74ad
fixed a bunch of errors in CMakeLists
2014-04-09 20:28:43 -07:00
bunnei
6b83509a7e
updated CMakeLists
2014-04-09 23:09:05 -04:00
ShizZy
8bb0c457bc
renamed from citrus to citra
2013-09-26 17:34:48 -04:00
ShizZy
b8ca09160b
renamed project to 'citrus'
2013-09-13 18:11:14 -04:00
ShizZy
27474060e1
adding initial project layout
2013-08-29 23:35:09 -04:00