diff --git a/.ci/build-mac.sh b/.ci/build-mac.sh index 9eb27681b7..2f43e05e74 100755 --- a/.ci/build-mac.sh +++ b/.ci/build-mac.sh @@ -1,4 +1,13 @@ #!/bin/sh -ex +# Gather explicit version number and number of commits +COMM_TAG=$(awk '/version{.*}/ { printf("%d.%d.%d", $5, $6, $7) }' rpcs3/rpcs3_version.cpp) +COMM_COUNT=$(git rev-list --count HEAD) +COMM_HASH=$(git rev-parse --short=8 HEAD) + +# AVVER is used for GitHub releases, it is the version number. LVER is used for release naming. +AVVER="${COMM_TAG}-${COMM_COUNT}" +export LVER="${COMM_TAG}-${COMM_COUNT}-${COMM_HASH}" +echo "AVVER=$AVVER" >> .ci/ci-vars.env export HOMEBREW_NO_AUTO_UPDATE=1 export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 @@ -13,7 +22,6 @@ else arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" arch -x86_64 /usr/local/bin/brew install -f --overwrite --quiet python@3.14 opencv@4 "llvm@$LLVM_COMPILER_VER" sdl3 vulkan-headers vulkan-loader molten-vk arch -x86_64 /usr/local/bin/brew unlink --quiet ffmpeg qtbase qtsvg qtdeclarative - arch -x86_64 /usr/local/bin/brew link -f --overwrite --quiet "llvm@$LLVM_COMPILER_VER" fi export CXX=clang++ @@ -80,6 +88,8 @@ cmake .. \ -DRUN_RPCS3_TESTS="${RUN_UNIT_TESTS}" \ -DCMAKE_OSX_DEPLOYMENT_TARGET=14.4 \ -DCMAKE_OSX_SYSROOT="$(xcrun --sdk macosx --show-sdk-path)" \ + -DMACOSX_BUNDLE_SHORT_VERSION_STRING="${COMM_TAG}" \ + -DMACOSX_BUNDLE_BUNDLE_VERSION="${COMM_COUNT}" \ -DSTATIC_LINK_LLVM=ON \ -DUSE_SDL=ON \ -DUSE_DISCORD_RPC=ON \ @@ -100,6 +110,8 @@ cmake .. \ -DCMAKE_TOOLCHAIN_FILE=buildfiles/cmake/TCDarwinX86_64.cmake \ -DCMAKE_OSX_DEPLOYMENT_TARGET=14.4 \ -DCMAKE_OSX_SYSROOT="$(xcrun --sdk macosx --show-sdk-path)" \ + -DMACOSX_BUNDLE_SHORT_VERSION_STRING="${COMM_TAG}" \ + -DMACOSX_BUNDLE_BUNDLE_VERSION="${COMM_COUNT}"\ -DSTATIC_LINK_LLVM=ON \ -DUSE_SDL=ON \ -DUSE_DISCORD_RPC=ON \ diff --git a/.ci/deploy-mac.sh b/.ci/deploy-mac.sh index 53212357d0..76e34c4b3b 100755 --- a/.ci/deploy-mac.sh +++ b/.ci/deploy-mac.sh @@ -3,16 +3,6 @@ # shellcheck disable=SC2086 cd build || exit 1 -# Gather explicit version number and number of commits -COMM_TAG=$(awk '/version{.*}/ { printf("%d.%d.%d", $5, $6, $7) }' ../rpcs3/rpcs3_version.cpp) -COMM_COUNT=$(git rev-list --count HEAD) -COMM_HASH=$(git rev-parse --short=8 HEAD) - -AVVER="${COMM_TAG}-${COMM_COUNT}" - -# AVVER is used for GitHub releases, it is the version number. -echo "AVVER=$AVVER" >> ../.ci/ci-vars.env - cd bin mkdir -p "rpcs3.app/Contents/Resources/vulkan/icd.d" || true wget https://github.com/KhronosGroup/MoltenVK/releases/download/v1.4.1/MoltenVK-macos-privateapi.tar @@ -77,9 +67,9 @@ echo "URL=https://rpcs3.net/quickstart" >> Quickstart.url echo "IconIndex=0" >> Quickstart.url if [ "$AARCH64" -eq 1 ]; then - ARCHIVE_FILEPATH="$BUILD_ARTIFACTSTAGINGDIRECTORY/rpcs3-v${COMM_TAG}-${COMM_COUNT}-${COMM_HASH}_macos_arm64.7z" + ARCHIVE_FILEPATH="$BUILD_ARTIFACTSTAGINGDIRECTORY/rpcs3-v${LVER}_macos_arm64.7z" else - ARCHIVE_FILEPATH="$BUILD_ARTIFACTSTAGINGDIRECTORY/rpcs3-v${COMM_TAG}-${COMM_COUNT}-${COMM_HASH}_macos.7z" + ARCHIVE_FILEPATH="$BUILD_ARTIFACTSTAGINGDIRECTORY/rpcs3-v${LVER}_macos.7z" fi 7z a -mx9 "$ARCHIVE_FILEPATH" RPCS3.app Quickstart.url FILESIZE=$(stat -f %z "$ARCHIVE_FILEPATH") diff --git a/rpcs3/rpcs3.plist.in b/rpcs3/rpcs3.plist.in index a854779d9d..93a4f2c186 100644 --- a/rpcs3/rpcs3.plist.in +++ b/rpcs3/rpcs3.plist.in @@ -12,16 +12,14 @@ rpcs3.icns CFBundleIdentifier net.rpcs3.rpcs3 - CFBundleLongVersionString - ${RPCS3_GIT_TAG} CFBundleName RPCS3 CFBundlePackageType APPL CFBundleShortVersionString - ${RPCS3_GIT_TAG} + ${MACOSX_BUNDLE_SHORT_VERSION_STRING} CFBundleVersion - ${RPCS3_GIT_TAG} + ${MACOSX_BUNDLE_BUNDLE_VERSION} CFBundleSupportedPlatforms MacOSX diff --git a/rpcs3/rpcs3_version.cpp b/rpcs3/rpcs3_version.cpp index e7666e7b81..19d107e582 100644 --- a/rpcs3/rpcs3_version.cpp +++ b/rpcs3/rpcs3_version.cpp @@ -24,8 +24,6 @@ namespace rpcs3 return std::make_pair(std::move(commit_and_hash[0]), std::move(commit_and_hash[1])); } - // TODO: Make this accessible from cmake and keep in sync with MACOSX_BUNDLE_BUNDLE_VERSION. - // Currently accessible by Windows and Linux build scripts, see implementations when doing MACOSX const utils::version& get_version() { static constexpr utils::version version{ 0, 0, 39, utils::version_type::alpha, 1, RPCS3_GIT_VERSION };