summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt (follow)
Commit message (Collapse)AuthorAgeFilesLines
* CMakeLists: Fix unicorn build for macOS developers with x86_64-only systemsMerryMage2018-01-211-1/+1
| | | | Some of us do not have any i386 libraries required to build x86-32 universal libraries.
* CMakeLists: Do not look for system Unicorn by defaultMerryMage2018-01-211-2/+5
| | | | | 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.
* CMake: Conditionally turn on bundled libs for MSVCJames Rowe2018-01-211-2/+5
| | | | | | | | 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.
* CMake: Add a custom clang format targetJames Rowe2018-01-201-0/+47
| | | | | | 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
* Port citra #3352 to yuzu (#103)River City Ransomware2018-01-201-8/+11
| | | | | | | | | | * 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
* CMakeLists: Derive the source directory grouping from targets themselvesLioncash2018-01-181-2/+4
| | | | | Removes the need to store to separate SRC and HEADER variables, and then construct the target in most cases.
* CMake: Override PYTHON environment variable for libunicornspycrab2018-01-161-1/+3
|
* Build: Automagically handle unicornJames Rowe2018-01-161-45/+47
| | | | | | | 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
* Build: Add unicorn as a submodule and build it if neededJames Rowe2018-01-161-0/+25
| | | | | | | 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.
* rename CITRA to YUZUSimonx222018-01-151-6/+6
|
* Merge pull request #17 from spycrab/bindirbunnei2018-01-151-0/+3
|\ | | | | CMake: Output binaries to bin/
| * CMake: Output binaries to bin/spycrab2018-01-151-0/+3
| |
* | fixed build for gcc c++17 / boost.icl incompatibilityHarry Prevor2018-01-151-0/+6
|/
* Fix compilation on case-sensitive OSXRobin Lambertz2018-01-141-1/+1
| | | | | 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.
* Add new icons and fix up the linux paths for installJames Rowe2018-01-131-15/+3
|
* Massive removal of unused modulesJames Rowe2018-01-131-22/+1
|
* CMakeLists: Use C++ 17.bunnei2018-01-131-2/+2
|
* cmake: Use LIBUNICORN_* on Windows.bunnei2018-01-091-2/+2
|
* fix macos buildMerryMage2018-01-091-2/+2
|
* externals: Use unicorn DLL instead of static lib.bunnei2018-01-041-2/+3
|
* unicorn: Use for arm interface on Windows.bunnei2018-01-041-0/+31
|
* Build: Enable SSL in mingw by linking against WinSSLJames Rowe2017-09-111-18/+10
| | | | | | | | | | 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.
* Add manifestDaMan2017-09-031-2/+2
|
* common: Add build timestamp to scm_rev.bunnei2017-08-041-1/+8
|
* tests: Add tests for vaddMerryMage2017-07-231-1/+1
|
* CMakeLists: Check that all submodules are presentMerryMage2017-07-161-0/+15
|
* web_service: Add CMake flag to enable.bunnei2017-07-121-0/+5
|
* Set global definition WIN32_LEAN_AND_MEAN (#2807)B3n302017-06-251-0/+2
| | | Set definition WIN32_LEAN_AND_MEAN to avoid windows.h including a lot of libs that are usually not used.
* CMake: Set MSVC flags for improved C++ standards conformanceYuri Kunde Schlesner2017-06-171-3/+6
| | | | This makes the compiler stricter and also enables small optimizations.
* CMake: Re-organize root CMakeLists.txt fileYuri Kunde Schlesner2017-05-281-56/+78
| | | | Separates the file into sections and re-orders things to fit in them
* CMake: Move definitions of externals to the CMakeLists in that directoryYuri Kunde Schlesner2017-05-281-26/+5
|
* CMake: Create INTERFACE targets for microprofile and nihstroYuri Kunde Schlesner2017-05-281-2/+6
|
* CMake: Add SoundTouch include path to target propertyYuri Kunde Schlesner2017-05-281-0/+2
|
* CMake: Use target properties to add inih include pathsYuri Kunde Schlesner2017-05-281-3/+1
|
* CMake: Define an interface target for SDL2 definitionsYuri Kunde Schlesner2017-05-281-0/+7
|
* CMake: Remove CITRA_QT_LIBS varYuri Kunde Schlesner2017-05-281-1/+0
| | | | | This used to be required to support both Qt4 and Qt5, but we dropped Qt4 so it's not needed anymore.
* CMake: Stop using FindOpenGL, which seems to not be required anymoreYuri Kunde Schlesner2017-05-281-3/+0
|
* CMake: Use append instead of set to modify listYuri Kunde Schlesner2017-05-281-1/+1
|
* CMake: Use IMPORTED target for BoostYuri Kunde Schlesner2017-05-281-6/+8
|
* CMake: Use IMPORTED target for libpngYuri Kunde Schlesner2017-05-281-5/+3
|
* Add the fmt string formatting libraryYuri Kunde Schlesner2017-05-271-0/+1
| | | | | | | More info at http://fmtlib.net/ This commit was based on @jroweboy's work on his spdlog branch, but with modifications.
* Fix Microprofile in MinGW (#2530)Fernando Sahmkow2017-02-051-2/+0
|
* Removed unused and outdated external qhexeditKloen2017-01-221-5/+0
|
* Change deploy to use github releases instead, but only for the citra-nightly repoJames Rowe2017-01-051-5/+0
|
* Add deploy to bintray for builds to masterJames Rowe2016-12-311-0/+5
|
* Merge pull request #2303 from freiro/citra-qt_missing_sdl2_dllbunnei2016-12-161-0/+1
|\ | | | | Copy SDL2.dll when compiling citra-qt with msvc
| * Modularization of copy_msvc_libraries cmake functfreiro2016-12-111-0/+1
| | | | | | | | | | Created a new folder in Citra's root called CMakeModules that should contain cmake functions used by the various CMakeLists.txt.
* | Externals: Add XbyakYuri Kunde Schlesner2016-12-151-0/+2
| |
* | CMakeLists: Autodetect clang and only then use libc++Jeffrey Pfau2016-12-131-2/+4
|/
* Merge pull request #2202 from j-selby/man-docsYuri Kunde Schlesner2016-12-091-0/+12
|\ | | | | Add man documentation
| * Add man documentationJames2016-11-261-0/+12
| | | | | | | | Includes both SDL and QT frontends
* | Disable Microprofile on Mingw buildsJames2016-12-051-0/+3
| | | | | | | | This fixes a crash when starting games
* | Appending PLATFORM_LIBRARIES instead of redefining themfreiro2016-11-301-3/+3
| |
* | WINVER definition moved to CMake and cleanupfreiro2016-11-301-8/+8
|/
* Move to SDL2-2.0.5freiro2016-11-221-1/+1
|
* Add mingw compile supportJames Rowe2016-11-141-1/+10
|
* build: don't install freedesktop.org metadata for SDL2-only buildsJan Beich2016-10-281-1/+1
| | | | | | | 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.
* build: add default install for DragonFly, Solaris, etc.Jan Beich2016-10-281-1/+1
|
* build: clock_gettime() is in libc on BSDsJan Beich2016-10-281-1/+1
|
* build: libc may not provide iconv() on UnixJan Beich2016-10-281-3/+10
| | | | /usr/bin/ld: ../common/libcommon.a(string_util.cpp.o): undefined reference to symbol 'libiconv_open'
* common: convert to standard stat()/fstat() interfacesAnthony J. Bentley2016-10-281-0/+9
| | | | | | | | | | | | | 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.
* dynarmic: Add new submodule.bunnei2016-09-151-0/+3
|
* CMakeLists: Set Boost_INCLUDE_DIR.bunnei2016-09-151-4/+3
|
* Revert "MSVC: Add RelWithDebInfo and removing debugging from Release."bunnei2016-09-011-11/+7
|
* MSVC: Add RelWithDebInfo and removing debugging from Release.James Rowe2016-09-011-7/+11
| | | | This should reduce build size on windows from roughly 12MB compressed to 7MB
* qt: Use 5.7 on Windows.bunnei2016-08-161-1/+1
|
* CMake: Fix for QT 5.7 overwriting -std=c++1y flagJames Rowe2016-08-051-4/+6
| | | | | | | 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.
* Remove the -msse4.1 on ¬MSVC.Emmanuel Gil Peyrot2016-07-231-5/+0
| | | | | | | 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.
* CMakeLists: Drop support for Qt 4Lioncash2016-06-171-11/+2
|
* Tests: Run tests on CIMerryMage2016-05-191-0/+2
|
* AudioCore: SDL2 SinkMerryMage2016-05-071-0/+3
|
* Externals: Add soundtouchMerryMage2016-04-281-0/+3
|
* CMakeLists: Use imported version of Threads::ThreadsSam Spilsbury2016-04-241-3/+5
| | | | | | | 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.
* CMakeLists: Use CMAKE_THREAD_LIBS_INITSam Spilsbury2016-04-231-2/+4
|
* CMakeFiles: Compile as C++14Lioncash2016-04-031-1/+1
|
* Dependencies: Remove GLFW, Add SDL2MerryMage2016-03-021-17/+12
| | | | | | | | | | | | | | 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
* Enable RTTI on Windows builds.Tony Wasserka2015-11-121-2/+1
|
* CMake: Silence more MSVC "deprecation" warningsYuri Kunde Schlesner2015-09-141-1/+1
|
* CMake: Make all cache options appear even in case of errorsYuri Kunde Schlesner2015-09-091-5/+7
| | | | | | | | 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.
* CMake: Point binary downloads to new official repoYuri Kunde Schlesner2015-09-091-1/+1
|
* CMake: Remove support for QTDIR environment variableYuri Kunde Schlesner2015-09-091-8/+2
| | | | | | | | | | | 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.
* CMake: Don't complain when Boost isn't found in the system.Yuri Kunde Schlesner2015-09-091-1/+1
|
* CMake: Use HINTS option instead of modifying CMAKE_PREFIX_PATH for QtYuri Kunde Schlesner2015-09-091-4/+11
|
* CMake: Add option to download Qt and GLFW binaries over HTTPYuri Kunde Schlesner2015-09-091-45/+41
|
* CMake: Fix architecture detection on MSVCYuri Kunde Schlesner2015-09-091-5/+31
| | | | | CMAKE_SYSTEM_ARCHICTETURE always returns the *host* not target arch when using the MSVC generators. (CMake bugs 15170 and 14342.)
* Replace the previous OpenGL loader with a glad-generated 3.3 oneYuri Kunde Schlesner2015-08-301-0/+1
| | | | | | 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.
* Integrate the MicroProfile profiling libraryYuri Kunde Schlesner2015-08-251-0/+1
| | | | | This brings goodies such as a configurable user interface and multi-threaded timeline view.
* Fix building under MinGWdarkf2015-08-181-1/+2
|
* Rename ARCHITECTURE_X64 definition to ARCHITECTURE_x86_64.bunnei2015-08-161-13/+14
|
* Common: Ported over Dolphin's code for x86 CPU capability detection.bunnei2015-08-151-2/+13
|
* Enable linker optimizations in MSVC Release buildsYuri Kunde Schlesner2015-07-281-1/+1
| | | | | | 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.
* Fix permissions in pre-commit hookJSFernandes2015-07-141-2/+1
|
* Implement new argument parsing using getopt and add the corresponding library to externalsGreg Wicks2015-07-121-0/+4
|
* CMake: Fix Debug build configuration in MSVCYuri Kunde Schlesner2015-07-091-15/+17
| | | | | | | | 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.
* Merge pull request #839 from Lectem/whitespacepolicyYuri Kunde Schlesner2015-06-211-0/+7
|\ | | | | Enforce the "no tab, use spaces" policy with a pre-commit hook.
| * force no-tab/trailing spaces with git hookLectem2015-06-091-0/+7
| | | | | | | | | | | | | | | | | | 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
* | Remove every trailing whitespace from the project (but externals).Emmanuel Gil Peyrot2015-05-291-2/+2
| |
* | Update bundled GLFW to 3.1.1Yuri Kunde Schlesner2015-05-251-1/+1
|/ | | | | It may be necessary to fix the CMake paths manually for an exsting CMake cache after this change.
* Merge pull request #675 from jroweboy/windows-build-fixesYuri Kunde Schlesner2015-05-151-8/+15
|\ | | | | Windows build fixes
| * Updated the copy commands to run on post_build and use generator expressions to simplify the code as wellJames Rowe2015-03-261-8/+8
| |
| * 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 timeJames Rowe2015-03-261-5/+6
| |
| * 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.James Rowe2015-03-261-2/+2
| |
| * Small changes to the CMake file to make windows build easierJames Rowe2015-03-261-7/+13
| |
* | Install a .desktop file to make citra-qt launchable from DE menus.Emmanuel Gil Peyrot2015-05-131-0/+13
| |
* | Common: Remove many unnecessary cross-platform compatibility macrosYuri Kunde Schlesner2015-05-071-2/+5
|/
* Merge pull request #483 from yuriks/cmake-fixbunnei2015-02-031-3/+9
|\ | | | | CMake: Inform the user when architecture auto-detection fails
| * CMake: Inform the user when architecture auto-detection failsYuri Kunde Schlesner2015-01-191-2/+8
| |
| * CMake: Fix wrong filename in messageYuri Kunde Schlesner2015-01-131-1/+1
| |
* | Fix building on MinGWdarkf2015-01-121-0/+6
|/
* CMake: Consistently set _DEBUG and NDEBUG in all platformsYuri Kunde Schlesner2015-01-101-1/+5
|
* Fix Windows buildbunnei2015-01-101-1/+1
|
* Merge pull request #342 from uppfinnarn/masterbunnei2015-01-101-4/+11
|\ | | | | Build improvements
| * Looks like that might be needed on OSX after allJohannes Ekberg2015-01-091-6/+2
| |
| * Use -pthread where and only where neededJohannes Ekberg2015-01-091-1/+5
| | | | | | | | | | | | 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.
| * Link Cocoa, IOKit and CoreVideo on OSXJohannes Ekberg2015-01-091-3/+4
| | | | | | | | | | | | 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, ...).
| * Generic PLATFORM_LIBRARIES varJohannes Ekberg2015-01-091-0/+6
| | | | | | | | 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.
* | Cleanup: Remove redundant /Oi flagchinhodado2015-01-091-2/+1
| | | | | | `/Oi` is included in `/Ox` already
* | CMake: Enable VS parallel builds for a good reduction in compile timesYuri Kunde Schlesner2015-01-091-1/+2
|/ | | | | | | | 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.
* CMake: Require Boost 1.57.0 (fixes Travis OS X)Yuri Kunde Schlesner2014-12-291-2/+2
|
* Merge pull request #275 from yuriks/cmake-cleanbunnei2014-12-221-4/+1
|\ | | | | Clean up CMake library specification
| * Clean up CMake library specificationYuri Kunde Schlesner2014-12-151-4/+1
| | | | | | | | The X11 libraries don't need to be specified when doing dynamic linking
* | CMake: Silence PNG not found errorYuri Kunde Schlesner2014-12-221-2/+4
| | | | | | | | Hopefully this will make people stop thinking it's a hard dependency.
* | CMake: Use improved optimization flags on MSVCYuri Kunde Schlesner2014-12-221-0/+19
| | | | | | | | | | | | 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.
* | Add nihstro (a 3DS shader tools suite) as a submodule.Tony Wasserka2014-12-201-0/+2
| |
* | Remove C++14/1y requirementYuri Kunde Schlesner2014-12-201-2/+1
| |
* | Switch to C++14 to use std::make_uniqueYuri Kunde Schlesner2014-12-161-1/+2
|/
* Integrate Boost into build system and perform a trivial cleanup in vertex_shader.cpp.Tony Wasserka2014-12-071-0/+8
|
* CMake: Place all the built files in BUILD_DIR/bin/<Configuration> when compiling with MSVCSubv2014-12-021-0/+2
|
* Added configuration file system.archshift2014-10-081-1/+5
| | | | Uses QSettings on citra-qt, and inih on citra-cli.
* Removed the need for X11 on OS Xarchshift2014-09-031-1/+4
| | | | It only causes issues when someone (who doesn't need it) doesn't have it.
* CMake cleanupYuri Kunde Schlesner2014-09-011-46/+99
| | | | | | | | 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.
* Replace GLEW with a glLoadGen loader.Yuri Kunde Schlesner2014-09-011-2/+0
| | | | | | | | | 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.
* Pica: Add support for dumping textures.Tony Wasserka2014-08-251-0/+5
|
* Add Qt5 option. Use Qt5 by default.Sacha2014-08-191-13/+26
|
* CMake CleanupSacha2014-08-181-1/+1
|
* * Remove -fpermissivePhillip Stephens2014-05-201-1/+1
|
* CMakeLists: Fixed GLEW include var name, compile flag varsarchshift2014-05-201-5/+5
| | | | | | 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.
* CMakeLists: rename HEADS, improved commentsarchshift2014-05-201-3/+2
| | | | Changes for clarity of comments, removed redundant compiler flags.
* Indent fixesarchshift2014-05-191-1/+1
|
* Indent fixesarchshift2014-05-171-1/+1
|
* Added FindGLEW to cmake-modulesarchshift2014-05-171-1/+1
|
* Support for C++11 on OSXarchshift2014-05-011-3/+2
|
* A bit of Cmake lovearchshift2014-05-011-4/+7
|
* Some more experimentationarchshift2014-04-301-1/+5
|
* IT'S ALIVE!archshift2014-04-291-2/+9
|
* Fixed CMake's import of GLFW.Thomas Edvalson2014-04-251-0/+2
|
* removed "COVERAGE_" from "GCC_COVERAGE_COMPILE_FLAGS"bunnei2014-04-241-2/+2
|
* fixes to scm_rev generation to make it conistent with windows buildbunnei2014-04-241-0/+1
|
* added scm rev generation on Linux/cmakebunnei2014-04-241-0/+6
|
* fixes to build on linuxbunnei2014-04-231-0/+3
|
* fixed a bunch of errors in CMakeListsbunnei2014-04-101-8/+1
|
* updated CMakeListsbunnei2014-04-101-3/+1
|
* renamed from citrus to citraShizZy2013-09-261-2/+2
|
* renamed project to 'citrus'ShizZy2013-09-141-3/+2
|
* adding initial project layoutShizZy2013-08-301-0/+49