2019-11-06 02:37:27 +00:00
|
|
|
if (DEFINED ENV{AZURECIREPO})
|
|
|
|
set(BUILD_REPOSITORY $ENV{AZURECIREPO})
|
2019-02-07 00:55:14 +00:00
|
|
|
endif()
|
2019-10-05 04:09:49 +00:00
|
|
|
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 ()
|
2020-01-16 07:12:50 +00:00
|
|
|
|
|
|
|
# Pass the path to git to the GenerateSCMRev.cmake as well
|
|
|
|
find_package(Git QUIET)
|
|
|
|
|
2019-01-14 04:58:46 +00:00
|
|
|
add_custom_command(OUTPUT scm_rev.cpp
|
2019-02-07 00:55:14 +00:00
|
|
|
COMMAND ${CMAKE_COMMAND}
|
2022-07-26 20:46:55 +00:00
|
|
|
-DSRC_DIR=${PROJECT_SOURCE_DIR}
|
2021-06-09 07:35:50 +00:00
|
|
|
-DBUILD_REPOSITORY=${BUILD_REPOSITORY}
|
|
|
|
-DTITLE_BAR_FORMAT_IDLE=${TITLE_BAR_FORMAT_IDLE}
|
|
|
|
-DTITLE_BAR_FORMAT_RUNNING=${TITLE_BAR_FORMAT_RUNNING}
|
|
|
|
-DBUILD_TAG=${BUILD_TAG}
|
|
|
|
-DBUILD_ID=${DISPLAY_VERSION}
|
2021-12-21 00:13:07 +00:00
|
|
|
-DGIT_REF_SPEC=${GIT_REF_SPEC}
|
|
|
|
-DGIT_REV=${GIT_REV}
|
|
|
|
-DGIT_DESC=${GIT_DESC}
|
|
|
|
-DGIT_BRANCH=${GIT_BRANCH}
|
|
|
|
-DBUILD_FULLNAME=${BUILD_FULLNAME}
|
2021-06-09 07:35:50 +00:00
|
|
|
-DGIT_EXECUTABLE=${GIT_EXECUTABLE}
|
2022-07-26 20:46:55 +00:00
|
|
|
-P ${PROJECT_SOURCE_DIR}/CMakeModules/GenerateSCMRev.cmake
|
2019-01-14 04:58:46 +00:00
|
|
|
DEPENDS
|
2021-07-18 23:56:50 +00:00
|
|
|
# Check that the scm_rev files haven't changed
|
2019-01-14 04:58:46 +00:00
|
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp.in"
|
|
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.h"
|
|
|
|
# technically we should regenerate if the git version changed, but its not worth the effort imo
|
2022-07-26 20:46:55 +00:00
|
|
|
"${PROJECT_SOURCE_DIR}/CMakeModules/GenerateSCMRev.cmake"
|
2021-06-09 07:35:50 +00:00
|
|
|
VERBATIM
|
2019-01-14 04:58:46 +00:00
|
|
|
)
|
2014-04-24 01:43:57 +00:00
|
|
|
|
2018-01-18 00:37:34 +00:00
|
|
|
add_library(common STATIC
|
2019-10-15 18:47:42 +00:00
|
|
|
algorithm.h
|
2018-01-18 00:37:34 +00:00
|
|
|
alignment.h
|
2021-12-25 19:27:52 +00:00
|
|
|
announce_multiplayer_room.h
|
2021-04-02 06:43:26 +00:00
|
|
|
assert.cpp
|
2018-01-18 00:37:34 +00:00
|
|
|
assert.h
|
2022-07-16 22:48:45 +00:00
|
|
|
atomic_helpers.h
|
2020-03-07 22:59:42 +00:00
|
|
|
atomic_ops.h
|
2018-09-16 18:05:51 +00:00
|
|
|
detached_tasks.cpp
|
|
|
|
detached_tasks.h
|
2020-11-20 04:52:37 +00:00
|
|
|
bit_cast.h
|
2018-01-18 00:37:34 +00:00
|
|
|
bit_field.h
|
2020-11-27 22:13:18 +00:00
|
|
|
bit_set.h
|
2018-12-19 20:25:12 +00:00
|
|
|
bit_util.h
|
2018-04-07 04:48:22 +00:00
|
|
|
cityhash.cpp
|
|
|
|
cityhash.h
|
2018-01-18 00:37:34 +00:00
|
|
|
common_funcs.h
|
|
|
|
common_types.h
|
2020-08-03 11:28:54 +00:00
|
|
|
concepts.h
|
2020-11-26 02:03:50 +00:00
|
|
|
div_ceil.h
|
2020-03-16 20:48:53 +00:00
|
|
|
dynamic_library.cpp
|
|
|
|
dynamic_library.h
|
2022-06-05 03:50:43 +00:00
|
|
|
elf.h
|
2021-09-08 18:36:20 +00:00
|
|
|
error.cpp
|
|
|
|
error.h
|
2021-11-01 01:20:51 +00:00
|
|
|
expected.h
|
2020-02-04 19:06:23 +00:00
|
|
|
fiber.cpp
|
|
|
|
fiber.h
|
2022-07-16 22:48:45 +00:00
|
|
|
fixed_point.h
|
2021-05-25 23:32:56 +00: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
|
2018-01-18 00:37:34 +00:00
|
|
|
hash.h
|
2018-08-10 00:43:45 +00:00
|
|
|
hex_util.cpp
|
|
|
|
hex_util.h
|
2021-06-05 09:23:25 +00:00
|
|
|
host_memory.cpp
|
|
|
|
host_memory.h
|
2021-09-20 19:56:55 +00:00
|
|
|
input.h
|
2020-12-27 09:58:16 +00:00
|
|
|
intrusive_red_black_tree.h
|
2021-06-23 21:18:27 +00:00
|
|
|
literals.h
|
2018-01-18 00:37:34 +00:00
|
|
|
logging/backend.cpp
|
|
|
|
logging/backend.h
|
|
|
|
logging/filter.cpp
|
|
|
|
logging/filter.h
|
2022-01-09 04:42:11 +00:00
|
|
|
logging/formatter.h
|
2018-01-18 00:37:34 +00:00
|
|
|
logging/log.h
|
2021-09-30 20:11:47 +00:00
|
|
|
logging/log_entry.h
|
2018-01-18 00:37:34 +00:00
|
|
|
logging/text_formatter.cpp
|
|
|
|
logging/text_formatter.h
|
2021-06-13 14:31:47 +00:00
|
|
|
logging/types.h
|
2019-02-08 05:45:50 +00:00
|
|
|
lz4_compression.cpp
|
|
|
|
lz4_compression.h
|
2018-01-18 00:37:34 +00:00
|
|
|
math_util.h
|
2020-05-17 18:45:12 +00:00
|
|
|
memory_detect.cpp
|
|
|
|
memory_detect.h
|
2018-01-18 00:37:34 +00:00
|
|
|
microprofile.cpp
|
|
|
|
microprofile.h
|
|
|
|
microprofileui.h
|
2021-01-20 23:09:57 +00:00
|
|
|
nvidia_flags.cpp
|
|
|
|
nvidia_flags.h
|
2019-03-02 20:20:28 +00:00
|
|
|
page_table.cpp
|
|
|
|
page_table.h
|
2018-01-18 00:37:34 +00:00
|
|
|
param_package.cpp
|
|
|
|
param_package.h
|
2020-12-27 09:58:16 +00:00
|
|
|
parent_of_member.h
|
2021-05-28 11:14:14 +00:00
|
|
|
point.h
|
2018-01-18 00:37:34 +00:00
|
|
|
quaternion.h
|
2022-07-16 22:48:45 +00:00
|
|
|
reader_writer_queue.h
|
2018-09-08 13:28:39 +00:00
|
|
|
ring_buffer.h
|
2018-01-18 00:37:34 +00:00
|
|
|
scm_rev.cpp
|
|
|
|
scm_rev.h
|
|
|
|
scope_exit.h
|
2021-04-14 23:07:40 +00:00
|
|
|
settings.cpp
|
|
|
|
settings.h
|
|
|
|
settings_input.cpp
|
|
|
|
settings_input.h
|
2020-02-04 15:23:12 +00:00
|
|
|
spin_lock.cpp
|
|
|
|
spin_lock.h
|
2020-10-27 03:07:36 +00:00
|
|
|
stream.cpp
|
|
|
|
stream.h
|
2018-01-18 00:37:34 +00:00
|
|
|
string_util.cpp
|
|
|
|
string_util.h
|
|
|
|
swap.h
|
|
|
|
telemetry.cpp
|
|
|
|
telemetry.h
|
|
|
|
thread.cpp
|
|
|
|
thread.h
|
|
|
|
thread_queue_list.h
|
2020-12-30 00:36:35 +00:00
|
|
|
thread_worker.h
|
2018-01-18 00:37:34 +00:00
|
|
|
threadsafe_queue.h
|
2020-05-11 21:51:26 +00:00
|
|
|
time_zone.cpp
|
|
|
|
time_zone.h
|
2021-02-09 02:05:13 +00:00
|
|
|
tiny_mt.h
|
2020-12-27 09:58:16 +00:00
|
|
|
tree.h
|
2019-02-15 23:26:41 +00:00
|
|
|
uint128.h
|
2021-04-01 04:03:25 +00:00
|
|
|
unique_function.h
|
2018-12-18 14:07:25 +00:00
|
|
|
uuid.cpp
|
|
|
|
uuid.h
|
2018-01-18 00:37:34 +00:00
|
|
|
vector_math.h
|
2020-04-08 21:35:07 +00:00
|
|
|
virtual_buffer.cpp
|
|
|
|
virtual_buffer.h
|
2020-02-09 20:53:22 +00:00
|
|
|
wall_clock.cpp
|
|
|
|
wall_clock.h
|
2019-02-08 22:11:00 +00:00
|
|
|
zstd_compression.cpp
|
|
|
|
zstd_compression.h
|
2018-01-18 00:37:34 +00:00
|
|
|
)
|
2014-08-24 01:22:05 +00:00
|
|
|
|
2015-08-15 02:29:08 +00:00
|
|
|
if(ARCHITECTURE_x86_64)
|
2018-01-18 00:37:34 +00:00
|
|
|
target_sources(common
|
|
|
|
PRIVATE
|
2015-08-12 04:19:20 +00:00
|
|
|
x64/cpu_detect.cpp
|
|
|
|
x64/cpu_detect.h
|
2020-02-09 20:53:22 +00:00
|
|
|
x64/native_clock.cpp
|
|
|
|
x64/native_clock.h
|
2020-05-30 00:55:27 +00:00
|
|
|
x64/xbyak_abi.h
|
|
|
|
x64/xbyak_util.h
|
2018-01-18 00:37:34 +00:00
|
|
|
)
|
2015-07-21 23:49:33 +00:00
|
|
|
endif()
|
|
|
|
|
2020-10-30 19:02:02 +00:00
|
|
|
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 02:28:33 +00:00
|
|
|
|
|
|
|
$<$<CXX_COMPILER_ID:Clang>:-fsized-deallocation>
|
2020-10-30 19:02:02 +00:00
|
|
|
)
|
|
|
|
endif()
|
|
|
|
|
2018-01-18 00:37:34 +00:00
|
|
|
create_target_directory_groups(common)
|
2014-04-29 02:40:39 +00:00
|
|
|
|
2021-07-23 06:43:50 +00:00
|
|
|
target_link_libraries(common PUBLIC ${Boost_LIBRARIES} fmt::fmt microprofile Threads::Threads)
|
2020-09-29 01:11:39 +00:00
|
|
|
target_link_libraries(common PRIVATE lz4::lz4 xbyak)
|
2022-07-22 04:51:01 +00:00
|
|
|
if (TARGET zstd::zstd)
|
2020-09-29 01:11:39 +00:00
|
|
|
target_link_libraries(common PRIVATE zstd::zstd)
|
|
|
|
else()
|
2022-07-22 04:51:01 +00:00
|
|
|
target_link_libraries(common PRIVATE
|
|
|
|
$<IF:$<TARGET_EXISTS:zstd::libzstd_shared>,zstd::libzstd_shared,zstd::libzstd_static>)
|
2020-09-29 01:11:39 +00:00
|
|
|
endif()
|