mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-11-24 20:36:24 -05:00
d1bf7919da
This removes a dependency inversion between core and common. It's also the proper place for the file since it makes screen layout decisions specific to the 3DS.
100 lines
2.9 KiB
CMake
100 lines
2.9 KiB
CMake
# Generate cpp with Git revision from template
|
|
# Also if this is a CI build, add the build name (ie: Nightly, Bleeding Edge) to the scm_rev file as well
|
|
set(REPO_NAME "")
|
|
if ($ENV{CI})
|
|
if ($ENV{TRAVIS})
|
|
set(BUILD_REPOSITORY $ENV{TRAVIS_REPO_SLUG})
|
|
elseif($ENV{APPVEYOR})
|
|
set(BUILD_REPOSITORY $ENV{APPVEYOR_REPO_NAME})
|
|
endif()
|
|
# regex capture the string nightly or bleeding-edge into CMAKE_MATCH_1
|
|
string(REGEX MATCH "citra-emu/citra-?(.*)" OUTVAR ${BUILD_REPOSITORY})
|
|
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)
|
|
# this leaves a trailing space on the last word, but we actually want that
|
|
# because of how its styled in the title bar.
|
|
set(REPO_NAME "${REPO_NAME}${FIRST_LETTER}${REMAINDER} ")
|
|
endforeach()
|
|
endif()
|
|
endif()
|
|
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp.in" "${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp" @ONLY)
|
|
|
|
set(SRCS
|
|
break_points.cpp
|
|
file_util.cpp
|
|
hash.cpp
|
|
logging/filter.cpp
|
|
logging/text_formatter.cpp
|
|
logging/backend.cpp
|
|
memory_util.cpp
|
|
microprofile.cpp
|
|
misc.cpp
|
|
param_package.cpp
|
|
scm_rev.cpp
|
|
string_util.cpp
|
|
telemetry.cpp
|
|
thread.cpp
|
|
timer.cpp
|
|
)
|
|
|
|
set(HEADERS
|
|
alignment.h
|
|
assert.h
|
|
bit_field.h
|
|
bit_set.h
|
|
break_points.h
|
|
chunk_file.h
|
|
code_block.h
|
|
color.h
|
|
common_funcs.h
|
|
common_paths.h
|
|
common_types.h
|
|
file_util.h
|
|
hash.h
|
|
linear_disk_cache.h
|
|
logging/text_formatter.h
|
|
logging/filter.h
|
|
logging/log.h
|
|
logging/backend.h
|
|
math_util.h
|
|
memory_util.h
|
|
microprofile.h
|
|
microprofileui.h
|
|
param_package.h
|
|
platform.h
|
|
quaternion.h
|
|
scm_rev.h
|
|
scope_exit.h
|
|
string_util.h
|
|
swap.h
|
|
synchronized_wrapper.h
|
|
telemetry.h
|
|
thread.h
|
|
thread_queue_list.h
|
|
timer.h
|
|
vector_math.h
|
|
)
|
|
|
|
if(ARCHITECTURE_x86_64)
|
|
set(SRCS ${SRCS}
|
|
x64/cpu_detect.cpp
|
|
)
|
|
|
|
set(HEADERS ${HEADERS}
|
|
x64/cpu_detect.h
|
|
x64/xbyak_abi.h
|
|
x64/xbyak_util.h
|
|
)
|
|
endif()
|
|
|
|
create_directory_groups(${SRCS} ${HEADERS})
|
|
|
|
add_library(common STATIC ${SRCS} ${HEADERS})
|
|
if (ARCHITECTURE_x86_64)
|
|
target_link_libraries(common xbyak)
|
|
endif()
|