Close #24324: Split font.dat from g2.dat
18
.github/workflows/ci.yml
vendored
@@ -150,7 +150,7 @@ jobs:
|
||||
- name: Run check-changelog-formatting
|
||||
run: scripts/check-changelog-formatting
|
||||
g2dat:
|
||||
name: g2.dat
|
||||
name: g2.dat and fonts.dat
|
||||
runs-on: ubuntu-latest
|
||||
needs: build_variables
|
||||
steps:
|
||||
@@ -167,11 +167,19 @@ jobs:
|
||||
- name: Build g2.dat
|
||||
run: |
|
||||
gxc build g2.dat OpenRCT2/resources/g2/sprites.json
|
||||
- name: Upload artifacts
|
||||
- name: Build fonts.dat
|
||||
run: |
|
||||
gxc build fonts.dat OpenRCT2/resources/fonts/sprites.json
|
||||
- name: Upload g2.dat
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: g2-${{ needs.build_variables.outputs.name }}.dat
|
||||
path: g2.dat
|
||||
- name: Upload fonts.dat
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: fonts-${{ needs.build_variables.outputs.name }}.dat
|
||||
path: fonts.dat
|
||||
windows:
|
||||
name: Windows
|
||||
runs-on: windows-latest
|
||||
@@ -235,6 +243,12 @@ jobs:
|
||||
with:
|
||||
name: g2-${{ needs.build_variables.outputs.name }}.dat
|
||||
path: bin/data
|
||||
- name: Download fonts.dat on ARM64
|
||||
if: matrix.platform == 'arm64'
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: fonts-${{ needs.build_variables.outputs.name }}.dat
|
||||
path: bin/data
|
||||
- name: Build artifacts
|
||||
run: |
|
||||
. scripts/setenv -q
|
||||
|
||||
1
.gitignore
vendored
@@ -24,6 +24,7 @@ libversion
|
||||
|
||||
# Downloaded or built data files
|
||||
data/g2.dat
|
||||
data/fonts.dat
|
||||
data/sequence
|
||||
data/object
|
||||
data/assetpack
|
||||
|
||||
@@ -391,16 +391,31 @@ if(NOT DISABLE_GUI)
|
||||
include("${ROOT_DIR}/src/openrct2-ui/CMakeLists.txt" NO_POLICY_SCOPE)
|
||||
endif()
|
||||
|
||||
# g2
|
||||
if (NOT (MACOS_BUNDLE AND (NOT CMAKE_OSX_ARCHITECTURES MATCHES "${SYSTEM_MACOS_ARCH}")))
|
||||
add_custom_command(
|
||||
OUTPUT g2.dat
|
||||
COMMAND ./openrct2-cli sprite build ${CMAKE_BINARY_DIR}/g2.dat ${ROOT_DIR}/resources/g2/sprites.json
|
||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||
)
|
||||
add_custom_target(g2 DEPENDS OpenRCT2::openrct2-cli g2.dat)
|
||||
# graphics files (g2.dat and font.dat)
|
||||
if (NOT CMAKE_CROSSCOMPILING)
|
||||
set(graphics_files "g2" "fonts")
|
||||
|
||||
foreach(graphics_file ${graphics_files})
|
||||
set(output_file "${graphics_file}.dat")
|
||||
set(json_file "${ROOT_DIR}/resources/${graphics_file}/sprites.json")
|
||||
file(GLOB_RECURSE dependent_files "${ROOT_DIR}/resources/${graphics_file}/*")
|
||||
add_custom_command(
|
||||
OUTPUT ${output_file}
|
||||
COMMAND ./openrct2-cli sprite build "${CMAKE_BINARY_DIR}/${output_file}" "${json_file}"
|
||||
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
|
||||
DEPENDS ${dependent_files}
|
||||
)
|
||||
list(APPEND output_files "${output_file}")
|
||||
endforeach()
|
||||
|
||||
add_custom_target(graphics DEPENDS OpenRCT2::openrct2-cli ${output_files})
|
||||
|
||||
if(NOT DISABLE_GUI)
|
||||
add_dependencies(openrct2 graphics)
|
||||
endif()
|
||||
|
||||
else ()
|
||||
message("Skipping g2.dat generation in macOS cross-compile")
|
||||
message("Skipping graphics generation in cross-compile")
|
||||
endif ()
|
||||
|
||||
# Include tests
|
||||
@@ -422,9 +437,6 @@ if (NOT MACOS_BUNDLE OR (MACOS_BUNDLE AND WITH_TESTS))
|
||||
"${ROOT_DIR}/distribution/scripting.md"
|
||||
"${ROOT_DIR}/distribution/openrct2.d.ts")
|
||||
|
||||
# CMake does not allow specifying a dependency chain which includes built-in
|
||||
# targets, like `install`, so we have to trick it and execute dependency ourselves.
|
||||
install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" --build \"${CMAKE_CURRENT_BINARY_DIR}\" --target g2)")
|
||||
if (DOWNLOAD_TITLE_SEQUENCES)
|
||||
# Checks if this version of the title sequences are already installed, updates if necessary
|
||||
# if /data/sequence exists, it will overwrite this anyways (see `install(DIRECTORY "data/" ...)` below)
|
||||
@@ -487,6 +499,7 @@ if (NOT MACOS_BUNDLE OR (MACOS_BUNDLE AND WITH_TESTS))
|
||||
)")
|
||||
endif ()
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/g2.dat" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/fonts.dat" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
|
||||
install(DIRECTORY "data/" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
|
||||
|
||||
# even when building WITH_TESTS, none of the below install steps are required for OpenRCT2.app
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
<CLIProjectName Condition="'$(CLIProjectName)' == ''">openrct2-cli</CLIProjectName>
|
||||
<CLIProjectPath Condition="'$(CLIProjectPath)' == ''">$(SolutionDir)src\$(CLIProjectName)\$(CLIProjectName).vcxproj</CLIProjectPath>
|
||||
<G2CLIPath Condition="'$(G2CLIPath)' == ''">$(OutDir)$(CLIProjectName).exe</G2CLIPath>
|
||||
<FontsCLIPath Condition="'$(FontsCLIPath)' == ''">$(OutDir)$(CLIProjectName).exe</FontsCLIPath>
|
||||
|
||||
<!-- Data Configuration -->
|
||||
<DataOutputPath Condition="'$(DataOutputPath)' == ''">$(OutDir)data\</DataOutputPath>
|
||||
@@ -18,12 +19,15 @@
|
||||
<DataScenarioPath Condition="'$(DataScenarioPath)' == ''">$(SolutionDir)data\scenario_patches\</DataScenarioPath>
|
||||
<ResourcesG2Path Condition="'$(ResourcesG2Path)' == ''">$(SolutionDir)resources\g2\</ResourcesG2Path>
|
||||
<G2InputFile Condition="'$(G2InputFile)' == ''">$(ResourcesG2Path)sprites.json</G2InputFile>
|
||||
<ResourcesFontsPath Condition="'$(ResourcesFontsPath)' == ''">$(SolutionDir)resources\fonts\</ResourcesFontsPath>
|
||||
<FontsInputFile Condition="'$(FontsInputFile)' == ''">$(ResourcesFontsPath)sprites.json</FontsInputFile>
|
||||
<DataOutputPath Condition="'$(DataOutputPath)' == ''">$(OutDir)data\</DataOutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<!-- File Group Definitions -->
|
||||
<ItemGroup>
|
||||
<G2Input Include="$(G2InputFile)" />
|
||||
<FontsInput Include="$(FontsInputFile)" />
|
||||
|
||||
<LanguageFiles Include="$(DataLanguagePath)**\*"
|
||||
Exclude="$(DataLanguagePath)*.bak;
|
||||
@@ -117,6 +121,25 @@
|
||||
ForceTouch="true"
|
||||
AlwaysCreate="true" />
|
||||
</Target>
|
||||
|
||||
<Target Name="g2" DependsOnTargets="BuildG2" />
|
||||
|
||||
<Target Name="BuildFonts"
|
||||
AfterTargets="Build"
|
||||
Inputs="@(FontsInput)"
|
||||
Outputs="$(DataOutputPath)fonts.dat"
|
||||
Condition="'$(TestConfig)' != 'true' and ('$(Platform)' != 'ARM64' or '$(PROCESSOR_ARCHITECTURE)' == 'ARM64')">
|
||||
|
||||
<MakeDir Directories="$(DataOutputPath)" />
|
||||
|
||||
<Exec Command=""$(FontsCLIPath)" sprite build "$(DataOutputPath)fonts.dat" "%(FontsInput.FullPath)""
|
||||
ConsoleToMSBuild="true"
|
||||
IgnoreExitCode="false">
|
||||
<Output TaskParameter="ConsoleOutput" PropertyName="FontsBuildOutput" />
|
||||
</Exec>
|
||||
|
||||
<Touch Files="$(DataOutputPath)fonts.dat"
|
||||
ForceTouch="true"
|
||||
AlwaysCreate="true" />
|
||||
</Target>
|
||||
<Target Name="fonts" DependsOnTargets="BuildFonts" />
|
||||
</Project>
|
||||
|
||||
|
Before Width: | Height: | Size: 148 B After Width: | Height: | Size: 148 B |
|
Before Width: | Height: | Size: 141 B After Width: | Height: | Size: 141 B |
|
Before Width: | Height: | Size: 128 B After Width: | Height: | Size: 128 B |
|
Before Width: | Height: | Size: 891 B After Width: | Height: | Size: 891 B |
|
Before Width: | Height: | Size: 891 B After Width: | Height: | Size: 891 B |
|
Before Width: | Height: | Size: 174 B After Width: | Height: | Size: 174 B |
|
Before Width: | Height: | Size: 883 B After Width: | Height: | Size: 883 B |
|
Before Width: | Height: | Size: 881 B After Width: | Height: | Size: 881 B |
|
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 173 B |
|
Before Width: | Height: | Size: 892 B After Width: | Height: | Size: 892 B |
|
Before Width: | Height: | Size: 894 B After Width: | Height: | Size: 894 B |
|
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 173 B |
|
Before Width: | Height: | Size: 889 B After Width: | Height: | Size: 889 B |
|
Before Width: | Height: | Size: 897 B After Width: | Height: | Size: 897 B |
|
Before Width: | Height: | Size: 182 B After Width: | Height: | Size: 182 B |
|
Before Width: | Height: | Size: 901 B After Width: | Height: | Size: 901 B |
|
Before Width: | Height: | Size: 895 B After Width: | Height: | Size: 895 B |
|
Before Width: | Height: | Size: 171 B After Width: | Height: | Size: 171 B |
|
Before Width: | Height: | Size: 891 B After Width: | Height: | Size: 891 B |
|
Before Width: | Height: | Size: 887 B After Width: | Height: | Size: 887 B |
|
Before Width: | Height: | Size: 176 B After Width: | Height: | Size: 176 B |
|
Before Width: | Height: | Size: 897 B After Width: | Height: | Size: 897 B |
|
Before Width: | Height: | Size: 893 B After Width: | Height: | Size: 893 B |
|
Before Width: | Height: | Size: 179 B After Width: | Height: | Size: 179 B |
|
Before Width: | Height: | Size: 891 B After Width: | Height: | Size: 891 B |
|
Before Width: | Height: | Size: 880 B After Width: | Height: | Size: 880 B |
|
Before Width: | Height: | Size: 167 B After Width: | Height: | Size: 167 B |
|
Before Width: | Height: | Size: 882 B After Width: | Height: | Size: 882 B |
|
Before Width: | Height: | Size: 881 B After Width: | Height: | Size: 881 B |
|
Before Width: | Height: | Size: 167 B After Width: | Height: | Size: 167 B |
|
Before Width: | Height: | Size: 891 B After Width: | Height: | Size: 891 B |
|
Before Width: | Height: | Size: 894 B After Width: | Height: | Size: 894 B |
|
Before Width: | Height: | Size: 170 B After Width: | Height: | Size: 170 B |
|
Before Width: | Height: | Size: 902 B After Width: | Height: | Size: 902 B |
|
Before Width: | Height: | Size: 895 B After Width: | Height: | Size: 895 B |
|
Before Width: | Height: | Size: 170 B After Width: | Height: | Size: 170 B |
|
Before Width: | Height: | Size: 886 B After Width: | Height: | Size: 886 B |
|
Before Width: | Height: | Size: 878 B After Width: | Height: | Size: 878 B |
|
Before Width: | Height: | Size: 171 B After Width: | Height: | Size: 171 B |
|
Before Width: | Height: | Size: 890 B After Width: | Height: | Size: 890 B |
|
Before Width: | Height: | Size: 887 B After Width: | Height: | Size: 887 B |
|
Before Width: | Height: | Size: 174 B After Width: | Height: | Size: 174 B |
|
Before Width: | Height: | Size: 888 B After Width: | Height: | Size: 888 B |
|
Before Width: | Height: | Size: 877 B After Width: | Height: | Size: 877 B |
|
Before Width: | Height: | Size: 168 B After Width: | Height: | Size: 168 B |
|
Before Width: | Height: | Size: 887 B After Width: | Height: | Size: 887 B |
|
Before Width: | Height: | Size: 878 B After Width: | Height: | Size: 878 B |
|
Before Width: | Height: | Size: 171 B After Width: | Height: | Size: 171 B |
|
Before Width: | Height: | Size: 895 B After Width: | Height: | Size: 895 B |
|
Before Width: | Height: | Size: 890 B After Width: | Height: | Size: 890 B |
|
Before Width: | Height: | Size: 176 B After Width: | Height: | Size: 176 B |
|
Before Width: | Height: | Size: 899 B After Width: | Height: | Size: 899 B |
|
Before Width: | Height: | Size: 895 B After Width: | Height: | Size: 895 B |
|
Before Width: | Height: | Size: 174 B After Width: | Height: | Size: 174 B |
|
Before Width: | Height: | Size: 895 B After Width: | Height: | Size: 895 B |
|
Before Width: | Height: | Size: 888 B After Width: | Height: | Size: 888 B |
|
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 173 B |
|
Before Width: | Height: | Size: 902 B After Width: | Height: | Size: 902 B |
|
Before Width: | Height: | Size: 897 B After Width: | Height: | Size: 897 B |
|
Before Width: | Height: | Size: 174 B After Width: | Height: | Size: 174 B |
|
Before Width: | Height: | Size: 908 B After Width: | Height: | Size: 908 B |
|
Before Width: | Height: | Size: 902 B After Width: | Height: | Size: 902 B |
|
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 173 B |
|
Before Width: | Height: | Size: 889 B After Width: | Height: | Size: 889 B |
|
Before Width: | Height: | Size: 888 B After Width: | Height: | Size: 888 B |
|
Before Width: | Height: | Size: 169 B After Width: | Height: | Size: 169 B |
|
Before Width: | Height: | Size: 891 B After Width: | Height: | Size: 891 B |
|
Before Width: | Height: | Size: 889 B After Width: | Height: | Size: 889 B |
|
Before Width: | Height: | Size: 176 B After Width: | Height: | Size: 176 B |
|
Before Width: | Height: | Size: 888 B After Width: | Height: | Size: 888 B |
|
Before Width: | Height: | Size: 890 B After Width: | Height: | Size: 890 B |
|
Before Width: | Height: | Size: 171 B After Width: | Height: | Size: 171 B |
|
Before Width: | Height: | Size: 882 B After Width: | Height: | Size: 882 B |
|
Before Width: | Height: | Size: 882 B After Width: | Height: | Size: 882 B |
|
Before Width: | Height: | Size: 170 B After Width: | Height: | Size: 170 B |
|
Before Width: | Height: | Size: 883 B After Width: | Height: | Size: 883 B |
|
Before Width: | Height: | Size: 886 B After Width: | Height: | Size: 886 B |
|
Before Width: | Height: | Size: 174 B After Width: | Height: | Size: 174 B |
|
Before Width: | Height: | Size: 883 B After Width: | Height: | Size: 883 B |
|
Before Width: | Height: | Size: 895 B After Width: | Height: | Size: 895 B |
|
Before Width: | Height: | Size: 178 B After Width: | Height: | Size: 178 B |
|
Before Width: | Height: | Size: 889 B After Width: | Height: | Size: 889 B |
|
Before Width: | Height: | Size: 886 B After Width: | Height: | Size: 886 B |
|
Before Width: | Height: | Size: 171 B After Width: | Height: | Size: 171 B |
|
Before Width: | Height: | Size: 884 B After Width: | Height: | Size: 884 B |
|
Before Width: | Height: | Size: 879 B After Width: | Height: | Size: 879 B |
|
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 173 B |
|
Before Width: | Height: | Size: 891 B After Width: | Height: | Size: 891 B |
|
Before Width: | Height: | Size: 889 B After Width: | Height: | Size: 889 B |
|
Before Width: | Height: | Size: 179 B After Width: | Height: | Size: 179 B |
|
Before Width: | Height: | Size: 892 B After Width: | Height: | Size: 892 B |
|
Before Width: | Height: | Size: 891 B After Width: | Height: | Size: 891 B |
|
Before Width: | Height: | Size: 171 B After Width: | Height: | Size: 171 B |
|
Before Width: | Height: | Size: 880 B After Width: | Height: | Size: 880 B |
|
Before Width: | Height: | Size: 878 B After Width: | Height: | Size: 878 B |
|
Before Width: | Height: | Size: 167 B After Width: | Height: | Size: 167 B |