summaryrefslogtreecommitdiff
path: root/src/yuzu/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'src/yuzu/CMakeLists.txt')
-rw-r--r--src/yuzu/CMakeLists.txt116
1 files changed, 116 insertions, 0 deletions
diff --git a/src/yuzu/CMakeLists.txt b/src/yuzu/CMakeLists.txt
new file mode 100644
index 000000000..38bbc0043
--- /dev/null
+++ b/src/yuzu/CMakeLists.txt
@@ -0,0 +1,116 @@
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMakeModules)
+
+set(SRCS
+ configuration/config.cpp
+ configuration/configure_audio.cpp
+ configuration/configure_debug.cpp
+ configuration/configure_dialog.cpp
+ configuration/configure_general.cpp
+ configuration/configure_graphics.cpp
+ configuration/configure_input.cpp
+ configuration/configure_system.cpp
+ configuration/configure_web.cpp
+ debugger/graphics/graphics.cpp
+ debugger/graphics/graphics_breakpoint_observer.cpp
+ debugger/graphics/graphics_breakpoints.cpp
+ debugger/graphics/graphics_cmdlists.cpp
+ debugger/graphics/graphics_surface.cpp
+ debugger/graphics/graphics_tracing.cpp
+ debugger/graphics/graphics_vertex_shader.cpp
+ debugger/profiler.cpp
+ debugger/registers.cpp
+ debugger/wait_tree.cpp
+ util/spinbox.cpp
+ util/util.cpp
+ bootmanager.cpp
+ game_list.cpp
+ hotkeys.cpp
+ main.cpp
+ ui_settings.cpp
+ citra-qt.rc
+ Info.plist
+ )
+
+set(HEADERS
+ configuration/config.h
+ configuration/configure_audio.h
+ configuration/configure_debug.h
+ configuration/configure_dialog.h
+ configuration/configure_general.h
+ configuration/configure_graphics.h
+ configuration/configure_input.h
+ configuration/configure_system.h
+ configuration/configure_web.h
+ debugger/graphics/graphics.h
+ debugger/graphics/graphics_breakpoint_observer.h
+ debugger/graphics/graphics_breakpoints.h
+ debugger/graphics/graphics_breakpoints_p.h
+ debugger/graphics/graphics_cmdlists.h
+ debugger/graphics/graphics_surface.h
+ debugger/graphics/graphics_tracing.h
+ debugger/graphics/graphics_vertex_shader.h
+ debugger/profiler.h
+ debugger/registers.h
+ debugger/wait_tree.h
+ util/spinbox.h
+ util/util.h
+ bootmanager.h
+ game_list.h
+ game_list_p.h
+ hotkeys.h
+ main.h
+ ui_settings.h
+ )
+
+set(UIS
+ configuration/configure.ui
+ configuration/configure_audio.ui
+ configuration/configure_debug.ui
+ configuration/configure_general.ui
+ configuration/configure_graphics.ui
+ configuration/configure_input.ui
+ configuration/configure_system.ui
+ configuration/configure_web.ui
+ debugger/registers.ui
+ hotkeys.ui
+ main.ui
+ )
+
+# file(GLOB_RECURSE ICONS ${CMAKE_SOURCE_DIR}/dist/icons/*)
+file(GLOB_RECURSE THEMES ${CMAKE_SOURCE_DIR}/dist/qt_themes/*)
+
+create_directory_groups(${SRCS} ${HEADERS} ${UIS})
+
+if (Qt5_FOUND)
+ qt5_wrap_ui(UI_HDRS ${UIS})
+else()
+ qt4_wrap_ui(UI_HDRS ${UIS})
+endif()
+
+if (APPLE)
+ set(MACOSX_ICON "../../dist/citra.icns")
+ set_source_files_properties(${MACOSX_ICON} PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
+ add_executable(yuzu MACOSX_BUNDLE ${SRCS} ${HEADERS} ${UI_HDRS} ${MACOSX_ICON})
+ set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist)
+else()
+ add_executable(yuzu ${SRCS} ${HEADERS} ${UI_HDRS})
+endif()
+target_link_libraries(yuzu PRIVATE common core input_common video_core)
+target_link_libraries(yuzu PRIVATE Boost::boost glad Qt5::OpenGL Qt5::Widgets)
+target_link_libraries(yuzu PRIVATE ${PLATFORM_LIBRARIES} Threads::Threads)
+
+if(UNIX AND NOT APPLE)
+ install(TARGETS yuzu RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}/bin")
+endif()
+
+if (MSVC)
+ include(CopyCitraQt5Deps)
+ include(CopyCitraSDLDeps)
+ include(CopyYuzuUnicornDeps)
+ copy_citra_Qt5_deps(yuzu)
+ copy_citra_SDL_deps(yuzu)
+ copy_yuzu_unicorn_deps(yuzu)
+endif()