build: embed version resources in the windows binaries (SDK bump)
This commit is contained in:
parent
12e71d3172
commit
671e74ba59
3 changed files with 54 additions and 1 deletions
|
|
@ -30,6 +30,15 @@ skate3_resolve_version(SKATE3_FULL_VERSION
|
||||||
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
|
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
|
||||||
string(REGEX REPLACE "-.*$" "" SKATE3_NUMERIC_VERSION "${SKATE3_FULL_VERSION}")
|
string(REGEX REPLACE "-.*$" "" SKATE3_NUMERIC_VERSION "${SKATE3_FULL_VERSION}")
|
||||||
|
|
||||||
|
# Four-part comma-separated form for Windows VERSIONINFO resources.
|
||||||
|
string(REPLACE "." ";" SKATE3_RC_VERSION_PARTS "${SKATE3_NUMERIC_VERSION}")
|
||||||
|
list(LENGTH SKATE3_RC_VERSION_PARTS SKATE3_RC_VERSION_PART_COUNT)
|
||||||
|
while(SKATE3_RC_VERSION_PART_COUNT LESS 4)
|
||||||
|
list(APPEND SKATE3_RC_VERSION_PARTS 0)
|
||||||
|
list(LENGTH SKATE3_RC_VERSION_PARTS SKATE3_RC_VERSION_PART_COUNT)
|
||||||
|
endwhile()
|
||||||
|
list(JOIN SKATE3_RC_VERSION_PARTS "," SKATE3_RC_VERSION)
|
||||||
|
|
||||||
set(SKATE3_TARGET_PROCESSOR "${CMAKE_SYSTEM_PROCESSOR}")
|
set(SKATE3_TARGET_PROCESSOR "${CMAKE_SYSTEM_PROCESSOR}")
|
||||||
if(APPLE AND CMAKE_OSX_ARCHITECTURES)
|
if(APPLE AND CMAKE_OSX_ARCHITECTURES)
|
||||||
list(LENGTH CMAKE_OSX_ARCHITECTURES SKATE3_OSX_ARCH_COUNT)
|
list(LENGTH CMAKE_OSX_ARCHITECTURES SKATE3_OSX_ARCH_COUNT)
|
||||||
|
|
@ -218,6 +227,15 @@ configure_file(
|
||||||
set(REXGLUE_ENABLE_TRACY OFF CACHE BOOL "Disable Tracy instrumentation for normal Skate 3 builds" FORCE)
|
set(REXGLUE_ENABLE_TRACY OFF CACHE BOOL "Disable Tracy instrumentation for normal Skate 3 builds" FORCE)
|
||||||
set(REXGLUE_ENABLE_PERF_COUNTERS OFF CACHE BOOL "Enable lightweight rexglue perf counter instrumentation")
|
set(REXGLUE_ENABLE_PERF_COUNTERS OFF CACHE BOOL "Enable lightweight rexglue perf counter instrumentation")
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
set(REXGLUE_RUNTIME_RC_VERSION "${SKATE3_RC_VERSION}")
|
||||||
|
set(REXGLUE_RUNTIME_RC_VERSION_STRING "${SKATE3_FULL_VERSION}")
|
||||||
|
set(REXGLUE_RUNTIME_RC_PRODUCT_NAME "Skate3Recomp")
|
||||||
|
set(REXGLUE_RUNTIME_RC_COMPANY "Skate3Recomp project")
|
||||||
|
set(REXGLUE_RUNTIME_RC_DESCRIPTION "Skate3Recomp guest runtime")
|
||||||
|
set(REXGLUE_RUNTIME_RC_COPYRIGHT "(c) Skate3Recomp contributors")
|
||||||
|
endif()
|
||||||
|
|
||||||
include(cmake/RexGlue.cmake)
|
include(cmake/RexGlue.cmake)
|
||||||
include(cmake/CodegenTargets.cmake)
|
include(cmake/CodegenTargets.cmake)
|
||||||
|
|
||||||
|
|
@ -262,6 +280,12 @@ if(WIN32)
|
||||||
COPYONLY
|
COPYONLY
|
||||||
)
|
)
|
||||||
target_link_options(skate3 PRIVATE LINKER:/MANIFESTINPUT:skate3_app.manifest)
|
target_link_options(skate3 PRIVATE LINKER:/MANIFESTINPUT:skate3_app.manifest)
|
||||||
|
configure_file(
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/src/skate3.rc.in
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/skate3.rc
|
||||||
|
@ONLY
|
||||||
|
)
|
||||||
|
target_sources(skate3 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/skate3.rc)
|
||||||
else()
|
else()
|
||||||
add_executable(skate3 ${SKATE3_SOURCES})
|
add_executable(skate3 ${SKATE3_SOURCES})
|
||||||
endif()
|
endif()
|
||||||
|
|
|
||||||
29
src/skate3.rc.in
Normal file
29
src/skate3.rc.in
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
1 VERSIONINFO
|
||||||
|
FILEVERSION @SKATE3_RC_VERSION@
|
||||||
|
PRODUCTVERSION @SKATE3_RC_VERSION@
|
||||||
|
FILEFLAGSMASK 0x3fL
|
||||||
|
FILEFLAGS 0x0L
|
||||||
|
FILEOS 0x40004L
|
||||||
|
FILETYPE 0x1L
|
||||||
|
FILESUBTYPE 0x0L
|
||||||
|
BEGIN
|
||||||
|
BLOCK "StringFileInfo"
|
||||||
|
BEGIN
|
||||||
|
BLOCK "040904b0"
|
||||||
|
BEGIN
|
||||||
|
VALUE "CompanyName", "Skate3Recomp project"
|
||||||
|
VALUE "FileDescription", "Skate3Recomp"
|
||||||
|
VALUE "FileVersion", "@SKATE3_FULL_VERSION@"
|
||||||
|
VALUE "InternalName", "skate3"
|
||||||
|
VALUE "LegalCopyright", "(c) Skate3Recomp contributors"
|
||||||
|
VALUE "OriginalFilename", "skate3.exe"
|
||||||
|
VALUE "ProductName", "Skate3Recomp"
|
||||||
|
VALUE "ProductVersion", "@SKATE3_FULL_VERSION@"
|
||||||
|
VALUE "Comments", "Fan-made recompilation. Not affiliated with or endorsed by Electronic Arts."
|
||||||
|
END
|
||||||
|
END
|
||||||
|
BLOCK "VarFileInfo"
|
||||||
|
BEGIN
|
||||||
|
VALUE "Translation", 0x409, 1200
|
||||||
|
END
|
||||||
|
END
|
||||||
2
third_party/rexglue-sdk
vendored
2
third_party/rexglue-sdk
vendored
|
|
@ -1 +1 @@
|
||||||
Subproject commit 593f8774f600ac84df282dec7f9225bc751bdc36
|
Subproject commit 3b0328da625267f950844c56c6b1e393723733d5
|
||||||
Loading…
Add table
Reference in a new issue