build(macos): align the .dmg name with the AppImage/Windows scheme

Rename the deploy output so macOS matches the shared convention:
  RetroShare-v<ver>-<YYYYMMDD>-<count>-g<hash>-Qt-<qtver>-macos-<min>-<arch>.dmg

- add the leading 'v' and drop the old '-macOS-<arch>' infix;
- the runtime slot is 'macos-<min>', the minimum macOS version to run (the
  binary's deployment target, read via otool) — the macOS analog of the
  AppImage's glibc-<min>;
- '<arch>' (arm64 / x86_64, from uname -m) moves to the end.

Purely a naming change; deployment behaviour is unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
jolavillette 2026-07-19 16:35:32 +02:00
parent 05a0091af0
commit 201e7a90a8

View File

@ -87,7 +87,21 @@ fi
MACVERSION=$(sw_vers -productVersion 2>/dev/null || echo "UnknownOS")
ARCH=$(uname -m)
ARCHIVE_BASE="RetroShare-${VERSION}-macOS-${ARCH}${GIT_SUFFIX}-Qt-${QT_VERSION}"
# Minimum macOS version to run = the deployment target baked into the built
# binary (the macOS analog of the AppImage's glibc floor / min glibc to run).
# Read it from the GUI binary's load commands (LC_BUILD_VERSION `minos`, or the
# older LC_VERSION_MIN_MACOSX `version`); fall back to the build host's version.
MINOS=$(otool -l "$GUI_BIN" 2>/dev/null \
| grep -A3 -E 'LC_BUILD_VERSION|LC_VERSION_MIN_MACOSX' \
| grep -oE '(minos|version) [0-9]+(\.[0-9]+)+' \
| grep -oE '[0-9]+(\.[0-9]+)+' | head -1)
[ -n "$MINOS" ] || MINOS="$MACVERSION"
# Naming mirrors the Linux AppImage and Windows schemes:
# RetroShare-v<ver>-<YYYYMMDD>-<count>-g<hash>-Qt-<qtver>-macos-<min>-<arch>.dmg
# GIT_SUFFIX already carries "-<YYYYMMDD>-<count>-g<hash>" (or just the date when
# exactly on a tag).
ARCHIVE_BASE="RetroShare-v${VERSION}${GIT_SUFFIX}-Qt-${QT_VERSION}-macos-${MINOS}-${ARCH}"
DEPLOY_DIR="${BUILD_DIR}/${ARCHIVE_BASE}"
echo " Target Package Name: ${ARCHIVE_BASE}"