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.
This commit is contained in:
Lioncash 2017-12-10 18:55:03 -05:00
parent 9699194b54
commit ab021d163e
14 changed files with 735 additions and 767 deletions

View File

@ -274,12 +274,14 @@ endif()
# This function should be passed a list of all files in a target. It will automatically generate # This function should be passed a list of all files in a target. It will automatically generate
# file groups following the directory hierarchy, so that the layout of the files in IDEs matches the # file groups following the directory hierarchy, so that the layout of the files in IDEs matches the
# one in the filesystem. # one in the filesystem.
function(create_directory_groups) function(create_target_directory_groups target_name)
# Place any files that aren't in the source list in a separate group so that they don't get in # Place any files that aren't in the source list in a separate group so that they don't get in
# the way. # the way.
source_group("Other Files" REGULAR_EXPRESSION ".") source_group("Other Files" REGULAR_EXPRESSION ".")
foreach(file_name ${ARGV}) get_target_property(target_sources "${target_name}" SOURCES)
foreach(file_name IN LISTS target_sources)
get_filename_component(dir_name "${file_name}" PATH) get_filename_component(dir_name "${file_name}" PATH)
# Group names use '\' as a separator even though the entire rest of CMake uses '/'... # Group names use '\' as a separator even though the entire rest of CMake uses '/'...
string(REPLACE "/" "\\" group_name "${dir_name}") string(REPLACE "/" "\\" group_name "${dir_name}")

View File

@ -1,11 +1,9 @@
set(SRCS add_library(getopt
getopt.c getopt.c
) getopt.h
set(HEADERS )
getopt.h
) create_target_directory_groups(getopt)
create_directory_groups(${SRCS} ${HEADERS})
add_library(getopt ${SRCS} ${HEADERS})
target_compile_definitions(getopt PUBLIC STATIC_GETOPT) target_compile_definitions(getopt PUBLIC STATIC_GETOPT)
target_include_directories(getopt INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}) target_include_directories(getopt INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})

View File

@ -1,13 +1,10 @@
set(SRCS add_library(glad STATIC
src/glad.c src/glad.c
) include/KHR/khrplatform.h
set(HEADERS include/glad/glad.h
include/KHR/khrplatform.h )
include/glad/glad.h
)
create_directory_groups(${SRCS} ${HEADERS}) create_target_directory_groups(glad)
add_library(glad STATIC ${SRCS} ${HEADERS})
target_include_directories(glad PUBLIC "include/") target_include_directories(glad PUBLIC "include/")
if ("${CMAKE_SYSTEM_NAME}" MATCHES "Linux") if ("${CMAKE_SYSTEM_NAME}" MATCHES "Linux")

View File

@ -1,12 +1,9 @@
set(SRCS add_library(inih
inih/ini.c inih/ini.c
inih/cpp/INIReader.cpp inih/ini.h
) inih/cpp/INIReader.cpp
set(HEADERS inih/cpp/INIReader.h
inih/ini.h )
inih/cpp/INIReader.h
)
create_directory_groups(${SRCS} ${HEADERS}) create_target_directory_groups(inih)
add_library(inih ${SRCS} ${HEADERS})
target_include_directories(inih INTERFACE .) target_include_directories(inih INTERFACE .)

View File

@ -1,40 +1,33 @@
set(SRCS add_library(audio_core STATIC
audio_core.cpp audio_core.cpp
codec.cpp audio_core.h
hle/dsp.cpp codec.cpp
hle/filter.cpp codec.h
hle/mixers.cpp hle/common.h
hle/pipe.cpp hle/dsp.cpp
hle/source.cpp hle/dsp.h
interpolate.cpp hle/filter.cpp
sink_details.cpp hle/filter.h
time_stretch.cpp hle/mixers.cpp
) hle/mixers.h
hle/pipe.cpp
hle/pipe.h
hle/source.cpp
hle/source.h
interpolate.cpp
interpolate.h
null_sink.h
sink.h
sink_details.cpp
sink_details.h
time_stretch.cpp
time_stretch.h
set(HEADERS $<$<BOOL:SDL2_FOUND>:sdl2_sink.cpp sdl2_sink.h>
audio_core.h )
codec.h
hle/common.h
hle/dsp.h
hle/filter.h
hle/mixers.h
hle/pipe.h
hle/source.h
interpolate.h
null_sink.h
sink.h
sink_details.h
time_stretch.h
)
if(SDL2_FOUND) create_target_directory_groups(audio_core)
set(SRCS ${SRCS} sdl2_sink.cpp)
set(HEADERS ${HEADERS} sdl2_sink.h)
endif()
create_directory_groups(${SRCS} ${HEADERS})
add_library(audio_core STATIC ${SRCS} ${HEADERS})
target_link_libraries(audio_core PUBLIC common core) target_link_libraries(audio_core PUBLIC common core)
target_link_libraries(audio_core PRIVATE SoundTouch) target_link_libraries(audio_core PRIVATE SoundTouch)

View File

@ -1,21 +1,18 @@
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMakeModules) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMakeModules)
set(SRCS add_executable(citra
emu_window/emu_window_sdl2.cpp citra.cpp
citra.cpp citra.rc
config.cpp config.cpp
citra.rc config.h
) default_ini.h
set(HEADERS emu_window/emu_window_sdl2.cpp
emu_window/emu_window_sdl2.h emu_window/emu_window_sdl2.h
config.h resource.h
default_ini.h )
resource.h
)
create_directory_groups(${SRCS} ${HEADERS}) create_target_directory_groups(citra)
add_executable(citra ${SRCS} ${HEADERS})
target_link_libraries(citra PRIVATE common core input_common network) target_link_libraries(citra PRIVATE common core input_common network)
target_link_libraries(citra PRIVATE inih glad) target_link_libraries(citra PRIVATE inih glad)
if (MSVC) if (MSVC)

View File

@ -3,107 +3,112 @@ set(CMAKE_AUTORCC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMakeModules) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMakeModules)
set(SRCS add_executable(citra-qt
configuration/config.cpp Info.plist
configuration/configure_audio.cpp aboutdialog.cpp
configuration/configure_debug.cpp aboutdialog.h
configuration/configure_dialog.cpp bootmanager.cpp
configuration/configure_general.cpp bootmanager.h
configuration/configure_graphics.cpp citra-qt.rc
configuration/configure_input.cpp configuration/config.cpp
configuration/configure_system.cpp configuration/config.h
configuration/configure_web.cpp configuration/configure_audio.cpp
debugger/graphics/graphics.cpp configuration/configure_audio.h
debugger/graphics/graphics_breakpoint_observer.cpp configuration/configure_debug.cpp
debugger/graphics/graphics_breakpoints.cpp configuration/configure_debug.h
debugger/graphics/graphics_cmdlists.cpp configuration/configure_dialog.cpp
debugger/graphics/graphics_surface.cpp configuration/configure_dialog.h
debugger/graphics/graphics_tracing.cpp configuration/configure_general.cpp
debugger/graphics/graphics_vertex_shader.cpp configuration/configure_general.h
debugger/profiler.cpp configuration/configure_graphics.cpp
debugger/registers.cpp configuration/configure_graphics.h
debugger/wait_tree.cpp configuration/configure_input.cpp
updater/updater.cpp configuration/configure_input.h
util/spinbox.cpp configuration/configure_system.cpp
util/util.cpp configuration/configure_system.h
aboutdialog.cpp configuration/configure_web.cpp
bootmanager.cpp configuration/configure_web.h
game_list.cpp debugger/graphics/graphics.cpp
hotkeys.cpp debugger/graphics/graphics.h
main.cpp debugger/graphics/graphics_breakpoint_observer.cpp
ui_settings.cpp debugger/graphics/graphics_breakpoint_observer.h
citra-qt.rc debugger/graphics/graphics_breakpoints.cpp
Info.plist debugger/graphics/graphics_breakpoints.h
) debugger/graphics/graphics_breakpoints_p.h
debugger/graphics/graphics_cmdlists.cpp
set(HEADERS debugger/graphics/graphics_cmdlists.h
configuration/config.h debugger/graphics/graphics_surface.cpp
configuration/configure_audio.h debugger/graphics/graphics_surface.h
configuration/configure_debug.h debugger/graphics/graphics_tracing.cpp
configuration/configure_dialog.h debugger/graphics/graphics_tracing.h
configuration/configure_general.h debugger/graphics/graphics_vertex_shader.cpp
configuration/configure_graphics.h debugger/graphics/graphics_vertex_shader.h
configuration/configure_input.h debugger/profiler.cpp
configuration/configure_system.h debugger/profiler.h
configuration/configure_web.h debugger/registers.cpp
debugger/graphics/graphics.h debugger/registers.h
debugger/graphics/graphics_breakpoint_observer.h debugger/wait_tree.cpp
debugger/graphics/graphics_breakpoints.h debugger/wait_tree.h
debugger/graphics/graphics_breakpoints_p.h game_list.cpp
debugger/graphics/graphics_cmdlists.h game_list.h
debugger/graphics/graphics_surface.h game_list_p.h
debugger/graphics/graphics_tracing.h hotkeys.cpp
debugger/graphics/graphics_vertex_shader.h hotkeys.h
debugger/profiler.h main.cpp
debugger/registers.h main.h
debugger/wait_tree.h ui_settings.cpp
updater/updater.h ui_settings.h
updater/updater_p.h updater/updater.cpp
util/spinbox.h updater/updater.h
util/util.h updater/updater_p.h
aboutdialog.h util/spinbox.cpp
bootmanager.h util/spinbox.h
game_list.h util/util.cpp
game_list_p.h util/util.h
hotkeys.h )
main.h
ui_settings.h
)
set(UIS set(UIS
configuration/configure.ui configuration/configure.ui
configuration/configure_audio.ui configuration/configure_audio.ui
configuration/configure_debug.ui configuration/configure_debug.ui
configuration/configure_general.ui configuration/configure_general.ui
configuration/configure_graphics.ui configuration/configure_graphics.ui
configuration/configure_input.ui configuration/configure_input.ui
configuration/configure_system.ui configuration/configure_system.ui
configuration/configure_web.ui configuration/configure_web.ui
debugger/registers.ui debugger/registers.ui
aboutdialog.ui aboutdialog.ui
hotkeys.ui hotkeys.ui
main.ui main.ui
) )
file(GLOB_RECURSE ICONS ${CMAKE_SOURCE_DIR}/dist/icons/*) file(GLOB_RECURSE ICONS ${CMAKE_SOURCE_DIR}/dist/icons/*)
file(GLOB_RECURSE THEMES ${CMAKE_SOURCE_DIR}/dist/qt_themes/*) file(GLOB_RECURSE THEMES ${CMAKE_SOURCE_DIR}/dist/qt_themes/*)
create_directory_groups(${SRCS} ${HEADERS} ${UIS})
if (Qt5_FOUND) if (Qt5_FOUND)
qt5_wrap_ui(UI_HDRS ${UIS}) qt5_wrap_ui(UI_HDRS ${UIS})
else() else()
qt4_wrap_ui(UI_HDRS ${UIS}) qt4_wrap_ui(UI_HDRS ${UIS})
endif() endif()
target_sources(citra-qt
PRIVATE
${ICONS}
${THEMES}
${UI_HDRS}
${UIS}
)
if (APPLE) if (APPLE)
set(MACOSX_ICON "../../dist/citra.icns") set(MACOSX_ICON "../../dist/citra.icns")
set_source_files_properties(${MACOSX_ICON} PROPERTIES MACOSX_PACKAGE_LOCATION Resources) set_source_files_properties(${MACOSX_ICON} PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
add_executable(citra-qt MACOSX_BUNDLE ${SRCS} ${HEADERS} ${UI_HDRS} ${ICONS} ${THEMES} ${MACOSX_ICON}) target_sources(citra-qt PRIVATE ${MACOSX_ICON})
set_target_properties(citra-qt PROPERTIES MACOSX_BUNDLE TRUE)
set_target_properties(citra-qt PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist) set_target_properties(citra-qt PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist)
else()
add_executable(citra-qt ${SRCS} ${HEADERS} ${UI_HDRS} ${ICONS} ${THEMES})
endif() endif()
create_target_directory_groups(citra-qt)
target_link_libraries(citra-qt PRIVATE audio_core common core input_common network video_core) target_link_libraries(citra-qt PRIVATE audio_core common core input_common network video_core)
target_link_libraries(citra-qt PRIVATE Boost::boost glad nihstro-headers Qt5::OpenGL Qt5::Widgets) target_link_libraries(citra-qt PRIVATE Boost::boost glad nihstro-headers Qt5::OpenGL Qt5::Widgets)
target_link_libraries(citra-qt PRIVATE ${PLATFORM_LIBRARIES} Threads::Threads) target_link_libraries(citra-qt PRIVATE ${PLATFORM_LIBRARIES} Threads::Threads)

View File

@ -24,78 +24,73 @@ if ($ENV{CI})
endif() endif()
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp.in" "${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp" @ONLY) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp.in" "${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp" @ONLY)
set(SRCS add_library(common STATIC
break_points.cpp alignment.h
file_util.cpp assert.h
hash.cpp bit_field.h
logging/filter.cpp bit_set.h
logging/text_formatter.cpp break_points.cpp
logging/backend.cpp break_points.h
memory_util.cpp chunk_file.h
microprofile.cpp code_block.h
misc.cpp color.h
param_package.cpp common_funcs.h
scm_rev.cpp common_paths.h
string_util.cpp common_types.h
telemetry.cpp file_util.cpp
thread.cpp file_util.h
timer.cpp hash.cpp
) hash.h
linear_disk_cache.h
set(HEADERS logging/backend.cpp
alignment.h logging/backend.h
assert.h logging/filter.cpp
bit_field.h logging/filter.h
bit_set.h logging/log.h
break_points.h logging/text_formatter.cpp
chunk_file.h logging/text_formatter.h
code_block.h math_util.h
color.h memory_util.cpp
common_funcs.h memory_util.h
common_paths.h microprofile.cpp
common_types.h microprofile.h
file_util.h microprofileui.h
hash.h misc.cpp
linear_disk_cache.h param_package.cpp
logging/text_formatter.h param_package.h
logging/filter.h platform.h
logging/log.h quaternion.h
logging/backend.h scm_rev.cpp
math_util.h scm_rev.h
memory_util.h scope_exit.h
microprofile.h string_util.cpp
microprofileui.h string_util.h
param_package.h swap.h
platform.h synchronized_wrapper.h
quaternion.h telemetry.cpp
scm_rev.h telemetry.h
scope_exit.h thread.cpp
string_util.h thread.h
swap.h thread_queue_list.h
synchronized_wrapper.h threadsafe_queue.h
telemetry.h timer.cpp
thread.h timer.h
thread_queue_list.h vector_math.h
threadsafe_queue.h )
timer.h
vector_math.h
)
if(ARCHITECTURE_x86_64) if(ARCHITECTURE_x86_64)
set(SRCS ${SRCS} target_sources(common
PRIVATE
x64/cpu_detect.cpp x64/cpu_detect.cpp
)
set(HEADERS ${HEADERS}
x64/cpu_detect.h x64/cpu_detect.h
x64/xbyak_abi.h x64/xbyak_abi.h
x64/xbyak_util.h x64/xbyak_util.h
) )
endif() endif()
create_directory_groups(${SRCS} ${HEADERS}) create_target_directory_groups(common)
add_library(common STATIC ${SRCS} ${HEADERS})
target_link_libraries(common PUBLIC Boost::boost microprofile) target_link_libraries(common PUBLIC Boost::boost microprofile)
if (ARCHITECTURE_x86_64) if (ARCHITECTURE_x86_64)
target_link_libraries(common PRIVATE xbyak) target_link_libraries(common PRIVATE xbyak)

View File

@ -1,409 +1,406 @@
set(SRCS add_library(core STATIC
arm/dynarmic/arm_dynarmic.cpp 3ds.h
arm/dynarmic/arm_dynarmic_cp15.cpp arm/arm_interface.h
arm/dyncom/arm_dyncom.cpp arm/dynarmic/arm_dynarmic.cpp
arm/dyncom/arm_dyncom_dec.cpp arm/dynarmic/arm_dynarmic.h
arm/dyncom/arm_dyncom_interpreter.cpp arm/dynarmic/arm_dynarmic_cp15.cpp
arm/dyncom/arm_dyncom_thumb.cpp arm/dynarmic/arm_dynarmic_cp15.h
arm/dyncom/arm_dyncom_trans.cpp arm/dyncom/arm_dyncom.cpp
arm/skyeye_common/armstate.cpp arm/dyncom/arm_dyncom.h
arm/skyeye_common/armsupp.cpp arm/dyncom/arm_dyncom_dec.cpp
arm/skyeye_common/vfp/vfp.cpp arm/dyncom/arm_dyncom_dec.h
arm/skyeye_common/vfp/vfpdouble.cpp arm/dyncom/arm_dyncom_interpreter.cpp
arm/skyeye_common/vfp/vfpinstr.cpp arm/dyncom/arm_dyncom_interpreter.h
arm/skyeye_common/vfp/vfpsingle.cpp arm/dyncom/arm_dyncom_run.h
core.cpp arm/dyncom/arm_dyncom_thumb.cpp
core_timing.cpp arm/dyncom/arm_dyncom_thumb.h
file_sys/archive_backend.cpp arm/dyncom/arm_dyncom_trans.cpp
file_sys/archive_extsavedata.cpp arm/dyncom/arm_dyncom_trans.h
file_sys/archive_ncch.cpp arm/skyeye_common/arm_regformat.h
file_sys/archive_other_savedata.cpp arm/skyeye_common/armstate.cpp
file_sys/archive_savedata.cpp arm/skyeye_common/armstate.h
file_sys/archive_sdmc.cpp arm/skyeye_common/armsupp.cpp
file_sys/archive_sdmcwriteonly.cpp arm/skyeye_common/armsupp.h
file_sys/archive_selfncch.cpp arm/skyeye_common/vfp/asm_vfp.h
file_sys/archive_source_sd_savedata.cpp arm/skyeye_common/vfp/vfp.cpp
file_sys/archive_systemsavedata.cpp arm/skyeye_common/vfp/vfp.h
file_sys/cia_container.cpp arm/skyeye_common/vfp/vfp_helper.h
file_sys/disk_archive.cpp arm/skyeye_common/vfp/vfpdouble.cpp
file_sys/ivfc_archive.cpp arm/skyeye_common/vfp/vfpinstr.cpp
file_sys/ncch_container.cpp arm/skyeye_common/vfp/vfpsingle.cpp
file_sys/path_parser.cpp core.cpp
file_sys/savedata_archive.cpp core.h
file_sys/title_metadata.cpp core_timing.cpp
frontend/camera/blank_camera.cpp core_timing.h
frontend/camera/factory.cpp file_sys/archive_backend.cpp
frontend/camera/interface.cpp file_sys/archive_backend.h
frontend/emu_window.cpp file_sys/archive_extsavedata.cpp
frontend/framebuffer_layout.cpp file_sys/archive_extsavedata.h
gdbstub/gdbstub.cpp file_sys/archive_ncch.cpp
hle/config_mem.cpp file_sys/archive_ncch.h
hle/applets/applet.cpp file_sys/archive_other_savedata.cpp
hle/applets/erreula.cpp file_sys/archive_other_savedata.h
hle/applets/mii_selector.cpp file_sys/archive_savedata.cpp
hle/applets/mint.cpp file_sys/archive_savedata.h
hle/applets/swkbd.cpp file_sys/archive_sdmc.cpp
hle/kernel/address_arbiter.cpp file_sys/archive_sdmc.h
hle/kernel/client_port.cpp file_sys/archive_sdmcwriteonly.cpp
hle/kernel/client_session.cpp file_sys/archive_sdmcwriteonly.h
hle/kernel/event.cpp file_sys/archive_selfncch.cpp
hle/kernel/handle_table.cpp file_sys/archive_selfncch.h
hle/kernel/hle_ipc.cpp file_sys/archive_source_sd_savedata.cpp
hle/kernel/kernel.cpp file_sys/archive_source_sd_savedata.h
hle/kernel/memory.cpp file_sys/archive_systemsavedata.cpp
hle/kernel/mutex.cpp file_sys/archive_systemsavedata.h
hle/kernel/process.cpp file_sys/cia_container.cpp
hle/kernel/resource_limit.cpp file_sys/cia_container.h
hle/kernel/semaphore.cpp file_sys/directory_backend.h
hle/kernel/server_port.cpp file_sys/disk_archive.cpp
hle/kernel/server_session.cpp file_sys/disk_archive.h
hle/kernel/shared_memory.cpp file_sys/errors.h
hle/kernel/svc.cpp file_sys/file_backend.h
hle/kernel/thread.cpp file_sys/ivfc_archive.cpp
hle/kernel/timer.cpp file_sys/ivfc_archive.h
hle/kernel/vm_manager.cpp file_sys/ncch_container.cpp
hle/kernel/wait_object.cpp file_sys/ncch_container.h
hle/kernel/ipc.cpp file_sys/path_parser.cpp
hle/lock.cpp file_sys/path_parser.h
hle/romfs.cpp file_sys/savedata_archive.cpp
hle/service/ac/ac.cpp file_sys/savedata_archive.h
hle/service/ac/ac_i.cpp file_sys/title_metadata.cpp
hle/service/ac/ac_u.cpp file_sys/title_metadata.h
hle/service/act/act.cpp frontend/camera/blank_camera.cpp
hle/service/act/act_a.cpp frontend/camera/blank_camera.h
hle/service/act/act_u.cpp frontend/camera/factory.cpp
hle/service/am/am.cpp frontend/camera/factory.h
hle/service/am/am_app.cpp frontend/camera/interface.cpp
hle/service/am/am_net.cpp frontend/camera/interface.h
hle/service/am/am_sys.cpp frontend/emu_window.cpp
hle/service/am/am_u.cpp frontend/emu_window.h
hle/service/apt/apt.cpp frontend/framebuffer_layout.cpp
hle/service/apt/apt_a.cpp frontend/framebuffer_layout.h
hle/service/apt/apt_s.cpp frontend/input.h
hle/service/apt/apt_u.cpp gdbstub/gdbstub.cpp
hle/service/apt/bcfnt/bcfnt.cpp gdbstub/gdbstub.h
hle/service/boss/boss.cpp hle/applets/applet.cpp
hle/service/boss/boss_p.cpp hle/applets/applet.h
hle/service/boss/boss_u.cpp hle/applets/erreula.cpp
hle/service/cam/cam.cpp hle/applets/erreula.h
hle/service/cam/cam_c.cpp hle/applets/mii_selector.cpp
hle/service/cam/cam_q.cpp hle/applets/mii_selector.h
hle/service/cam/cam_s.cpp hle/applets/mint.cpp
hle/service/cam/cam_u.cpp hle/applets/mint.h
hle/service/cecd/cecd.cpp hle/applets/swkbd.cpp
hle/service/cecd/cecd_ndm.cpp hle/applets/swkbd.h
hle/service/cecd/cecd_s.cpp hle/config_mem.cpp
hle/service/cecd/cecd_u.cpp hle/config_mem.h
hle/service/cfg/cfg.cpp hle/function_wrappers.h
hle/service/cfg/cfg_i.cpp hle/ipc.h
hle/service/cfg/cfg_nor.cpp hle/ipc_helpers.h
hle/service/cfg/cfg_s.cpp hle/kernel/address_arbiter.cpp
hle/service/cfg/cfg_u.cpp hle/kernel/address_arbiter.h
hle/service/csnd_snd.cpp hle/kernel/client_port.cpp
hle/service/dlp/dlp.cpp hle/kernel/client_port.h
hle/service/dlp/dlp_clnt.cpp hle/kernel/client_session.cpp
hle/service/dlp/dlp_fkcl.cpp hle/kernel/client_session.h
hle/service/dlp/dlp_srvr.cpp hle/kernel/errors.h
hle/service/dsp_dsp.cpp hle/kernel/event.cpp
hle/service/err_f.cpp hle/kernel/event.h
hle/service/frd/frd.cpp hle/kernel/handle_table.cpp
hle/service/frd/frd_a.cpp hle/kernel/handle_table.h
hle/service/frd/frd_u.cpp hle/kernel/hle_ipc.cpp
hle/service/fs/archive.cpp hle/kernel/hle_ipc.h
hle/service/fs/fs_user.cpp hle/kernel/ipc.cpp
hle/service/gsp_gpu.cpp hle/kernel/ipc.h
hle/service/gsp_lcd.cpp hle/kernel/kernel.cpp
hle/service/hid/hid.cpp hle/kernel/kernel.h
hle/service/hid/hid_spvr.cpp hle/kernel/memory.cpp
hle/service/hid/hid_user.cpp hle/kernel/memory.h
hle/service/http_c.cpp hle/kernel/mutex.cpp
hle/service/ir/extra_hid.cpp hle/kernel/mutex.h
hle/service/ir/ir.cpp hle/kernel/process.cpp
hle/service/ir/ir_rst.cpp hle/kernel/process.h
hle/service/ir/ir_u.cpp hle/kernel/resource_limit.cpp
hle/service/ir/ir_user.cpp hle/kernel/resource_limit.h
hle/service/ldr_ro/cro_helper.cpp hle/kernel/semaphore.cpp
hle/service/ldr_ro/ldr_ro.cpp hle/kernel/semaphore.h
hle/service/ldr_ro/memory_synchronizer.cpp hle/kernel/server_port.cpp
hle/service/mic_u.cpp hle/kernel/server_port.h
hle/service/mvd/mvd.cpp hle/kernel/server_session.cpp
hle/service/mvd/mvd_std.cpp hle/kernel/server_session.h
hle/service/ndm/ndm.cpp hle/kernel/session.h
hle/service/ndm/ndm_u.cpp hle/kernel/shared_memory.cpp
hle/service/nfc/nfc.cpp hle/kernel/shared_memory.h
hle/service/nfc/nfc_m.cpp hle/kernel/svc.cpp
hle/service/nfc/nfc_u.cpp hle/kernel/svc.h
hle/service/news/news.cpp hle/kernel/thread.cpp
hle/service/news/news_s.cpp hle/kernel/thread.h
hle/service/news/news_u.cpp hle/kernel/timer.cpp
hle/service/nim/nim.cpp hle/kernel/timer.h
hle/service/nim/nim_aoc.cpp hle/kernel/vm_manager.cpp
hle/service/nim/nim_s.cpp hle/kernel/vm_manager.h
hle/service/nim/nim_u.cpp hle/kernel/wait_object.cpp
hle/service/ns/ns.cpp hle/kernel/wait_object.h
hle/service/ns/ns_s.cpp hle/lock.cpp
hle/service/nwm/nwm.cpp hle/lock.h
hle/service/nwm/nwm_cec.cpp hle/result.h
hle/service/nwm/nwm_ext.cpp hle/romfs.cpp
hle/service/nwm/nwm_inf.cpp hle/romfs.h
hle/service/nwm/nwm_sap.cpp hle/service/ac/ac.cpp
hle/service/nwm/nwm_soc.cpp hle/service/ac/ac.h
hle/service/nwm/nwm_tst.cpp hle/service/ac/ac_i.cpp
hle/service/nwm/nwm_uds.cpp hle/service/ac/ac_i.h
hle/service/nwm/uds_beacon.cpp hle/service/ac/ac_u.cpp
hle/service/nwm/uds_connection.cpp hle/service/ac/ac_u.h
hle/service/nwm/uds_data.cpp hle/service/act/act.cpp
hle/service/pm_app.cpp hle/service/act/act.h
hle/service/ptm/ptm.cpp hle/service/act/act_a.cpp
hle/service/ptm/ptm_gets.cpp hle/service/act/act_a.h
hle/service/ptm/ptm_play.cpp hle/service/act/act_u.cpp
hle/service/ptm/ptm_sets.cpp hle/service/act/act_u.h
hle/service/ptm/ptm_sysm.cpp hle/service/am/am.cpp
hle/service/ptm/ptm_u.cpp hle/service/am/am.h
hle/service/pxi/dev.cpp hle/service/am/am_app.cpp
hle/service/pxi/pxi.cpp hle/service/am/am_app.h
hle/service/qtm/qtm.cpp hle/service/am/am_net.cpp
hle/service/qtm/qtm_s.cpp hle/service/am/am_net.h
hle/service/qtm/qtm_sp.cpp hle/service/am/am_sys.cpp
hle/service/qtm/qtm_u.cpp hle/service/am/am_sys.h
hle/service/service.cpp hle/service/am/am_u.cpp
hle/service/sm/sm.cpp hle/service/am/am_u.h
hle/service/sm/srv.cpp hle/service/apt/apt.cpp
hle/service/soc_u.cpp hle/service/apt/apt.h
hle/service/ssl_c.cpp hle/service/apt/apt_a.cpp
hle/service/y2r_u.cpp hle/service/apt/apt_a.h
hle/shared_page.cpp hle/service/apt/apt_s.cpp
hw/aes/arithmetic128.cpp hle/service/apt/apt_s.h
hw/aes/ccm.cpp hle/service/apt/apt_u.cpp
hw/aes/key.cpp hle/service/apt/apt_u.h
hw/gpu.cpp hle/service/apt/bcfnt/bcfnt.cpp
hw/hw.cpp hle/service/apt/bcfnt/bcfnt.h
hw/lcd.cpp hle/service/boss/boss.cpp
hw/y2r.cpp hle/service/boss/boss.h
loader/3dsx.cpp hle/service/boss/boss_p.cpp
loader/elf.cpp hle/service/boss/boss_p.h
loader/loader.cpp hle/service/boss/boss_u.cpp
loader/ncch.cpp hle/service/boss/boss_u.h
loader/smdh.cpp hle/service/cam/cam.cpp
tracer/recorder.cpp hle/service/cam/cam.h
memory.cpp hle/service/cam/cam_c.cpp
perf_stats.cpp hle/service/cam/cam_c.h
settings.cpp hle/service/cam/cam_q.cpp
telemetry_session.cpp hle/service/cam/cam_q.h
) hle/service/cam/cam_s.cpp
hle/service/cam/cam_s.h
hle/service/cam/cam_u.cpp
hle/service/cam/cam_u.h
hle/service/cecd/cecd.cpp
hle/service/cecd/cecd.h
hle/service/cecd/cecd_ndm.cpp
hle/service/cecd/cecd_ndm.h
hle/service/cecd/cecd_s.cpp
hle/service/cecd/cecd_s.h
hle/service/cecd/cecd_u.cpp
hle/service/cecd/cecd_u.h
hle/service/cfg/cfg.cpp
hle/service/cfg/cfg.h
hle/service/cfg/cfg_i.cpp
hle/service/cfg/cfg_i.h
hle/service/cfg/cfg_nor.cpp
hle/service/cfg/cfg_nor.h
hle/service/cfg/cfg_s.cpp
hle/service/cfg/cfg_s.h
hle/service/cfg/cfg_u.cpp
hle/service/cfg/cfg_u.h
hle/service/csnd_snd.cpp
hle/service/csnd_snd.h
hle/service/dlp/dlp.cpp
hle/service/dlp/dlp.h
hle/service/dlp/dlp_clnt.cpp
hle/service/dlp/dlp_clnt.h
hle/service/dlp/dlp_fkcl.cpp
hle/service/dlp/dlp_fkcl.h
hle/service/dlp/dlp_srvr.cpp
hle/service/dlp/dlp_srvr.h
hle/service/dsp_dsp.cpp
hle/service/dsp_dsp.h
hle/service/err_f.cpp
hle/service/err_f.h
hle/service/frd/frd.cpp
hle/service/frd/frd.h
hle/service/frd/frd_a.cpp
hle/service/frd/frd_a.h
hle/service/frd/frd_u.cpp
hle/service/frd/frd_u.h
hle/service/fs/archive.cpp
hle/service/fs/archive.h
hle/service/fs/fs_user.cpp
hle/service/fs/fs_user.h
hle/service/gsp_gpu.cpp
hle/service/gsp_gpu.h
hle/service/gsp_lcd.cpp
hle/service/gsp_lcd.h
hle/service/hid/hid.cpp
hle/service/hid/hid.h
hle/service/hid/hid_spvr.cpp
hle/service/hid/hid_spvr.h
hle/service/hid/hid_user.cpp
hle/service/hid/hid_user.h
hle/service/http_c.cpp
hle/service/http_c.h
hle/service/ir/extra_hid.cpp
hle/service/ir/extra_hid.h
hle/service/ir/ir.cpp
hle/service/ir/ir.h
hle/service/ir/ir_rst.cpp
hle/service/ir/ir_rst.h
hle/service/ir/ir_u.cpp
hle/service/ir/ir_u.h
hle/service/ir/ir_user.cpp
hle/service/ir/ir_user.h
hle/service/ldr_ro/cro_helper.cpp
hle/service/ldr_ro/cro_helper.h
hle/service/ldr_ro/ldr_ro.cpp
hle/service/ldr_ro/ldr_ro.h
hle/service/ldr_ro/memory_synchronizer.cpp
hle/service/ldr_ro/memory_synchronizer.h
hle/service/mic_u.cpp
hle/service/mic_u.h
hle/service/mvd/mvd.cpp
hle/service/mvd/mvd.h
hle/service/mvd/mvd_std.cpp
hle/service/mvd/mvd_std.h
hle/service/ndm/ndm.cpp
hle/service/ndm/ndm.h
hle/service/ndm/ndm_u.cpp
hle/service/ndm/ndm_u.h
hle/service/news/news.cpp
hle/service/news/news.h
hle/service/news/news_s.cpp
hle/service/news/news_s.h
hle/service/news/news_u.cpp
hle/service/news/news_u.h
hle/service/nfc/nfc.cpp
hle/service/nfc/nfc.h
hle/service/nfc/nfc_m.cpp
hle/service/nfc/nfc_m.h
hle/service/nfc/nfc_u.cpp
hle/service/nfc/nfc_u.h
hle/service/nim/nim.cpp
hle/service/nim/nim.h
hle/service/nim/nim_aoc.cpp
hle/service/nim/nim_aoc.h
hle/service/nim/nim_s.cpp
hle/service/nim/nim_s.h
hle/service/nim/nim_u.cpp
hle/service/nim/nim_u.h
hle/service/ns/ns.cpp
hle/service/ns/ns.h
hle/service/ns/ns_s.cpp
hle/service/ns/ns_s.h
hle/service/nwm/nwm.cpp
hle/service/nwm/nwm.h
hle/service/nwm/nwm_cec.cpp
hle/service/nwm/nwm_cec.h
hle/service/nwm/nwm_ext.cpp
hle/service/nwm/nwm_ext.h
hle/service/nwm/nwm_inf.cpp
hle/service/nwm/nwm_inf.h
hle/service/nwm/nwm_sap.cpp
hle/service/nwm/nwm_sap.h
hle/service/nwm/nwm_soc.cpp
hle/service/nwm/nwm_soc.h
hle/service/nwm/nwm_tst.cpp
hle/service/nwm/nwm_tst.h
hle/service/nwm/nwm_uds.cpp
hle/service/nwm/nwm_uds.h
hle/service/nwm/uds_beacon.cpp
hle/service/nwm/uds_beacon.h
hle/service/nwm/uds_connection.cpp
hle/service/nwm/uds_connection.h
hle/service/nwm/uds_data.cpp
hle/service/nwm/uds_data.h
hle/service/pm_app.cpp
hle/service/pm_app.h
hle/service/ptm/ptm.cpp
hle/service/ptm/ptm.h
hle/service/ptm/ptm_gets.cpp
hle/service/ptm/ptm_gets.h
hle/service/ptm/ptm_play.cpp
hle/service/ptm/ptm_play.h
hle/service/ptm/ptm_sets.cpp
hle/service/ptm/ptm_sets.h
hle/service/ptm/ptm_sysm.cpp
hle/service/ptm/ptm_sysm.h
hle/service/ptm/ptm_u.cpp
hle/service/ptm/ptm_u.h
hle/service/pxi/dev.cpp
hle/service/pxi/dev.h
hle/service/pxi/pxi.cpp
hle/service/pxi/pxi.h
hle/service/qtm/qtm.cpp
hle/service/qtm/qtm.h
hle/service/qtm/qtm_s.cpp
hle/service/qtm/qtm_s.h
hle/service/qtm/qtm_sp.cpp
hle/service/qtm/qtm_sp.h
hle/service/qtm/qtm_u.cpp
hle/service/qtm/qtm_u.h
hle/service/service.cpp
hle/service/service.h
hle/service/sm/sm.cpp
hle/service/sm/sm.h
hle/service/sm/srv.cpp
hle/service/sm/srv.h
hle/service/soc_u.cpp
hle/service/soc_u.h
hle/service/ssl_c.cpp
hle/service/ssl_c.h
hle/service/y2r_u.cpp
hle/service/y2r_u.h
hle/shared_page.cpp
hle/shared_page.h
hw/aes/arithmetic128.cpp
hw/aes/arithmetic128.h
hw/aes/ccm.cpp
hw/aes/ccm.h
hw/aes/key.cpp
hw/aes/key.h
hw/gpu.cpp
hw/gpu.h
hw/hw.cpp
hw/hw.h
hw/lcd.cpp
hw/lcd.h
hw/y2r.cpp
hw/y2r.h
loader/3dsx.cpp
loader/3dsx.h
loader/elf.cpp
loader/elf.h
loader/loader.cpp
loader/loader.h
loader/ncch.cpp
loader/ncch.h
loader/smdh.cpp
loader/smdh.h
memory.cpp
memory.h
memory_setup.h
mmio.h
perf_stats.cpp
perf_stats.h
settings.cpp
settings.h
telemetry_session.cpp
telemetry_session.h
tracer/citrace.h
tracer/recorder.cpp
tracer/recorder.h
)
set(HEADERS create_target_directory_groups(core)
3ds.h
arm/arm_interface.h
arm/dynarmic/arm_dynarmic.h
arm/dynarmic/arm_dynarmic_cp15.h
arm/dyncom/arm_dyncom.h
arm/dyncom/arm_dyncom_dec.h
arm/dyncom/arm_dyncom_interpreter.h
arm/dyncom/arm_dyncom_run.h
arm/dyncom/arm_dyncom_thumb.h
arm/dyncom/arm_dyncom_trans.h
arm/skyeye_common/arm_regformat.h
arm/skyeye_common/armstate.h
arm/skyeye_common/armsupp.h
arm/skyeye_common/vfp/asm_vfp.h
arm/skyeye_common/vfp/vfp.h
arm/skyeye_common/vfp/vfp_helper.h
core.h
core_timing.h
file_sys/archive_backend.h
file_sys/archive_extsavedata.h
file_sys/archive_ncch.h
file_sys/archive_other_savedata.h
file_sys/archive_savedata.h
file_sys/archive_sdmc.h
file_sys/archive_sdmcwriteonly.h
file_sys/archive_selfncch.h
file_sys/archive_source_sd_savedata.h
file_sys/archive_systemsavedata.h
file_sys/cia_container.h
file_sys/directory_backend.h
file_sys/disk_archive.h
file_sys/errors.h
file_sys/file_backend.h
file_sys/ivfc_archive.h
file_sys/ncch_container.h
file_sys/path_parser.h
file_sys/savedata_archive.h
file_sys/title_metadata.h
frontend/camera/blank_camera.h
frontend/camera/factory.h
frontend/camera/interface.h
frontend/emu_window.h
frontend/framebuffer_layout.h
frontend/input.h
gdbstub/gdbstub.h
hle/config_mem.h
hle/function_wrappers.h
hle/ipc.h
hle/ipc_helpers.h
hle/applets/applet.h
hle/applets/erreula.h
hle/applets/mii_selector.h
hle/applets/mint.h
hle/applets/swkbd.h
hle/kernel/address_arbiter.h
hle/kernel/client_port.h
hle/kernel/client_session.h
hle/kernel/errors.h
hle/kernel/event.h
hle/kernel/handle_table.h
hle/kernel/hle_ipc.h
hle/kernel/ipc.h
hle/kernel/kernel.h
hle/kernel/memory.h
hle/kernel/mutex.h
hle/kernel/process.h
hle/kernel/resource_limit.h
hle/kernel/semaphore.h
hle/kernel/server_port.h
hle/kernel/server_session.h
hle/kernel/session.h
hle/kernel/shared_memory.h
hle/kernel/svc.h
hle/kernel/thread.h
hle/kernel/timer.h
hle/kernel/vm_manager.h
hle/kernel/wait_object.h
hle/lock.h
hle/result.h
hle/romfs.h
hle/service/ac/ac.h
hle/service/ac/ac_i.h
hle/service/ac/ac_u.h
hle/service/act/act.h
hle/service/act/act_a.h
hle/service/act/act_u.h
hle/service/am/am.h
hle/service/am/am_app.h
hle/service/am/am_net.h
hle/service/am/am_sys.h
hle/service/am/am_u.h
hle/service/apt/apt.h
hle/service/apt/apt_a.h
hle/service/apt/apt_s.h
hle/service/apt/apt_u.h
hle/service/apt/bcfnt/bcfnt.h
hle/service/boss/boss.h
hle/service/boss/boss_p.h
hle/service/boss/boss_u.h
hle/service/cam/cam.h
hle/service/cam/cam_c.h
hle/service/cam/cam_q.h
hle/service/cam/cam_s.h
hle/service/cam/cam_u.h
hle/service/cecd/cecd.h
hle/service/cecd/cecd_ndm.h
hle/service/cecd/cecd_s.h
hle/service/cecd/cecd_u.h
hle/service/cfg/cfg.h
hle/service/cfg/cfg_i.h
hle/service/cfg/cfg_nor.h
hle/service/cfg/cfg_s.h
hle/service/cfg/cfg_u.h
hle/service/csnd_snd.h
hle/service/dlp/dlp.h
hle/service/dlp/dlp_clnt.h
hle/service/dlp/dlp_fkcl.h
hle/service/dlp/dlp_srvr.h
hle/service/dsp_dsp.h
hle/service/err_f.h
hle/service/frd/frd.h
hle/service/frd/frd_a.h
hle/service/frd/frd_u.h
hle/service/fs/archive.h
hle/service/fs/fs_user.h
hle/service/gsp_gpu.h
hle/service/gsp_lcd.h
hle/service/hid/hid.h
hle/service/hid/hid_spvr.h
hle/service/hid/hid_user.h
hle/service/http_c.h
hle/service/ir/extra_hid.h
hle/service/ir/ir.h
hle/service/ir/ir_rst.h
hle/service/ir/ir_u.h
hle/service/ir/ir_user.h
hle/service/ldr_ro/cro_helper.h
hle/service/ldr_ro/ldr_ro.h
hle/service/ldr_ro/memory_synchronizer.h
hle/service/mic_u.h
hle/service/mvd/mvd.h
hle/service/mvd/mvd_std.h
hle/service/ndm/ndm.h
hle/service/ndm/ndm_u.h
hle/service/nfc/nfc.h
hle/service/nfc/nfc_m.h
hle/service/nfc/nfc_u.h
hle/service/news/news.h
hle/service/news/news_s.h
hle/service/news/news_u.h
hle/service/nim/nim.h
hle/service/nim/nim_aoc.h
hle/service/nim/nim_s.h
hle/service/nim/nim_u.h
hle/service/ns/ns.h
hle/service/ns/ns_s.h
hle/service/nwm/nwm.h
hle/service/nwm/nwm_cec.h
hle/service/nwm/nwm_ext.h
hle/service/nwm/nwm_inf.h
hle/service/nwm/nwm_sap.h
hle/service/nwm/nwm_soc.h
hle/service/nwm/nwm_tst.h
hle/service/nwm/nwm_uds.h
hle/service/nwm/uds_beacon.h
hle/service/nwm/uds_connection.h
hle/service/nwm/uds_data.h
hle/service/pm_app.h
hle/service/ptm/ptm.h
hle/service/ptm/ptm_gets.h
hle/service/ptm/ptm_play.h
hle/service/ptm/ptm_sets.h
hle/service/ptm/ptm_sysm.h
hle/service/ptm/ptm_u.h
hle/service/pxi/dev.h
hle/service/pxi/pxi.h
hle/service/qtm/qtm.h
hle/service/qtm/qtm_s.h
hle/service/qtm/qtm_sp.h
hle/service/qtm/qtm_u.h
hle/service/service.h
hle/service/sm/sm.h
hle/service/sm/srv.h
hle/service/soc_u.h
hle/service/ssl_c.h
hle/service/y2r_u.h
hle/shared_page.h
hw/aes/arithmetic128.h
hw/aes/ccm.h
hw/aes/key.h
hw/gpu.h
hw/hw.h
hw/lcd.h
hw/y2r.h
loader/3dsx.h
loader/elf.h
loader/loader.h
loader/ncch.h
loader/smdh.h
tracer/recorder.h
tracer/citrace.h
memory.h
memory_setup.h
mmio.h
perf_stats.h
settings.h
telemetry_session.h
)
create_directory_groups(${SRCS} ${HEADERS})
add_library(core STATIC ${SRCS} ${HEADERS})
target_link_libraries(core PUBLIC common PRIVATE audio_core network video_core) target_link_libraries(core PUBLIC common PRIVATE audio_core network video_core)
target_link_libraries(core PUBLIC Boost::boost PRIVATE cryptopp dynarmic fmt) target_link_libraries(core PUBLIC Boost::boost PRIVATE cryptopp dynarmic fmt)
if (ENABLE_WEB_SERVICE) if (ENABLE_WEB_SERVICE)

View File

@ -1,25 +1,26 @@
set(SRCS add_library(input_common STATIC
analog_from_button.cpp analog_from_button.cpp
keyboard.cpp analog_from_button.h
main.cpp keyboard.cpp
motion_emu.cpp keyboard.h
) main.cpp
main.h
motion_emu.cpp
motion_emu.h
set(HEADERS $<$<BOOL:SDL2_FOUND>:sdl/sdl.cpp sdl/sdl.h>
analog_from_button.h )
keyboard.h
main.h
motion_emu.h
)
if(SDL2_FOUND) if(SDL2_FOUND)
set(SRCS ${SRCS} sdl/sdl.cpp) target_sources(input_common
set(HEADERS ${HEADERS} sdl/sdl.h) PRIVATE
sdl/sdl.cpp
sdl/sdl.h
)
endif() endif()
create_directory_groups(${SRCS} ${HEADERS}) create_target_directory_groups(input_common)
add_library(input_common STATIC ${SRCS} ${HEADERS})
target_link_libraries(input_common PUBLIC core PRIVATE common) target_link_libraries(input_common PUBLIC core PRIVATE common)
if(SDL2_FOUND) if(SDL2_FOUND)

View File

@ -1,18 +1,14 @@
set(SRCS add_library(network STATIC
network.cpp network.cpp
packet.cpp network.h
room.cpp packet.cpp
room_member.cpp packet.h
) room.cpp
room.h
room_member.cpp
room_member.h
)
set(HEADERS create_target_directory_groups(network)
network.h
packet.h
room.h
room_member.h
)
create_directory_groups(${SRCS} ${HEADERS})
add_library(network STATIC ${SRCS} ${HEADERS})
target_link_libraries(network PRIVATE common enet) target_link_libraries(network PRIVATE common enet)

View File

@ -1,28 +1,25 @@
set(SRCS add_executable(tests
common/param_package.cpp common/param_package.cpp
core/arm/arm_test_common.cpp core/arm/arm_test_common.cpp
core/arm/dyncom/arm_dyncom_vfp_tests.cpp core/arm/arm_test_common.h
core/core_timing.cpp core/arm/dyncom/arm_dyncom_vfp_tests.cpp
core/file_sys/path_parser.cpp core/core_timing.cpp
core/hle/kernel/hle_ipc.cpp core/file_sys/path_parser.cpp
core/memory/memory.cpp core/hle/kernel/hle_ipc.cpp
glad.cpp core/memory/memory.cpp
tests.cpp glad.cpp
) tests.cpp
)
set(HEADERS
core/arm/arm_test_common.h
)
if (ARCHITECTURE_x86_64) if (ARCHITECTURE_x86_64)
set(SRCS ${SRCS} target_sources(tests
PRIVATE
video_core/shader/shader_jit_x64_compiler.cpp video_core/shader/shader_jit_x64_compiler.cpp
) )
endif() endif()
create_directory_groups(${SRCS} ${HEADERS}) create_target_directory_groups(tests)
add_executable(tests ${SRCS} ${HEADERS})
target_link_libraries(tests PRIVATE common core video_core) target_link_libraries(tests PRIVATE common core video_core)
target_link_libraries(tests PRIVATE glad) # To support linker work-around target_link_libraries(tests PRIVATE glad) # To support linker work-around
target_link_libraries(tests PRIVATE ${PLATFORM_LIBRARIES} catch-single-include nihstro-headers Threads::Threads) target_link_libraries(tests PRIVATE ${PLATFORM_LIBRARIES} catch-single-include nihstro-headers Threads::Threads)

View File

@ -1,88 +1,85 @@
set(SRCS add_library(video_core STATIC
command_processor.cpp command_processor.cpp
debug_utils/debug_utils.cpp command_processor.h
geometry_pipeline.cpp debug_utils/debug_utils.cpp
pica.cpp debug_utils/debug_utils.h
primitive_assembly.cpp geometry_pipeline.cpp
regs.cpp geometry_pipeline.h
renderer_base.cpp gpu_debugger.h
renderer_opengl/gl_rasterizer.cpp pica.cpp
renderer_opengl/gl_rasterizer_cache.cpp pica.h
renderer_opengl/gl_shader_gen.cpp pica_state.h
renderer_opengl/gl_shader_util.cpp pica_types.h
renderer_opengl/gl_state.cpp primitive_assembly.cpp
renderer_opengl/renderer_opengl.cpp primitive_assembly.h
shader/shader.cpp rasterizer_interface.h
shader/shader_interpreter.cpp regs.cpp
swrasterizer/clipper.cpp regs.h
swrasterizer/framebuffer.cpp regs_framebuffer.h
swrasterizer/lighting.cpp regs_lighting.h
swrasterizer/proctex.cpp regs_pipeline.h
swrasterizer/rasterizer.cpp regs_rasterizer.h
swrasterizer/swrasterizer.cpp regs_shader.h
swrasterizer/texturing.cpp regs_texturing.h
texture/etc1.cpp renderer_base.cpp
texture/texture_decode.cpp renderer_base.h
vertex_loader.cpp renderer_opengl/gl_rasterizer.cpp
video_core.cpp renderer_opengl/gl_rasterizer.h
) renderer_opengl/gl_rasterizer_cache.cpp
renderer_opengl/gl_rasterizer_cache.h
set(HEADERS renderer_opengl/gl_resource_manager.h
command_processor.h renderer_opengl/gl_shader_gen.cpp
debug_utils/debug_utils.h renderer_opengl/gl_shader_gen.h
geometry_pipeline.h renderer_opengl/gl_shader_util.cpp
gpu_debugger.h renderer_opengl/gl_shader_util.h
pica.h renderer_opengl/gl_state.cpp
pica_state.h renderer_opengl/gl_state.h
pica_types.h renderer_opengl/pica_to_gl.h
primitive_assembly.h renderer_opengl/renderer_opengl.cpp
rasterizer_interface.h renderer_opengl/renderer_opengl.h
regs.h shader/debug_data.h
regs_framebuffer.h shader/shader.cpp
regs_lighting.h shader/shader.h
regs_pipeline.h shader/shader_interpreter.cpp
regs_rasterizer.h shader/shader_interpreter.h
regs_shader.h swrasterizer/clipper.cpp
regs_texturing.h swrasterizer/clipper.h
renderer_base.h swrasterizer/framebuffer.cpp
renderer_opengl/gl_rasterizer.h swrasterizer/framebuffer.h
renderer_opengl/gl_rasterizer_cache.h swrasterizer/lighting.cpp
renderer_opengl/gl_resource_manager.h swrasterizer/lighting.h
renderer_opengl/gl_shader_gen.h swrasterizer/proctex.cpp
renderer_opengl/gl_shader_util.h swrasterizer/proctex.h
renderer_opengl/gl_state.h swrasterizer/rasterizer.cpp
renderer_opengl/pica_to_gl.h swrasterizer/rasterizer.h
renderer_opengl/renderer_opengl.h swrasterizer/swrasterizer.cpp
shader/debug_data.h swrasterizer/swrasterizer.h
shader/shader.h swrasterizer/texturing.cpp
shader/shader_interpreter.h swrasterizer/texturing.h
swrasterizer/clipper.h texture/etc1.cpp
swrasterizer/framebuffer.h texture/etc1.h
swrasterizer/lighting.h texture/texture_decode.cpp
swrasterizer/proctex.h texture/texture_decode.h
swrasterizer/rasterizer.h utils.h
swrasterizer/swrasterizer.h vertex_loader.cpp
swrasterizer/texturing.h vertex_loader.h
texture/etc1.h video_core.cpp
texture/texture_decode.h video_core.h
utils.h )
vertex_loader.h
video_core.h
)
if(ARCHITECTURE_x86_64) if(ARCHITECTURE_x86_64)
set(SRCS ${SRCS} target_sources(video_core
PRIVATE
shader/shader_jit_x64.cpp shader/shader_jit_x64.cpp
shader/shader_jit_x64_compiler.cpp) shader/shader_jit_x64_compiler.cpp
set(HEADERS ${HEADERS}
shader/shader_jit_x64.h shader/shader_jit_x64.h
shader/shader_jit_x64_compiler.h) shader/shader_jit_x64_compiler.h
)
endif() endif()
create_directory_groups(${SRCS} ${HEADERS}) create_target_directory_groups(video_core)
add_library(video_core STATIC ${SRCS} ${HEADERS})
target_link_libraries(video_core PUBLIC common core) target_link_libraries(video_core PUBLIC common core)
target_link_libraries(video_core PRIVATE glad nihstro-headers) target_link_libraries(video_core PRIVATE glad nihstro-headers)

View File

@ -1,16 +1,12 @@
set(SRCS add_library(web_service STATIC
telemetry_json.cpp telemetry_json.cpp
verify_login.cpp telemetry_json.h
web_backend.cpp verify_login.cpp
) verify_login.h
web_backend.cpp
web_backend.h
)
set(HEADERS create_target_directory_groups(web_service)
telemetry_json.h
verify_login.h
web_backend.h
)
create_directory_groups(${SRCS} ${HEADERS})
add_library(web_service STATIC ${SRCS} ${HEADERS})
target_link_libraries(web_service PUBLIC common cpr json-headers) target_link_libraries(web_service PUBLIC common cpr json-headers)