pineapple-src/src/common/CMakeLists.txt

183 lines
3.9 KiB
CMake
Raw Normal View History

2022-07-27 14:06:50 -04:00
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project
# SPDX-License-Identifier: GPL-2.0-or-later
2020-12-28 10:15:37 -05:00
if (DEFINED ENV{AZURECIREPO})
set(BUILD_REPOSITORY $ENV{AZURECIREPO})
endif()
if (DEFINED ENV{TITLEBARFORMATIDLE})
set(TITLE_BAR_FORMAT_IDLE $ENV{TITLEBARFORMATIDLE})
endif ()
if (DEFINED ENV{TITLEBARFORMATRUNNING})
set(TITLE_BAR_FORMAT_RUNNING $ENV{TITLEBARFORMATRUNNING})
endif ()
if (DEFINED ENV{DISPLAYVERSION})
set(DISPLAY_VERSION $ENV{DISPLAYVERSION})
endif ()
2022-09-26 02:52:18 -04:00
include(GenerateSCMRev)
2020-12-28 10:15:37 -05:00
add_library(common STATIC
2022-06-15 21:46:18 -04:00
address_space.cpp
2022-08-02 06:53:47 -04:00
address_space.h
2020-12-28 10:15:37 -05:00
algorithm.h
alignment.h
2022-07-25 21:25:01 -04:00
announce_multiplayer_room.h
2021-04-07 18:30:26 -04:00
assert.cpp
2020-12-28 10:15:37 -05:00
assert.h
2022-07-07 03:40:51 -04:00
atomic_helpers.h
2020-12-28 10:15:37 -05:00
atomic_ops.h
detached_tasks.cpp
detached_tasks.h
bit_cast.h
bit_field.h
bit_set.h
bit_util.h
cityhash.cpp
cityhash.h
common_funcs.h
common_types.h
concepts.h
div_ceil.h
dynamic_library.cpp
dynamic_library.h
2022-06-05 21:42:24 -04:00
elf.h
2021-09-12 14:41:46 -04:00
error.cpp
error.h
2021-11-02 21:00:07 -04:00
expected.h
2020-12-28 10:15:37 -05:00
fiber.cpp
fiber.h
2022-07-07 03:40:51 -04:00
fixed_point.h
2021-05-08 03:49:31 -04:00
fs/file.cpp
fs/file.h
fs/fs.cpp
fs/fs.h
fs/fs_paths.h
fs/fs_types.h
fs/fs_util.cpp
fs/fs_util.h
fs/path_util.cpp
fs/path_util.h
2020-12-28 10:15:37 -05:00
hash.h
hex_util.cpp
hex_util.h
2021-06-06 21:57:28 -04:00
host_memory.cpp
host_memory.h
2021-11-14 20:13:48 -05:00
input.h
2020-12-31 05:03:11 -05:00
intrusive_red_black_tree.h
2021-06-24 23:18:27 -04:00
literals.h
2020-12-28 10:15:37 -05:00
logging/backend.cpp
logging/backend.h
logging/filter.cpp
logging/filter.h
2022-01-09 21:10:35 -05:00
logging/formatter.h
2020-12-28 10:15:37 -05:00
logging/log.h
2021-10-03 21:26:31 -04:00
logging/log_entry.h
2020-12-28 10:15:37 -05:00
logging/text_formatter.cpp
logging/text_formatter.h
2021-06-13 15:23:07 -04:00
logging/types.h
2020-12-28 10:15:37 -05:00
lz4_compression.cpp
lz4_compression.h
math_util.h
memory_detect.cpp
memory_detect.h
microprofile.cpp
microprofile.h
microprofileui.h
2022-06-15 21:46:18 -04:00
multi_level_page_table.cpp
multi_level_page_table.h
2021-01-20 19:01:05 -05:00
nvidia_flags.cpp
nvidia_flags.h
2020-12-28 10:15:37 -05:00
page_table.cpp
page_table.h
param_package.cpp
param_package.h
2020-12-31 05:03:11 -05:00
parent_of_member.h
2021-05-30 06:23:20 -04:00
point.h
2020-12-28 10:15:37 -05:00
quaternion.h
2022-07-07 03:40:51 -04:00
reader_writer_queue.h
2020-12-28 10:15:37 -05:00
ring_buffer.h
2022-09-26 02:52:18 -04:00
${CMAKE_CURRENT_BINARY_DIR}/scm_rev.cpp
2020-12-28 10:15:37 -05:00
scm_rev.h
scope_exit.h
2021-04-14 22:05:28 -04:00
settings.cpp
settings.h
settings_input.cpp
settings_input.h
2022-08-16 16:55:47 -04:00
socket_types.h
2020-12-28 10:15:37 -05:00
spin_lock.cpp
spin_lock.h
stream.cpp
stream.h
string_util.cpp
string_util.h
swap.h
telemetry.cpp
telemetry.h
thread.cpp
thread.h
thread_queue_list.h
2020-12-29 20:38:14 -05:00
thread_worker.h
2020-12-28 10:15:37 -05:00
threadsafe_queue.h
time_zone.cpp
time_zone.h
2021-02-18 20:26:25 -05:00
tiny_mt.h
2020-12-31 05:03:11 -05:00
tree.h
2020-12-28 10:15:37 -05:00
uint128.h
2021-07-05 17:19:14 -04:00
unique_function.h
2020-12-28 10:15:37 -05:00
uuid.cpp
uuid.h
vector_math.h
virtual_buffer.cpp
virtual_buffer.h
wall_clock.cpp
wall_clock.h
zstd_compression.cpp
zstd_compression.h
)
if(ARCHITECTURE_x86_64)
target_sources(common
PRIVATE
x64/cpu_detect.cpp
x64/cpu_detect.h
x64/native_clock.cpp
x64/native_clock.h
x64/xbyak_abi.h
x64/xbyak_util.h
)
2022-09-15 13:49:31 -04:00
target_link_libraries(common PRIVATE xbyak)
2020-12-28 10:15:37 -05:00
endif()
if (MSVC)
target_compile_definitions(common PRIVATE
# The standard library doesn't provide any replacement for codecvt yet
# so we can disable this deprecation warning for the time being.
_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING
)
target_compile_options(common PRIVATE
/W4
/WX
)
else()
target_compile_options(common PRIVATE
-Werror
2021-02-10 01:19:20 -05:00
$<$<CXX_COMPILER_ID:Clang>:-fsized-deallocation>
2020-12-28 10:15:37 -05:00
)
endif()
create_target_directory_groups(common)
2021-07-25 18:34:14 -04:00
target_link_libraries(common PUBLIC ${Boost_LIBRARIES} fmt::fmt microprofile Threads::Threads)
2022-10-18 06:16:38 -04:00
if (TARGET lz4::lz4)
target_link_libraries(common PRIVATE lz4::lz4)
else()
target_link_libraries(common PRIVATE LZ4::lz4_shared)
endif()
2022-07-22 21:01:36 -04:00
if (TARGET zstd::zstd)
2020-12-28 10:15:37 -05:00
target_link_libraries(common PRIVATE zstd::zstd)
else()
2022-07-22 21:01:36 -04:00
target_link_libraries(common PRIVATE
$<IF:$<TARGET_EXISTS:zstd::libzstd_shared>,zstd::libzstd_shared,zstd::libzstd_static>)
2020-12-28 10:15:37 -05:00
endif()