mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2025-10-05 15:52:45 +02:00
Compilation and CMake fixes for both Windows on ARM and clang-cl, meaning Windows can now be built on both MSVC and clang on both amd64 and aarch64. Compiling on clang is *dramatically* faster so this should be useful for CI. Co-authored-by: crueter <crueter@eden-emu.dev> Co-authored-by: crueter <crueter@crueter.xyz> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/348 Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Reviewed-by: crueter <crueter@eden-emu.dev> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
41 lines
1.1 KiB
CMake
41 lines
1.1 KiB
CMake
# SPDX-FileCopyrightText: 2019 yuzu Emulator Project
|
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
# Gets a UTC timestamp and sets the provided variable to it
|
|
function(get_timestamp _var)
|
|
string(TIMESTAMP timestamp UTC)
|
|
set(${_var} "${timestamp}" PARENT_SCOPE)
|
|
endfunction()
|
|
|
|
# generate git/build information
|
|
include(GetGitRevisionDescription)
|
|
if(NOT GIT_REF_SPEC)
|
|
get_git_head_revision(GIT_REF_SPEC GIT_REV)
|
|
endif()
|
|
if(NOT GIT_DESC)
|
|
git_describe(GIT_DESC --always --long --dirty)
|
|
endif()
|
|
if (NOT GIT_BRANCH)
|
|
git_branch_name(GIT_BRANCH)
|
|
endif()
|
|
get_timestamp(BUILD_DATE)
|
|
|
|
git_get_exact_tag(GIT_TAG --tags)
|
|
if (GIT_TAG MATCHES "NOTFOUND")
|
|
set(BUILD_VERSION "${GIT_DESC}")
|
|
set(IS_DEV_BUILD true)
|
|
else()
|
|
set(BUILD_VERSION ${GIT_TAG})
|
|
set(IS_DEV_BUILD false)
|
|
endif()
|
|
|
|
# Generate cpp with Git revision from template
|
|
# Also if this is a CI build, add the build name (ie: Nightly, Canary) to the scm_rev file as well
|
|
set(REPO_NAME "Eden")
|
|
set(BUILD_ID ${GIT_BRANCH})
|
|
set(BUILD_FULLNAME "${REPO_NAME} ${BUILD_VERSION} ")
|
|
|
|
set(CXX_COMPILER "${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION}")
|
|
|
|
configure_file(scm_rev.cpp.in scm_rev.cpp @ONLY)
|