[build] Cache World maps and symbols version

Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
This commit is contained in:
x7z4w
2025-07-30 15:25:10 +00:00
committed by Yannik Bloscheck
parent c6439aaa82
commit 053fe3c143
2 changed files with 38 additions and 8 deletions

View File

@@ -30,7 +30,22 @@ set -euo pipefail
###############################################################################
echo "Configuring the repository for development."
Diff() {
local VER_PATH=$1
shift
local GIT_DIFF="$(git diff "$@")"
local LAST_COMMIT=$(git log -n 1 --pretty=format:%H -- "$@")
if [ "$LAST_COMMIT" != "$(cat "$VER_PATH" 2>/dev/null)" ]; then
printf "$LAST_COMMIT" > "$VER_PATH"
else
false
fi
if [ "$GIT_DIFF" != "$(cat "$VER_PATH"1_ver 2>/dev/null)" ]; then
printf "$GIT_DIFF" > "$VER_PATH"1_ver
else
false
fi
}
if [ ! -d 3party/boost/tools ]; then
git submodule update --init --recursive --depth 1
@@ -43,18 +58,31 @@ if [ ! -d 3party/boost/boost ]; then
fi
if [ "$SKIP_MAP_DOWNLOAD" = false ]; then
echo "Downloading world map..."
wget -N https://cdn.comaps.app/maps/latest/World.mwm -P ./data/
wget -N https://cdn.comaps.app/maps/latest/WorldCoasts.mwm -P ./data/
MWM_VERSION=$(awk -F'[:,]' '/"v":/{ $2 = substr($2, 2); print $2 }' data/countries.txt)
MWM_PATH="data/world_mwm/$MWM_VERSION"
WORLD_PATH="$MWM_PATH/World.mwm"
WORLD_PATH2="$MWM_PATH/WorldCoasts.mwm"
mkdir -p "$MWM_PATH"
if [ ! -f "$WORLD_PATH" ]; then
echo "Downloading world map..."
wget -N "https://cdn.comaps.app/maps/$MWM_VERSION/World.mwm" -P "$MWM_PATH" &&
rm data/World.mwm 2>/dev/null; ln -s "$WORLD_PATH" data/World.mwm
fi
if [ ! -f "$WORLD_PATH2" ]; then
wget -N "https://cdn.comaps.app/maps/$MWM_VERSION/WorldCoasts.mwm" -P "$MWM_PATH" &&
rm data/WorldCoasts.mwm 2>/dev/null; ln -s "$WORLD_PATH2" data/WorldCoasts.mwm
fi
else
echo "Skipping world map download..."
fi
if [ "$SKIP_GENERATE_SYMBOLS" = false ]; then
echo "Generating symbols..."
bash ./tools/unix/generate_symbols.sh
if Diff data/_sym_ver data/styles/*/*/symbols; then
echo "Generating symbols..."
bash ./tools/unix/generate_symbols.sh
fi
else
echo "Skipping generate symbols..."
fi
echo "The repository is configured for development."