diff --git a/bumpversion.sh b/bumpversion.sh index 5c960e6f7..73886912a 100644 --- a/bumpversion.sh +++ b/bumpversion.sh @@ -17,23 +17,28 @@ # Parse arguments. newversion="$1" -if [ -z "$(echo $newversion | grep '\.')" ] +romversion="$2" +if [ -z "$(echo "$newversion" | grep '\.')" ] then - echo '[!] Usage: bumpversion.sh x.y[.z]' + echo '[!] Usage: bumpversion.sh x.y[.z] [romversion]' exit 1 fi shift # Extract version components. -newversion_maj=$(echo $newversion | cut -d. -f1) -newversion_min=$(echo $newversion | cut -d. -f2) -newversion_patch=$(echo $newversion | cut -d. -f3) +newversion_maj=$(echo "$newversion" | cut -d. -f1) +newversion_min=$(echo "$newversion" | cut -d. -f2) +newversion_patch=$(echo "$newversion" | cut -d. -f3) [ -z "$newversion_patch" ] && newversion_patch=0 # Switch to the repository root directory. -cd "$(dirname "$0")" +cd "$(dirname "$0")" || exit get_latest_rom_release() { + if [ -n "${romversion}" ]; then + echo "${romversion}" + return + fi # Get the latest ROM release from the GitHub API. curl --silent "https://api.github.com/repos/86Box/roms/releases/latest" | grep '"tag_name":' | @@ -67,7 +72,7 @@ patch_file src/include_make/*/version.h EMU_VERSION_PATCH 's/(#\s*define\s+EMU_V patch_file src/include_make/*/version.h COPYRIGHT_YEAR 's/(#\s*define\s+COPYRIGHT_YEAR\s+)[0-9]+/\1'"$(date +%Y)"'/' patch_file src/include_make/*/version.h EMU_DOCS_URL 's/(#\s*define\s+EMU_DOCS_URL\s+"https:\/\/[^\/]+\/en\/v)[^\/]+/\1'"$newversion_maj.$newversion_min"'/' patch_file src/unix/assets/*.spec Version 's/(Version:\s+)[0-9].+/\1'"$newversion"'/' -patch_file src/unix/assets/*.spec '%global romver' 's/(^%global\ romver\s+)[0-9]{8}/'"$(get_latest_rom_release)"'/' +patch_file src/unix/assets/*.spec '%global romver' 's/(^%global\ romver\s+)[0-9]{8}/\1'"$(get_latest_rom_release)"'/' patch_file src/unix/assets/*.spec 'changelog version' 's/(^[*]\s.*>\s+)[0-9].+/\1'"$newversion"-1'/' patch_file src/unix/assets/*.spec 'changelog date' 's/(^[*]\s)[a-zA-Z]{3}\s[a-zA-Z]{3}\s[0-9]{2}\s[0-9]{4}/\1'"$(pretty_date)"'/' patch_file src/unix/assets/*.metainfo.xml release 's/( 3.6-1 +* Fri Jul 01 2022 Robert de Rooy 3.6-1 - Bump release