2014-08-24 01:22:05 +00:00
|
|
|
# Generate cpp with Git revision from template
|
2018-08-29 11:33:55 +00:00
|
|
|
# Also if this is a CI build, add the build name (ie: Nightly, Canary) to the scm_rev file as well
|
2017-01-15 18:43:22 +00:00
|
|
|
set(REPO_NAME "")
|
2018-08-29 11:33:55 +00:00
|
|
|
set(BUILD_VERSION "0")
|
2017-01-15 18:43:22 +00:00
|
|
|
if ($ENV{CI})
|
|
|
|
if ($ENV{TRAVIS})
|
|
|
|
set(BUILD_REPOSITORY $ENV{TRAVIS_REPO_SLUG})
|
2018-08-29 11:33:55 +00:00
|
|
|
set(BUILD_TAG $ENV{TRAVIS_TAG})
|
2017-01-15 18:43:22 +00:00
|
|
|
elseif($ENV{APPVEYOR})
|
|
|
|
set(BUILD_REPOSITORY $ENV{APPVEYOR_REPO_NAME})
|
2018-08-29 11:33:55 +00:00
|
|
|
set(BUILD_TAG $ENV{APPVEYOR_REPO_TAG_NAME})
|
2017-01-15 18:43:22 +00:00
|
|
|
endif()
|
2018-08-29 11:33:55 +00:00
|
|
|
# regex capture the string nightly or canary into CMAKE_MATCH_1
|
2018-01-13 23:49:16 +00:00
|
|
|
string(REGEX MATCH "yuzu-emu/yuzu-?(.*)" OUTVAR ${BUILD_REPOSITORY})
|
2017-01-15 18:43:22 +00:00
|
|
|
if (${CMAKE_MATCH_COUNT} GREATER 0)
|
|
|
|
# capitalize the first letter of each word in the repo name.
|
|
|
|
string(REPLACE "-" ";" REPO_NAME_LIST ${CMAKE_MATCH_1})
|
|
|
|
foreach(WORD ${REPO_NAME_LIST})
|
|
|
|
string(SUBSTRING ${WORD} 0 1 FIRST_LETTER)
|
|
|
|
string(SUBSTRING ${WORD} 1 -1 REMAINDER)
|
|
|
|
string(TOUPPER ${FIRST_LETTER} FIRST_LETTER)
|
2018-08-29 11:33:55 +00:00
|
|
|
set(REPO_NAME "${REPO_NAME}${FIRST_LETTER}${REMAINDER}")
|
2017-01-15 18:43:22 +00:00
|
|
|
endforeach()
|
2018-08-29 11:33:55 +00:00
|
|
|
if (BUILD_TAG)
|
|
|
|
string(REGEX MATCH "${CMAKE_MATCH_1}-([0-9]+)" OUTVAR ${BUILD_TAG})
|
|
|
|
if (${CMAKE_MATCH_COUNT} GREATER 0)
|
|
|
|
set(BUILD_VERSION ${CMAKE_MATCH_1})
|
|
|
|
endif()
|
|
|
|
if (BUILD_VERSION)
|
|
|
|
# This leaves a trailing space on the last word, but we actually want that
|
|
|
|
# because of how it's styled in the title bar.
|
2018-10-06 13:51:37 +00:00
|
|
|
set(BUILD_FULLNAME "${REPO_NAME} ${BUILD_VERSION} ")
|
2018-08-29 11:33:55 +00:00
|
|
|
else()
|
|
|
|
set(BUILD_FULLNAME "")
|
|
|
|
endif()
|
|
|
|
endif()
|
2017-01-15 18:43:22 +00:00
|
|
|
endif()
|
|
|
|
endif()
|
2014-04-24 02:13:00 +00:00
|
|
|
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp.in" "${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp" @ONLY)
|
2014-04-24 01:43:57 +00:00
|
|
|
|
2018-01-18 00:37:34 +00:00
|
|
|
add_library(common STATIC
|
|
|
|
alignment.h
|
|
|
|
assert.h
|
2018-09-16 18:05:51 +00:00
|
|
|
detached_tasks.cpp
|
|
|
|
detached_tasks.h
|
2018-01-18 00:37:34 +00:00
|
|
|
bit_field.h
|
|
|
|
bit_set.h
|
2018-04-07 04:48:22 +00:00
|
|
|
cityhash.cpp
|
|
|
|
cityhash.h
|
2018-01-18 00:37:34 +00:00
|
|
|
color.h
|
|
|
|
common_funcs.h
|
|
|
|
common_paths.h
|
|
|
|
common_types.h
|
|
|
|
file_util.cpp
|
|
|
|
file_util.h
|
|
|
|
hash.h
|
2018-08-10 00:43:45 +00:00
|
|
|
hex_util.cpp
|
|
|
|
hex_util.h
|
2018-01-18 00:37:34 +00:00
|
|
|
logging/backend.cpp
|
|
|
|
logging/backend.h
|
|
|
|
logging/filter.cpp
|
|
|
|
logging/filter.h
|
|
|
|
logging/log.h
|
|
|
|
logging/text_formatter.cpp
|
|
|
|
logging/text_formatter.h
|
|
|
|
math_util.h
|
|
|
|
microprofile.cpp
|
|
|
|
microprofile.h
|
|
|
|
microprofileui.h
|
|
|
|
misc.cpp
|
|
|
|
param_package.cpp
|
|
|
|
param_package.h
|
|
|
|
quaternion.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
|
|
|
|
string_util.cpp
|
|
|
|
string_util.h
|
|
|
|
swap.h
|
|
|
|
telemetry.cpp
|
|
|
|
telemetry.h
|
|
|
|
thread.cpp
|
|
|
|
thread.h
|
|
|
|
thread_queue_list.h
|
|
|
|
threadsafe_queue.h
|
|
|
|
timer.cpp
|
|
|
|
timer.h
|
|
|
|
vector_math.h
|
2018-09-16 18:05:51 +00:00
|
|
|
web_result.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
|
2016-12-12 09:23:08 +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()
|
|
|
|
|
2018-01-18 00:37:34 +00:00
|
|
|
create_target_directory_groups(common)
|
2014-04-29 02:40:39 +00:00
|
|
|
|
2018-03-22 10:21:29 +00:00
|
|
|
target_link_libraries(common PUBLIC Boost::boost fmt microprofile)
|
2016-12-12 09:23:08 +00:00
|
|
|
if (ARCHITECTURE_x86_64)
|
2017-05-28 01:26:55 +00:00
|
|
|
target_link_libraries(common PRIVATE xbyak)
|
2016-12-12 09:23:08 +00:00
|
|
|
endif()
|