2014-08-17 21:35:44 -07:00
|
|
|
set(CMAKE_AUTOMOC ON)
|
2017-06-23 17:39:42 -07:00
|
|
|
set(CMAKE_AUTORCC ON)
|
2014-08-17 21:35:44 -07:00
|
|
|
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
2016-12-11 06:36:34 -08:00
|
|
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMakeModules)
|
2014-08-17 21:35:44 -07:00
|
|
|
|
2018-01-17 16:37:34 -08:00
|
|
|
add_executable(yuzu
|
|
|
|
Info.plist
|
|
|
|
about_dialog.cpp
|
|
|
|
about_dialog.h
|
|
|
|
bootmanager.cpp
|
|
|
|
bootmanager.h
|
2018-09-09 16:09:37 -07:00
|
|
|
compatibility_list.cpp
|
|
|
|
compatibility_list.h
|
2018-01-17 16:37:34 -08:00
|
|
|
configuration/config.cpp
|
|
|
|
configuration/config.h
|
2018-07-30 20:57:53 -07:00
|
|
|
configuration/configure_audio.cpp
|
|
|
|
configuration/configure_audio.h
|
2018-01-17 16:37:34 -08:00
|
|
|
configuration/configure_debug.cpp
|
|
|
|
configuration/configure_debug.h
|
|
|
|
configuration/configure_dialog.cpp
|
|
|
|
configuration/configure_dialog.h
|
2018-07-28 09:32:16 -07:00
|
|
|
configuration/configure_gamelist.cpp
|
|
|
|
configuration/configure_gamelist.h
|
2018-01-17 16:37:34 -08:00
|
|
|
configuration/configure_general.cpp
|
|
|
|
configuration/configure_general.h
|
|
|
|
configuration/configure_graphics.cpp
|
|
|
|
configuration/configure_graphics.h
|
|
|
|
configuration/configure_input.cpp
|
|
|
|
configuration/configure_input.h
|
|
|
|
configuration/configure_system.cpp
|
|
|
|
configuration/configure_system.h
|
2018-03-22 13:19:35 -07:00
|
|
|
debugger/graphics/graphics_breakpoint_observer.cpp
|
|
|
|
debugger/graphics/graphics_breakpoint_observer.h
|
|
|
|
debugger/graphics/graphics_breakpoints.cpp
|
|
|
|
debugger/graphics/graphics_breakpoints.h
|
|
|
|
debugger/graphics/graphics_breakpoints_p.h
|
|
|
|
debugger/graphics/graphics_surface.cpp
|
|
|
|
debugger/graphics/graphics_surface.h
|
2018-07-02 10:10:41 -07:00
|
|
|
debugger/console.cpp
|
|
|
|
debugger/console.h
|
2018-01-17 16:37:34 -08:00
|
|
|
debugger/profiler.cpp
|
|
|
|
debugger/profiler.h
|
|
|
|
debugger/wait_tree.cpp
|
|
|
|
debugger/wait_tree.h
|
|
|
|
game_list.cpp
|
|
|
|
game_list.h
|
|
|
|
game_list_p.h
|
2018-09-07 13:08:08 -07:00
|
|
|
game_list_worker.cpp
|
|
|
|
game_list_worker.h
|
2018-01-17 16:37:34 -08:00
|
|
|
hotkeys.cpp
|
|
|
|
hotkeys.h
|
|
|
|
main.cpp
|
|
|
|
main.h
|
|
|
|
ui_settings.cpp
|
|
|
|
ui_settings.h
|
|
|
|
util/spinbox.cpp
|
|
|
|
util/spinbox.h
|
|
|
|
util/util.cpp
|
|
|
|
util/util.h
|
|
|
|
yuzu.rc
|
|
|
|
)
|
2014-03-31 19:26:50 -07:00
|
|
|
|
2014-08-19 04:34:00 -07:00
|
|
|
set(UIS
|
2018-01-17 16:37:34 -08:00
|
|
|
aboutdialog.ui
|
|
|
|
configuration/configure.ui
|
2018-07-30 20:57:53 -07:00
|
|
|
configuration/configure_audio.ui
|
2018-01-17 16:37:34 -08:00
|
|
|
configuration/configure_debug.ui
|
2018-07-28 09:32:16 -07:00
|
|
|
configuration/configure_gamelist.ui
|
2018-01-17 16:37:34 -08:00
|
|
|
configuration/configure_general.ui
|
|
|
|
configuration/configure_graphics.ui
|
|
|
|
configuration/configure_input.ui
|
|
|
|
configuration/configure_system.ui
|
|
|
|
hotkeys.ui
|
|
|
|
main.ui
|
|
|
|
)
|
2014-08-23 18:22:05 -07:00
|
|
|
|
2018-08-29 06:42:53 -07:00
|
|
|
file(GLOB COMPAT_LIST
|
|
|
|
${CMAKE_BINARY_DIR}/dist/compatibility_list/compatibility_list.qrc
|
|
|
|
${CMAKE_BINARY_DIR}/dist/compatibility_list/compatibility_list.json)
|
2018-01-14 10:15:45 -08:00
|
|
|
file(GLOB_RECURSE ICONS ${CMAKE_SOURCE_DIR}/dist/icons/*)
|
2017-06-23 17:39:42 -07:00
|
|
|
file(GLOB_RECURSE THEMES ${CMAKE_SOURCE_DIR}/dist/qt_themes/*)
|
|
|
|
|
2018-01-16 08:51:08 -08:00
|
|
|
qt5_wrap_ui(UI_HDRS ${UIS})
|
2014-03-31 19:26:50 -07:00
|
|
|
|
2018-01-17 16:37:34 -08:00
|
|
|
target_sources(yuzu
|
|
|
|
PRIVATE
|
2018-08-29 06:42:53 -07:00
|
|
|
${COMPAT_LIST}
|
2018-01-17 16:37:34 -08:00
|
|
|
${ICONS}
|
|
|
|
${THEMES}
|
|
|
|
${UI_HDRS}
|
|
|
|
${UIS}
|
|
|
|
)
|
|
|
|
|
2015-03-07 16:07:49 -08:00
|
|
|
if (APPLE)
|
2018-01-13 14:39:31 -08:00
|
|
|
set(MACOSX_ICON "../../dist/yuzu.icns")
|
2015-09-11 13:08:42 -07:00
|
|
|
set_source_files_properties(${MACOSX_ICON} PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
|
2018-01-17 16:37:34 -08:00
|
|
|
target_sources(yuzu PRIVATE ${MACOSX_ICON})
|
|
|
|
set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE TRUE)
|
2018-01-11 18:21:20 -08:00
|
|
|
set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist)
|
2018-07-02 10:10:41 -07:00
|
|
|
elseif(WIN32)
|
|
|
|
# compile as a win32 gui application instead of a console application
|
|
|
|
target_link_libraries(yuzu PRIVATE Qt5::WinMain)
|
|
|
|
if(MSVC)
|
|
|
|
set_target_properties(yuzu PROPERTIES LINK_FLAGS_RELEASE "/SUBSYSTEM:WINDOWS")
|
|
|
|
elseif(MINGW)
|
|
|
|
set_target_properties(yuzu PROPERTIES LINK_FLAGS_RELEASE "-mwindows")
|
|
|
|
endif()
|
2015-03-07 16:07:49 -08:00
|
|
|
endif()
|
2018-01-17 16:37:34 -08:00
|
|
|
|
|
|
|
create_target_directory_groups(yuzu)
|
|
|
|
|
2018-01-11 18:21:20 -08:00
|
|
|
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)
|
2014-03-31 19:26:50 -07:00
|
|
|
|
2016-10-09 22:58:05 -07:00
|
|
|
if(UNIX AND NOT APPLE)
|
2018-01-11 18:21:20 -08:00
|
|
|
install(TARGETS yuzu RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}/bin")
|
2015-07-09 12:19:02 -07:00
|
|
|
endif()
|
2015-02-25 20:36:02 -08:00
|
|
|
|
2016-12-11 06:10:21 -08:00
|
|
|
if (MSVC)
|
2018-01-13 20:17:42 -08:00
|
|
|
include(CopyYuzuQt5Deps)
|
|
|
|
include(CopyYuzuSDLDeps)
|
2018-01-04 10:15:29 -08:00
|
|
|
include(CopyYuzuUnicornDeps)
|
2018-01-13 14:14:04 -08:00
|
|
|
copy_yuzu_Qt5_deps(yuzu)
|
|
|
|
copy_yuzu_SDL_deps(yuzu)
|
2018-01-11 18:21:20 -08:00
|
|
|
copy_yuzu_unicorn_deps(yuzu)
|
2015-02-25 20:36:02 -08:00
|
|
|
endif()
|