Merge pull request #84 from lioncash/cmake
CMakeLists: Derive the source directory grouping from targets themselves
This commit is contained in:
commit
be0e14ab3e
|
@ -323,12 +323,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}")
|
||||||
|
|
|
@ -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})
|
||||||
|
|
|
@ -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")
|
||||||
|
|
|
@ -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 .)
|
||||||
|
|
|
@ -24,78 +24,72 @@ 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)
|
||||||
|
|
|
@ -1,174 +1,171 @@
|
||||||
set(SRCS
|
add_library(core STATIC
|
||||||
arm/dynarmic/arm_dynarmic.cpp
|
arm/arm_interface.h
|
||||||
arm/unicorn/arm_unicorn.cpp
|
arm/dynarmic/arm_dynarmic.cpp
|
||||||
core.cpp
|
arm/dynarmic/arm_dynarmic.h
|
||||||
core_timing.cpp
|
arm/unicorn/arm_unicorn.cpp
|
||||||
file_sys/archive_backend.cpp
|
arm/unicorn/arm_unicorn.h
|
||||||
file_sys/disk_archive.cpp
|
core.cpp
|
||||||
file_sys/ivfc_archive.cpp
|
core.h
|
||||||
file_sys/path_parser.cpp
|
core_timing.cpp
|
||||||
file_sys/savedata_archive.cpp
|
core_timing.h
|
||||||
file_sys/title_metadata.cpp
|
file_sys/archive_backend.cpp
|
||||||
frontend/emu_window.cpp
|
file_sys/archive_backend.h
|
||||||
frontend/framebuffer_layout.cpp
|
file_sys/directory_backend.h
|
||||||
gdbstub/gdbstub.cpp
|
file_sys/disk_archive.cpp
|
||||||
hle/config_mem.cpp
|
file_sys/disk_archive.h
|
||||||
hle/kernel/address_arbiter.cpp
|
file_sys/errors.h
|
||||||
hle/kernel/client_port.cpp
|
file_sys/file_backend.h
|
||||||
hle/kernel/client_session.cpp
|
file_sys/ivfc_archive.cpp
|
||||||
hle/kernel/condition_variable.cpp
|
file_sys/ivfc_archive.h
|
||||||
hle/kernel/domain.cpp
|
file_sys/path_parser.cpp
|
||||||
hle/kernel/event.cpp
|
file_sys/path_parser.h
|
||||||
hle/kernel/handle_table.cpp
|
file_sys/savedata_archive.cpp
|
||||||
hle/kernel/hle_ipc.cpp
|
file_sys/savedata_archive.h
|
||||||
hle/kernel/kernel.cpp
|
file_sys/title_metadata.cpp
|
||||||
hle/kernel/memory.cpp
|
file_sys/title_metadata.h
|
||||||
hle/kernel/mutex.cpp
|
frontend/emu_window.cpp
|
||||||
hle/kernel/object_address_table.cpp
|
frontend/emu_window.h
|
||||||
hle/kernel/process.cpp
|
frontend/framebuffer_layout.cpp
|
||||||
hle/kernel/resource_limit.cpp
|
frontend/framebuffer_layout.h
|
||||||
hle/kernel/server_port.cpp
|
frontend/input.h
|
||||||
hle/kernel/server_session.cpp
|
gdbstub/gdbstub.cpp
|
||||||
hle/kernel/shared_memory.cpp
|
gdbstub/gdbstub.h
|
||||||
hle/kernel/svc.cpp
|
hle/config_mem.cpp
|
||||||
hle/kernel/thread.cpp
|
hle/config_mem.h
|
||||||
hle/kernel/timer.cpp
|
hle/ipc.h
|
||||||
hle/kernel/vm_manager.cpp
|
hle/ipc_helpers.h
|
||||||
hle/kernel/wait_object.cpp
|
hle/kernel/address_arbiter.cpp
|
||||||
hle/lock.cpp
|
hle/kernel/address_arbiter.h
|
||||||
hle/romfs.cpp
|
hle/kernel/client_port.cpp
|
||||||
hle/service/acc/acc.cpp
|
hle/kernel/client_port.h
|
||||||
hle/service/acc/acc_u0.cpp
|
hle/kernel/client_session.cpp
|
||||||
hle/service/am/am.cpp
|
hle/kernel/client_session.h
|
||||||
hle/service/am/applet_oe.cpp
|
hle/kernel/condition_variable.cpp
|
||||||
hle/service/aoc/aoc_u.cpp
|
hle/kernel/condition_variable.h
|
||||||
hle/service/apm/apm.cpp
|
hle/kernel/domain.cpp
|
||||||
hle/service/audio/audio.cpp
|
hle/kernel/domain.h
|
||||||
hle/service/audio/audout_u.cpp
|
hle/kernel/errors.h
|
||||||
hle/service/hid/hid.cpp
|
hle/kernel/event.cpp
|
||||||
hle/service/lm/lm.cpp
|
hle/kernel/event.h
|
||||||
hle/service/nvdrv/devices/nvdisp_disp0.cpp
|
hle/kernel/handle_table.cpp
|
||||||
hle/service/nvdrv/devices/nvhost_as_gpu.cpp
|
hle/kernel/handle_table.h
|
||||||
hle/service/nvdrv/devices/nvmap.cpp
|
hle/kernel/hle_ipc.cpp
|
||||||
hle/service/nvdrv/interface.cpp
|
hle/kernel/hle_ipc.h
|
||||||
hle/service/nvdrv/nvdrv.cpp
|
hle/kernel/kernel.cpp
|
||||||
hle/service/pctl/pctl.cpp
|
hle/kernel/kernel.h
|
||||||
hle/service/pctl/pctl_a.cpp
|
hle/kernel/memory.cpp
|
||||||
hle/service/service.cpp
|
hle/kernel/memory.h
|
||||||
hle/service/sm/controller.cpp
|
hle/kernel/mutex.cpp
|
||||||
hle/service/sm/sm.cpp
|
hle/kernel/mutex.h
|
||||||
hle/service/time/time.cpp
|
hle/kernel/object_address_table.cpp
|
||||||
hle/service/vi/vi.cpp
|
hle/kernel/object_address_table.h
|
||||||
hle/service/vi/vi_m.cpp
|
hle/kernel/process.cpp
|
||||||
hle/shared_page.cpp
|
hle/kernel/process.h
|
||||||
hw/hw.cpp
|
hle/kernel/resource_limit.cpp
|
||||||
hw/lcd.cpp
|
hle/kernel/resource_limit.h
|
||||||
loader/elf.cpp
|
hle/kernel/server_port.cpp
|
||||||
loader/linker.cpp
|
hle/kernel/server_port.h
|
||||||
loader/loader.cpp
|
hle/kernel/server_session.cpp
|
||||||
loader/nro.cpp
|
hle/kernel/server_session.h
|
||||||
loader/nso.cpp
|
hle/kernel/session.h
|
||||||
tracer/recorder.cpp
|
hle/kernel/shared_memory.cpp
|
||||||
memory.cpp
|
hle/kernel/shared_memory.h
|
||||||
perf_stats.cpp
|
hle/kernel/svc.cpp
|
||||||
settings.cpp
|
hle/kernel/svc.h
|
||||||
telemetry_session.cpp
|
hle/kernel/svc_wrap.h
|
||||||
)
|
hle/kernel/sync_object.h
|
||||||
|
hle/kernel/thread.cpp
|
||||||
|
hle/kernel/thread.h
|
||||||
|
hle/kernel/timer.cpp
|
||||||
|
hle/kernel/timer.h
|
||||||
|
hle/kernel/vm_manager.cpp
|
||||||
|
hle/kernel/vm_manager.h
|
||||||
|
hle/kernel/wait_object.cpp
|
||||||
|
hle/kernel/wait_object.h
|
||||||
|
hle/lock.cpp
|
||||||
|
hle/lock.h
|
||||||
|
hle/result.h
|
||||||
|
hle/romfs.cpp
|
||||||
|
hle/romfs.h
|
||||||
|
hle/service/acc/acc.cpp
|
||||||
|
hle/service/acc/acc.h
|
||||||
|
hle/service/acc/acc_u0.cpp
|
||||||
|
hle/service/acc/acc_u0.h
|
||||||
|
hle/service/am/am.cpp
|
||||||
|
hle/service/am/am.h
|
||||||
|
hle/service/am/applet_oe.cpp
|
||||||
|
hle/service/am/applet_oe.h
|
||||||
|
hle/service/aoc/aoc_u.cpp
|
||||||
|
hle/service/aoc/aoc_u.h
|
||||||
|
hle/service/apm/apm.cpp
|
||||||
|
hle/service/apm/apm.h
|
||||||
|
hle/service/audio/audio.cpp
|
||||||
|
hle/service/audio/audio.h
|
||||||
|
hle/service/audio/audout_u.cpp
|
||||||
|
hle/service/audio/audout_u.h
|
||||||
|
hle/service/hid/hid.cpp
|
||||||
|
hle/service/hid/hid.h
|
||||||
|
hle/service/lm/lm.cpp
|
||||||
|
hle/service/lm/lm.h
|
||||||
|
hle/service/nvdrv/devices/nvdevice.h
|
||||||
|
hle/service/nvdrv/devices/nvdisp_disp0.cpp
|
||||||
|
hle/service/nvdrv/devices/nvdisp_disp0.h
|
||||||
|
hle/service/nvdrv/devices/nvhost_as_gpu.cpp
|
||||||
|
hle/service/nvdrv/devices/nvhost_as_gpu.h
|
||||||
|
hle/service/nvdrv/devices/nvmap.cpp
|
||||||
|
hle/service/nvdrv/devices/nvmap.h
|
||||||
|
hle/service/nvdrv/interface.cpp
|
||||||
|
hle/service/nvdrv/interface.h
|
||||||
|
hle/service/nvdrv/nvdrv.cpp
|
||||||
|
hle/service/nvdrv/nvdrv.h
|
||||||
|
hle/service/pctl/pctl.cpp
|
||||||
|
hle/service/pctl/pctl.h
|
||||||
|
hle/service/pctl/pctl_a.cpp
|
||||||
|
hle/service/pctl/pctl_a.h
|
||||||
|
hle/service/service.cpp
|
||||||
|
hle/service/service.h
|
||||||
|
hle/service/sm/controller.cpp
|
||||||
|
hle/service/sm/controller.h
|
||||||
|
hle/service/sm/sm.cpp
|
||||||
|
hle/service/sm/sm.h
|
||||||
|
hle/service/time/time.cpp
|
||||||
|
hle/service/time/time.h
|
||||||
|
hle/service/vi/vi.cpp
|
||||||
|
hle/service/vi/vi.h
|
||||||
|
hle/service/vi/vi_m.cpp
|
||||||
|
hle/service/vi/vi_m.h
|
||||||
|
hle/shared_page.cpp
|
||||||
|
hle/shared_page.h
|
||||||
|
hw/hw.cpp
|
||||||
|
hw/hw.h
|
||||||
|
hw/lcd.cpp
|
||||||
|
hw/lcd.h
|
||||||
|
loader/elf.cpp
|
||||||
|
loader/elf.h
|
||||||
|
loader/linker.cpp
|
||||||
|
loader/linker.h
|
||||||
|
loader/loader.cpp
|
||||||
|
loader/loader.h
|
||||||
|
loader/nro.cpp
|
||||||
|
loader/nro.h
|
||||||
|
loader/nso.cpp
|
||||||
|
loader/nso.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)
|
||||||
arm/arm_interface.h
|
|
||||||
arm/dynarmic/arm_dynarmic.h
|
|
||||||
arm/unicorn/arm_unicorn.h
|
|
||||||
core.h
|
|
||||||
core_timing.h
|
|
||||||
file_sys/archive_backend.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/path_parser.h
|
|
||||||
file_sys/savedata_archive.h
|
|
||||||
file_sys/title_metadata.h
|
|
||||||
frontend/emu_window.h
|
|
||||||
frontend/framebuffer_layout.h
|
|
||||||
frontend/input.h
|
|
||||||
gdbstub/gdbstub.h
|
|
||||||
hle/config_mem.h
|
|
||||||
hle/ipc.h
|
|
||||||
hle/ipc_helpers.h
|
|
||||||
hle/kernel/address_arbiter.h
|
|
||||||
hle/kernel/client_port.h
|
|
||||||
hle/kernel/client_session.h
|
|
||||||
hle/kernel/condition_variable.h
|
|
||||||
hle/kernel/domain.h
|
|
||||||
hle/kernel/errors.h
|
|
||||||
hle/kernel/event.h
|
|
||||||
hle/kernel/handle_table.h
|
|
||||||
hle/kernel/hle_ipc.h
|
|
||||||
hle/kernel/kernel.h
|
|
||||||
hle/kernel/memory.h
|
|
||||||
hle/kernel/mutex.h
|
|
||||||
hle/kernel/object_address_table.h
|
|
||||||
hle/kernel/process.h
|
|
||||||
hle/kernel/resource_limit.h
|
|
||||||
hle/kernel/server_port.h
|
|
||||||
hle/kernel/server_session.h
|
|
||||||
hle/kernel/session.h
|
|
||||||
hle/kernel/shared_memory.h
|
|
||||||
hle/kernel/sync_object.h
|
|
||||||
hle/kernel/svc.h
|
|
||||||
hle/kernel/svc_wrap.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/acc/acc.h
|
|
||||||
hle/service/acc/acc_u0.h
|
|
||||||
hle/service/am/am.h
|
|
||||||
hle/service/am/applet_oe.h
|
|
||||||
hle/service/aoc/aoc_u.h
|
|
||||||
hle/service/apm/apm.h
|
|
||||||
hle/service/audio/audio.h
|
|
||||||
hle/service/audio/audout_u.h
|
|
||||||
hle/service/hid/hid.h
|
|
||||||
hle/service/lm/lm.h
|
|
||||||
hle/service/nvdrv/devices/nvdevice.h
|
|
||||||
hle/service/nvdrv/devices/nvdisp_disp0.h
|
|
||||||
hle/service/nvdrv/devices/nvhost_as_gpu.h
|
|
||||||
hle/service/nvdrv/devices/nvmap.h
|
|
||||||
hle/service/nvdrv/interface.h
|
|
||||||
hle/service/nvdrv/nvdrv.h
|
|
||||||
hle/service/pctl/pctl.h
|
|
||||||
hle/service/pctl/pctl_a.h
|
|
||||||
hle/service/service.h
|
|
||||||
hle/service/sm/controller.h
|
|
||||||
hle/service/sm/sm.h
|
|
||||||
hle/service/time/time.h
|
|
||||||
hle/service/vi/vi.h
|
|
||||||
hle/service/vi/vi_m.h
|
|
||||||
hle/shared_page.h
|
|
||||||
hw/hw.h
|
|
||||||
hw/lcd.h
|
|
||||||
loader/elf.h
|
|
||||||
loader/linker.h
|
|
||||||
loader/loader.h
|
|
||||||
loader/nro.h
|
|
||||||
loader/nso.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 dynarmic video_core)
|
target_link_libraries(core PUBLIC common PRIVATE dynarmic video_core)
|
||||||
target_link_libraries(core PUBLIC Boost::boost PRIVATE fmt lz4_static unicorn)
|
target_link_libraries(core PUBLIC Boost::boost PRIVATE fmt lz4_static unicorn)
|
||||||
|
|
|
@ -1,25 +1,18 @@
|
||||||
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)
|
create_target_directory_groups(input_common)
|
||||||
set(SRCS ${SRCS} sdl/sdl.cpp)
|
|
||||||
set(HEADERS ${HEADERS} sdl/sdl.h)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
create_directory_groups(${SRCS} ${HEADERS})
|
|
||||||
|
|
||||||
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)
|
||||||
|
|
|
@ -1,20 +1,16 @@
|
||||||
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/core_timing.cpp
|
core/arm/arm_test_common.h
|
||||||
core/file_sys/path_parser.cpp
|
core/core_timing.cpp
|
||||||
core/memory/memory.cpp
|
core/file_sys/path_parser.cpp
|
||||||
glad.cpp
|
core/memory/memory.cpp
|
||||||
tests.cpp
|
glad.cpp
|
||||||
)
|
tests.cpp
|
||||||
|
)
|
||||||
|
|
||||||
set(HEADERS
|
create_target_directory_groups(tests)
|
||||||
core/arm/arm_test_common.h
|
|
||||||
)
|
|
||||||
|
|
||||||
create_directory_groups(${SRCS} ${HEADERS})
|
|
||||||
|
|
||||||
add_executable(tests ${SRCS} ${HEADERS})
|
|
||||||
target_link_libraries(tests PRIVATE common core)
|
target_link_libraries(tests PRIVATE common 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 Threads::Threads)
|
target_link_libraries(tests PRIVATE ${PLATFORM_LIBRARIES} catch-single-include Threads::Threads)
|
||||||
|
|
|
@ -1,23 +1,19 @@
|
||||||
set(SRCS
|
add_library(video_core STATIC
|
||||||
renderer_base.cpp
|
renderer_base.cpp
|
||||||
renderer_opengl/gl_shader_util.cpp
|
renderer_base.h
|
||||||
renderer_opengl/gl_state.cpp
|
renderer_opengl/gl_resource_manager.h
|
||||||
renderer_opengl/renderer_opengl.cpp
|
renderer_opengl/gl_shader_util.cpp
|
||||||
video_core.cpp
|
renderer_opengl/gl_shader_util.h
|
||||||
)
|
renderer_opengl/gl_state.cpp
|
||||||
|
renderer_opengl/gl_state.h
|
||||||
|
renderer_opengl/renderer_opengl.cpp
|
||||||
|
renderer_opengl/renderer_opengl.h
|
||||||
|
utils.h
|
||||||
|
video_core.cpp
|
||||||
|
video_core.h
|
||||||
|
)
|
||||||
|
|
||||||
set(HEADERS
|
create_target_directory_groups(video_core)
|
||||||
renderer_base.h
|
|
||||||
renderer_opengl/gl_resource_manager.h
|
|
||||||
renderer_opengl/gl_shader_util.h
|
|
||||||
renderer_opengl/gl_state.h
|
|
||||||
renderer_opengl/renderer_opengl.h
|
|
||||||
utils.h
|
|
||||||
video_core.h
|
|
||||||
)
|
|
||||||
|
|
||||||
create_directory_groups(${SRCS} ${HEADERS})
|
|
||||||
|
|
||||||
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)
|
target_link_libraries(video_core PRIVATE glad)
|
||||||
|
|
|
@ -3,79 +3,84 @@ 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(yuzu
|
||||||
about_dialog.cpp
|
Info.plist
|
||||||
configuration/config.cpp
|
about_dialog.cpp
|
||||||
configuration/configure_debug.cpp
|
about_dialog.h
|
||||||
configuration/configure_dialog.cpp
|
bootmanager.cpp
|
||||||
configuration/configure_general.cpp
|
bootmanager.h
|
||||||
configuration/configure_graphics.cpp
|
configuration/config.cpp
|
||||||
configuration/configure_input.cpp
|
configuration/config.h
|
||||||
configuration/configure_system.cpp
|
configuration/configure_debug.cpp
|
||||||
debugger/profiler.cpp
|
configuration/configure_debug.h
|
||||||
debugger/registers.cpp
|
configuration/configure_dialog.cpp
|
||||||
debugger/wait_tree.cpp
|
configuration/configure_dialog.h
|
||||||
util/spinbox.cpp
|
configuration/configure_general.cpp
|
||||||
util/util.cpp
|
configuration/configure_general.h
|
||||||
bootmanager.cpp
|
configuration/configure_graphics.cpp
|
||||||
game_list.cpp
|
configuration/configure_graphics.h
|
||||||
hotkeys.cpp
|
configuration/configure_input.cpp
|
||||||
main.cpp
|
configuration/configure_input.h
|
||||||
ui_settings.cpp
|
configuration/configure_system.cpp
|
||||||
yuzu.rc
|
configuration/configure_system.h
|
||||||
Info.plist
|
debugger/profiler.cpp
|
||||||
)
|
debugger/profiler.h
|
||||||
|
debugger/registers.cpp
|
||||||
set(HEADERS
|
debugger/registers.h
|
||||||
about_dialog.h
|
debugger/wait_tree.cpp
|
||||||
configuration/config.h
|
debugger/wait_tree.h
|
||||||
configuration/configure_debug.h
|
game_list.cpp
|
||||||
configuration/configure_dialog.h
|
game_list.h
|
||||||
configuration/configure_general.h
|
game_list_p.h
|
||||||
configuration/configure_graphics.h
|
hotkeys.cpp
|
||||||
configuration/configure_input.h
|
hotkeys.h
|
||||||
configuration/configure_system.h
|
main.cpp
|
||||||
debugger/profiler.h
|
main.h
|
||||||
debugger/registers.h
|
ui_settings.cpp
|
||||||
debugger/wait_tree.h
|
ui_settings.h
|
||||||
util/spinbox.h
|
util/spinbox.cpp
|
||||||
util/util.h
|
util/spinbox.h
|
||||||
bootmanager.h
|
util/util.cpp
|
||||||
game_list.h
|
util/util.h
|
||||||
game_list_p.h
|
yuzu.rc
|
||||||
hotkeys.h
|
)
|
||||||
main.h
|
|
||||||
ui_settings.h
|
|
||||||
)
|
|
||||||
|
|
||||||
set(UIS
|
set(UIS
|
||||||
aboutdialog.ui
|
aboutdialog.ui
|
||||||
configuration/configure.ui
|
configuration/configure.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
|
||||||
debugger/registers.ui
|
debugger/registers.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})
|
|
||||||
|
|
||||||
qt5_wrap_ui(UI_HDRS ${UIS})
|
qt5_wrap_ui(UI_HDRS ${UIS})
|
||||||
|
|
||||||
|
target_sources(yuzu
|
||||||
|
PRIVATE
|
||||||
|
${ICONS}
|
||||||
|
${THEMES}
|
||||||
|
${UI_HDRS}
|
||||||
|
${UIS}
|
||||||
|
)
|
||||||
|
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
set(MACOSX_ICON "../../dist/yuzu.icns")
|
set(MACOSX_ICON "../../dist/yuzu.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(yuzu MACOSX_BUNDLE ${SRCS} ${HEADERS} ${UI_HDRS} ${MACOSX_ICON} ${ICONS})
|
target_sources(yuzu PRIVATE ${MACOSX_ICON})
|
||||||
|
set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE TRUE)
|
||||||
set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist)
|
set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist)
|
||||||
else()
|
|
||||||
add_executable(yuzu ${SRCS} ${HEADERS} ${UI_HDRS} ${ICONS})
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
create_target_directory_groups(yuzu)
|
||||||
|
|
||||||
target_link_libraries(yuzu PRIVATE common core input_common video_core)
|
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 Boost::boost glad Qt5::OpenGL Qt5::Widgets)
|
||||||
target_link_libraries(yuzu PRIVATE ${PLATFORM_LIBRARIES} Threads::Threads)
|
target_link_libraries(yuzu PRIVATE ${PLATFORM_LIBRARIES} Threads::Threads)
|
||||||
|
|
|
@ -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(yuzu-cmd
|
||||||
emu_window/emu_window_sdl2.cpp
|
config.cpp
|
||||||
config.cpp
|
config.h
|
||||||
yuzu.cpp
|
default_ini.h
|
||||||
yuzu.rc
|
emu_window/emu_window_sdl2.cpp
|
||||||
)
|
emu_window/emu_window_sdl2.h
|
||||||
set(HEADERS
|
resource.h
|
||||||
emu_window/emu_window_sdl2.h
|
yuzu.cpp
|
||||||
config.h
|
yuzu.rc
|
||||||
default_ini.h
|
)
|
||||||
resource.h
|
|
||||||
)
|
|
||||||
|
|
||||||
create_directory_groups(${SRCS} ${HEADERS})
|
create_target_directory_groups(yuzu-cmd)
|
||||||
|
|
||||||
add_executable(yuzu-cmd ${SRCS} ${HEADERS})
|
|
||||||
target_link_libraries(yuzu-cmd PRIVATE common core input_common)
|
target_link_libraries(yuzu-cmd PRIVATE common core input_common)
|
||||||
target_link_libraries(yuzu-cmd PRIVATE inih glad)
|
target_link_libraries(yuzu-cmd PRIVATE inih glad)
|
||||||
if (MSVC)
|
if (MSVC)
|
||||||
|
|
Reference in New Issue