From 8c365179ece35d4d61b151cb4b7609059840900b Mon Sep 17 00:00:00 2001 From: Chris Johns Date: Fri, 14 Aug 2020 07:58:15 +1000 Subject: Fix release branch git clones Closes #4051 --- rtems-release | 35 ++++++++++++++++++----------------- rtems-release-branch | 18 ++++++++++-------- rtems-release-cron | 42 +++++++++++++++++++++--------------------- rtems-release-defaults | 37 +++++++++++++++++-------------------- rtems-release-docs | 34 +++++++++++++++------------------- rtems-release-kernel | 28 ++++++++++++++-------------- rtems-release-notes | 15 +++++++-------- rtems-release-package | 28 +++++++++++++++------------- rtems-release-package-start | 29 ++++++++++++++++++----------- rtems-release-rsb-version | 23 +++++++++++++---------- rtems-release-sources | 20 ++++++++++---------- rtems-release-tag | 19 ++++++++++--------- rtems-release-version | 20 +++++++++++++++++++- 13 files changed, 187 insertions(+), 161 deletions(-) diff --git a/rtems-release b/rtems-release index b66ace3..51097c5 100755 --- a/rtems-release +++ b/rtems-release @@ -35,28 +35,18 @@ set -e # This is the top level RTEMS release script. Supply the version and and the # release. # -. ./rtems-release-version -echo "RTEMS Release, v${rtems_release_version}" # # Global release top path. # -export release_top=${PWD} +export release_top=$(realpath $(dirname $0)) +cd ${release_top} # # Defaults. # . ${release_top}/rtems-release-defaults -# -# We need pandoc so generate an error early is not available. -# -if [ ! $(command -v pandoc) ]; then - echo "error: pandoc not found, please install" >&2 - exit 1 -fi - -# # # Usage for this tool. # @@ -93,10 +83,21 @@ if [ $# -ne 2 ]; then echo "error: 2 arguments must be supplied, version and revision. See -h for help" exit 1 fi + version=$1 revision=$2 -release=${version}.${revision} +. ./rtems-release-version + +echo "RTEMS Release, v${release}" + +# +# We need pandoc so generate an error early is not available. +# +if [ ! $(command -v pandoc) ]; then + echo "error: pandoc not found, please install" >&2 + exit 1 +fi # # Does the release provide release notes? @@ -110,7 +111,7 @@ fi # build() { - echo "Package: $1" + echo "] Package: $1" ./rtems-release-package $* } @@ -118,7 +119,7 @@ build() # Clean the release directory away. # if [ -e ${release} ]; then - echo "Removing existing release ${release}" + echo "] Removing existing release ${release}" rm -rf ${release} mkdir ${release} fi @@ -162,7 +163,7 @@ fi # # The sources is always last. # -echo "Collect tools sources" +echo "] Collect tools sources" ./rtems-release-sources ${version} ${revision} ${release_url} # @@ -173,7 +174,7 @@ mkdir -p ${release}/contrib/rtems-release # # Create the release information # -echo "Create the release information" +echo "] Create the release information" . ${release_top}/rtems-release-info # diff --git a/rtems-release-branch b/rtems-release-branch index ae8e06c..cc5905d 100755 --- a/rtems-release-branch +++ b/rtems-release-branch @@ -35,13 +35,17 @@ set -e # This is the top level RTEMS release script. Supply the version and and the # release. # -. ./rtems-release-version -echo "RTEMS Release, v${rtems_release_version}" # # Global release top path. # -export release_top=${PWD} +export release_top=$(realpath $(dirname $0)) +cd ${release_top} + +# +# Defaults. +# +. ${release_top}/rtems-release-defaults # # Usage for this tool. @@ -56,11 +60,7 @@ usage() { exit 1 } -# -# Defaults. -# -. ${release_top}/rtems-release-defaults - +. ./rtems-release-version # # Option defaults # @@ -92,6 +92,8 @@ fi user=$1 version=$2 +echo "] RTEMS Release Branch, v${version}" + # # Check if clone_url is empty. # diff --git a/rtems-release-cron b/rtems-release-cron index 0eacdc3..33ba744 100755 --- a/rtems-release-cron +++ b/rtems-release-cron @@ -35,19 +35,30 @@ set -e # Cron wrapper for releasing each month. # +# +# Global release top path. +# +# +# Work in the release sandbox +# +export release_top=$(realpath $(dirname $0)) +cd ${release_top} + +if [ $# -ne 2 ]; then + echo "error: 2 arguments must be supplied, version and revision. See -h for help" + exit 1 +fi + +version=$1 +revision=$2 + +. ./rtems-release-version + live=yes if [ "${RTEMS_RELEASE_TESTING}" = "yes" ]; then live=no fi -# -# RTEMS release -# -rtems_major=5 -rtems_minor=0 -rtems_dot=0 -rtems_snapshot=$(date +"m%y%m") - # # Email addresses # @@ -92,16 +103,7 @@ fi # # The version and the revision # -version=${rtems_major} -revision=${rtems_minor}.${rtems_dot} -snapshot=${revision}-${rtems_snapshot} -release="${version}.${snapshot}" - -# -# Work in the release sandbox -# -release_top=$(dirname $0) -cd ${release_top} +release=${release}-$(date +"m%y%m") # # Activate the virtualenv for building the documentation. @@ -113,8 +115,6 @@ cd ${release_top} # rm -rf ${release} -. ${release_top}/rtems-release-version - git_hash=$(git log --pretty=format:'%h' -n 1) # @@ -136,7 +136,7 @@ if [ ! -f ${LOCK} ]; then trap "rm -f ${CLEANUP_FILES}" EXIT trap "rm -f ${CLEANUP_FILES}; exit 1" INT TERM STOP INFO USR1 USR2 touch ${LOCK} - echo "RTEMS Release Cron builder, v${rtems_release_version} (${git_hash})" > ${BUILD_LOG} + echo "] RTEMS Release Cron builder, v${release} (${git_hash})" > ${BUILD_LOG} echo "" >> ${BUILD_LOG} set +e ./rtems-release ${version} ${snapshot} >> ${BUILD_LOG} 2>&1 diff --git a/rtems-release-defaults b/rtems-release-defaults index 602530f..7c72e9a 100755 --- a/rtems-release-defaults +++ b/rtems-release-defaults @@ -37,6 +37,18 @@ # set -e +# +# Required to be set. +# +version="not-set" +revision="not-set" +release="not-set" + +# +# The master branch release +# +master_version=6 + # # Keep the top where we start. # @@ -94,27 +106,12 @@ sources="sources" docs="docs" # -# The date stamp -# -now=$(date +"%d %B %Y") -export now - -# -# Version configuration. Overrides defaults. -# -if [ -f rtems-release-${version}-conf ]; then - rtems_release_conf=rtems-release-${version}-conf - . rtems-release-${version}-conf -fi - -# -# Conditional add libbsd for an RSB hash if enabled. +# Libbsd FreeBSD release version # -if [ ${rtems_libbsd} = yes ]; then - rtems_rsb_hash="${rtems_rsb_hash} rtems-libbsd" -fi +rtems_libbsd_release=12 # -# Libbsd FreeBSD release version +# The date stamp # -rtems_libbsd_release=12 +now=$(date +"%d %B %Y") +export now diff --git a/rtems-release-docs b/rtems-release-docs index acfcfc5..7c5c451 100755 --- a/rtems-release-docs +++ b/rtems-release-docs @@ -34,14 +34,17 @@ set -e # # This worker script to build the doco. # -. ${release_top}/rtems-release-version -echo "RTEMS Documentation Release builder, v${rtems_release_version}" # # Defaults. # . ${release_top}/rtems-release-defaults +# Common package start. +# +title="RTEMS Documentation Release builder" +. ./rtems-release-package-start + # # Only build if sphinx-build is present on the system. # @@ -55,10 +58,6 @@ if [ "`command -v sphinx-build`"no = no ]; then fi # -# Common package start. -# -. ./rtems-release-package-start - # # The workspace pwd # @@ -73,11 +72,8 @@ git clone ${git_remote} ${git_local} cd ${git_local} echo "git fetch origin" git fetch origin - # Get the remote branch. If the release branch is not found use master. - remote_branch=$(git branch --remote | grep ${version} | tr -d "[:space:]") - if [ -z "${remote_branch}" ]; then - remote_branch="master" - fi + # Map the branch name to a specific package and release branch name + remote_branch=$(rtems_map_branch ${package} ${version}) echo "git archive --format=tar --prefix=${prefix}/ ${remote_branch}" git archive --format=tar --prefix=${prefix}/ ${remote_branch} | \ ${comp} > ../${prefix}-unstamped.tar.${comp_ext} @@ -93,7 +89,7 @@ cd ${prefix} # # This is a hack until I add support for the VERSION file created below. # - echo "Creating VERSION: ${release}" + echo "] Creating VERSION: ${release}" if [ ${version} -lt 5 ]; then cat wscript | \ sed -e "s/^version[[:space:]].*=.*$/version = '${release}'/g" > wscript.tmp @@ -118,7 +114,7 @@ cd ${prefix} echo "tar cf - ${prefix}" tar cf - ${prefix} | ${comp} > ../${prefix}.tar.${comp_ext} -echo "Created: ${release}/${prefix}.tar.${comp_ext}" +echo "] Created: ${release}/${prefix}.tar.${comp_ext}" # # Build the docs. @@ -134,7 +130,7 @@ cd ${prefix} # mkdir ${top}/${release}/${docs} cd install - echo "Creating DOC all rtems-${release}-docs-all.tar.${comp_ext}" + echo "] Creating DOC all rtems-${release}-docs-all.tar.${comp_ext}" tar cf - * | \ ${comp} > ${top}/${release}/${docs}/rtems-${release}-docs-all.tar.${comp_ext} for p in $(find . -name \*.pdf) @@ -144,19 +140,19 @@ cd install # # Move the PDF out of the way. # - echo "Creating PDF rtems-${release}-${manual}.pdf" + echo "] Creating PDF rtems-${release}-${manual}.pdf" mv $p ${top}/${release}/${docs}/rtems-${release}-${manual}.pdf # # Create the single html manual # - echo "Creating SingleHTML rtems-${release}-${manual}.html.${comp_ext}" + echo "] Creating SingleHTML rtems-${release}-${manual}.html.${comp_ext}" mv ${base}/${manual}.html ${base}/rtems-${release}-${manual}.html ${comp} ${base}/rtems-${release}-${manual}.html mv ${base}/rtems-${release}-${manual}.html.${comp_ext} ${top}/${release}/${docs}/. # # Tar the multi-page html and install. # - echo "Creating HTML rtems-${release}-${manual}-html.tar.${comp_ext}" + echo "] Creating HTML rtems-${release}-${manual}-html.tar.${comp_ext}" tar cf - ${base}/${manual} | \ ${comp} > ${top}/${release}/${docs}/rtems-${release}-${manual}-html.tar.${comp_ext} done @@ -200,7 +196,7 @@ cd ${release}/${docs} done cd .. -echo "Created: ${release}/${docs}/${checksum}sum.txt" -echo "Created: ${release}/${docs}" +echo "] Created: ${release}/${docs}/${checksum}sum.txt" +echo "] Created: ${release}/${docs}" exit 0 diff --git a/rtems-release-kernel b/rtems-release-kernel index a4cf7fd..188fc39 100755 --- a/rtems-release-kernel +++ b/rtems-release-kernel @@ -34,8 +34,6 @@ set -e # # This worker script bootstraps the RTEMS kernel. # -. ${release_top}/rtems-release-version -echo "RTEMS Release RTEMS Kernel, v${rtems_release_version}" # # Defaults. @@ -56,11 +54,13 @@ revision=$3 release_url=$4 toptop=$5 -release=${version}.${revision} +. ${release_top}/rtems-release-version + prefix=${package}-${release} -echo "Package: ${package}" -echo "Release: ${release}" +echo "] RTEMS Release RTEMS Kernel, v${release}" +echo "] Package: ${package}" +echo "] Release: ${release}" # # Unpack the released RSB. @@ -98,10 +98,10 @@ release_ver_rel_minor="${release_ver_rel}.0" # Bootstrap RTEMS, collect the BSPs, and update the README. # cd ${prefix} - echo "Set the version in the build system.." + echo "] Set the version in the build system.." for f in $(find . -name version.m4) do - echo " Generating ${f}" + echo "] Generating ${f}" cat < ${f} dnl Autogenerated for RTEMS release: ${release} (${release_ver_rel_minor}) AC_DEFUN([RTEMS_VERSIONING], @@ -110,7 +110,7 @@ dnl RTEMS API Version m4_define([_RTEMS_API],[${version}]) EOF done - echo "Bootstrapping RTEMS" + echo "] Bootstrapping RTEMS" ./bootstrap -c if [ ${version} -lt 5 ]; then ./bootstrap -p @@ -118,11 +118,11 @@ EOF else ./rtems-bootstrap fi - echo "Cleaning autom4te.cache" + echo "] Cleaning autom4te.cache" rm -rf $(find . -name autom4te.cache) - echo "Generate ARCH-BSP.txt" + echo "] Generate ARCH-BSP.txt" ./rtems-bsps -m > ${toptop}/ARCH-BSP.md - echo "Generate README" + echo "] Generate README" cp README README.tmp cat README.tmp | \ sed -e "s|docs\.rtems\.org\/branches\/master\/|docs\.rtems\.org\/releases\/rtems-docs-${release}\/|g" | \ @@ -136,7 +136,7 @@ EOF # rm -rf ${rsb} ${at} -echo "Bootstrap complete." +echo "] Bootstrap complete." # # Only build doxygen output if present on the system. @@ -149,7 +149,7 @@ fi # # Doxygen # -echo "Creating: Doxyfile" +echo "] Creating: Doxyfile" top_srcdir=$(echo ${prefix}/cpukit | sed -e 's/\//\\\//g') perl=$(which perl | sed -e 's/\//\\\//g') if [ -f ${prefix}/cpukit/Doxyfile.in ]; then @@ -173,7 +173,7 @@ else exit 1 fi -echo "Creating: rtems-doxygen-${release}.tar.${comp_ext}" +echo "] Creating: rtems-doxygen-${release}.tar.${comp_ext}" if [ ${version} -lt 5 ]; then mv cpukit_doxy/html rtems-doxygen-${release} else diff --git a/rtems-release-notes b/rtems-release-notes index 79553b5..fbbe222 100755 --- a/rtems-release-notes +++ b/rtems-release-notes @@ -32,10 +32,8 @@ set -e # -# This worker script to build the doco. +# This worker script to build the release notes. # -. ${release_top}/rtems-release-version -echo "RTEMS Release Notes builder, v${rtems_release_version}" # # Defaults. @@ -62,6 +60,7 @@ fi # Common package start. No git repo the data source is Trac. # rtems_git_repo=no +title="RTEMS Release Notes builder" . ./rtems-release-package-start # @@ -72,7 +71,7 @@ ws_pwd=${PWD} # # The release notes are all held in the wiki # -release_pages="https://devel.rtems.org/wiki/Release/" +release_pages="https://devel.rtems.org/wiki/Release" # # Set up the wkhtmltopdf defaults. @@ -81,7 +80,7 @@ page_options="--print-media-type --zoom 0.8" header="--header-right [page]/[toPage] --header-font-size 10" footer="--footer-left [webpage] --footer-font-size 10" -echo "Creating release notes" +echo "] Creating release notes" rel_html="" rel_html_line="
@RELEASE@
" @@ -94,7 +93,7 @@ do done rel_html=$(echo ${rel_html} | sed -e 's/\./\\\./g' -e 's/\//\\\//g') -echo "Create the coverpage" +echo "] Create the coverpage" cp ${top}/rtems-release-notes-coverpage/* . cat rtems-release-notes-coverpage.html.in | \ sed -e "s/@RELEASE@/${release}/g" \ @@ -115,7 +114,7 @@ do even_odd=$(( ${rev} % 2 )) if [ ${version} -lt 5 -o ${even_odd} -ne 0 ]; then rel=${version}.${rev} - echo "Creating the ${rel} PDF" + echo "] Creating the ${rel} PDF" wkhtmltopdf --user-style-sheet file://${ws_pwd}/trac-rtems-style.html \ -L 5mm -R 5mm \ ${release_pages}/${version}/${version}.${rev} \ @@ -130,7 +129,7 @@ done gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=../rtems-${release}-release-notes.pdf cp.pdf ${pdfs} -echo "Created: ${release}/rtems-${release}-release-notes.pdf cp.pdf" +echo "] Created: ${release}/rtems-${release}-release-notes.pdf cp.pdf" # # Comman package end. diff --git a/rtems-release-package b/rtems-release-package index 7fe5090..351711d 100755 --- a/rtems-release-package +++ b/rtems-release-package @@ -34,8 +34,6 @@ set -e # # This script packages a package in a tar file. # -. ${release_top}/rtems-release-version -echo "RTEMS Release Package, v${rtems_release_version}" # # Defaults. @@ -45,6 +43,7 @@ echo "RTEMS Release Package, v${rtems_release_version}" # # Common package start. # +title="RTEMS Release Package" . ./rtems-release-package-start # @@ -68,24 +67,23 @@ stamped_tar=${prefix}-unstamped cd ${git_local} echo "git fetch origin" git fetch origin - # Map the branch name to a specific package branch name - branch=$(rtems_map_branch ${package} ${version}) - # Get the remote branch. If the release branch is not found use master. - remote_branch=$(git branch --remote | grep "${branch}$" | tr -d "[:space:]") - if [ -z "${remote_branch}" ]; then - remote_branch="master" - fi + # Map the branch name to a specific package and release branch name + remote_branch=$(rtems_map_branch ${package} ${version}) + echo "] Package ${package} ${version}: ${remote_branch}" git_submodules=$(git submodule | cut -w -f 2) if [ -n "${git_submodules}" ]; then - echo "git submodules found ...." + echo "] git submodules found ...." + echo "git submodules init" git submodule init + echo "git checkout ${remote_branch}" + git checkout ${remote_branch} for s in ${git_submodules} do ok=$(echo ${git_submodules_excludes} | sed -e "s/.*${s}.*/no/g") if [ "${ok}" != "no" ]; then echo "git submodule update ${s}" git submodule update ${s} - treeish=$(git ls-tree ${remote_branch} ${s} | cut -w -f 3) + treeish=$(git ls-tree HEAD ${s} | cut -w -f 3) cd ${s} echo "git archive --format=tar --prefix=${prefix}/${s}/ ${treeish}" git archive --format=tar --prefix=${prefix}/${s}/ ${treeish} > \ @@ -95,6 +93,8 @@ cd ${git_local} echo "git submodule ${s} excluded" fi done + echo "git checkout master" + git checkout master fi echo "git archive --format=tar --prefix=${prefix}/ ${remote_branch}" git archive --format=tar --prefix=${prefix}/ ${remote_branch} > \ @@ -119,7 +119,7 @@ if [ -n "${git_submodules}" ]; then fi cd ${prefix} - echo "Creating VERSION: ${release}" + echo "] Creating VERSION: ${release}" echo "[version]" > VERSION echo "revision = ${release}" >> VERSION cd .. # ${prefix} @@ -130,6 +130,8 @@ cd ${prefix} # package the release. # if [ -n "${worker}" ]; then + wk_name=$(basename ${worker}) + echo "] Worker: ${wk_name}" ${worker} ${package} ${version} ${revision} ${release_url} ${top} fi @@ -139,7 +141,7 @@ fi echo "tar cf - ${prefix}" tar cf - ${prefix} | ${comp} > ../${prefix}.tar.${comp_ext} -echo "Created: ${release}/${prefix}.tar.${comp_ext}" +echo "] Created: ${release}/${prefix}.tar.${comp_ext}" # # Comman package end. diff --git a/rtems-release-package-start b/rtems-release-package-start index 776db22..8442420 100755 --- a/rtems-release-package-start +++ b/rtems-release-package-start @@ -58,10 +58,8 @@ else worker= fi -if [ ${version} -lt 5 ]; then - revision_no=$(echo ${revision} | sed -e 's/\-.*$//') -else - revision_no=$(echo ${revision} | sed -e 's/\..*$//') +revision_no=$(echo ${revision} | sed -e 's/\-.*$//') +if [ ${version} -ge 5 ]; then even_odd=$(( ${revision_no} % 2 )) if [ ${even_odd} -eq 0 ]; then revision_no=$(expr ${revision_no} + 1) @@ -82,10 +80,13 @@ fi workspace=ws-${package} -echo "Package: ${package}" -echo "Release: ${release}" +. ${release_top}/rtems-release-version + +echo "] ${title}, v${release}" +echo "] Package: ${package}" +echo "] Release: ${release}" if [ ${rtems_git_repo} = yes ]; then - echo "Repo : ${git_remote}" + echo "] Repo : ${git_remote}" fi if [ ! -e ${release} ]; then @@ -106,18 +107,24 @@ mkdir ${workspace} cd ${workspace} # -# Function to map branch names based on package. +# Function to map package and version to branch names. # rtems_map_branch() { # $1=package - # $2=branch + # $2=version case "$1" in rtems-libbsd) - echo "$2-freebsd-${rtems_libbsd_release}" + branch="$2-freebsd-${rtems_libbsd_release}" ;; *) - echo "$1" + branch="$2" ;; esac + # Get the remote branch. If the release branch is not found use release's master. + remote_branch=$(git branch --remote | grep "${branch}$" | tr -d "[:space:]") + if [ -z "${remote_branch}" ]; then + remote_branch="master" + fi + echo ${remote_branch} } diff --git a/rtems-release-rsb-version b/rtems-release-rsb-version index 961037a..54db769 100755 --- a/rtems-release-rsb-version +++ b/rtems-release-rsb-version @@ -31,12 +31,6 @@ set -e -# -# This script adds the hashes to the release packages to the RSB. -# -. ${release_top}/rtems-release-version -echo "RTEMS Release RSB Versioning, v${rtems_release_version}" - # # Defaults. # @@ -56,11 +50,20 @@ revision=$3 release_url=$4 toptop=$5 -release=${version}.${revision} +. ${release_top}/rtems-release-version + prefix=${package}-${release} -echo "Package: ${package}" -echo "Release: ${release}" +echo "] RTEMS Release RSB Versioning, v${release}" +echo "] Package: ${package}" +echo "] Release: ${release}" + +# +# Conditional add libbsd for an RSB hash if enabled. +# +if [ ${rtems_libbsd} = yes ]; then + rtems_rsb_hash="${rtems_rsb_hash} rtems-libbsd" +fi # # Get the release sources path and add it to the VERSION. @@ -83,6 +86,6 @@ do echo "${file} = ${checksum} ${hash}" >> ${prefix}/VERSION done -echo "RSB Versioning complete." +echo "] RSB Versioning complete." exit 0 diff --git a/rtems-release-sources b/rtems-release-sources index c47a6ee..7b457a4 100755 --- a/rtems-release-sources +++ b/rtems-release-sources @@ -34,8 +34,6 @@ set -e # # The script collects the sources for all the tools. # -. ${release_top}/rtems-release-version -echo "RTEMS Release Sources, v${rtems_release_version}" # # Defaults. @@ -55,21 +53,23 @@ release_url=$3 package=rtems-source-builder -release=${version}.${revision} +. ./rtems-release-version + prefix=${package}-${release} checksum=sha512 workspace=ws-${package} +echo "] RTEMS Release Sources, v${release}" +echo "] Package: ${package}" +echo "] Release: ${release}" + # # Source the source packages to package (haha) # . rtems-source-packages -echo "Package: ${package}" -echo "Release: ${release}" - if [ ! -e ${release} ]; then mkdir ${release} else @@ -195,7 +195,7 @@ cd ${release} cd ${g} hash=$(git status | grep '^HEAD detached at ' | sed 's/^HEAD detached at //') prefix=$(echo ${g}-${hash} | sed 's/\./\-/') - echo "Packaging GIT repo: ${g} to ${prefix}" + echo "] Packaging GIT repo: ${g} to ${prefix}" git archive --format=tar --prefix=${prefix}/ ${hash} | \ ${comp} > ../../${prefix}.tar.${comp_ext} cd .. # ${g} @@ -227,7 +227,7 @@ cd ${release} ls -1 ${sources} for p in $(ls -1 | grep ${sources}/rtems-*.tar.${comp_ext}) do - echo "Removing ${p}" + echo "] Removing ${p}" rm -f ${p} done for p in ${rtems_packages} @@ -249,7 +249,7 @@ cd ${release} cd .. # ${sources} cd .. # ${release} -echo "Created: ${release}/${sources}/${checksum}sum.txt" -echo "Created: ${release}/${sources}" +echo "] Created: ${release}/${sources}/${checksum}sum.txt" +echo "] Created: ${release}/${sources}" exit 0 diff --git a/rtems-release-tag b/rtems-release-tag index d77db9b..28103ff 100755 --- a/rtems-release-tag +++ b/rtems-release-tag @@ -35,13 +35,17 @@ set -e # This is the top level RTEMS release script. Supply the version and and the # release. # -. ./rtems-release-version -echo "RTEMS Release, v${rtems_release_version}" + +# +# Defaults. +# +. ${release_top}/rtems-release-defaults # # Global release top path. # -export release_top=${PWD} +export release_top=$(realpath $(dirname $0)) +cd ${release_top} # # The user, version and revision. @@ -59,11 +63,6 @@ usage() { exit 1 } -# -# Defaults. -# -. ${release_top}/rtems-release-defaults - # # Option defaults # @@ -97,7 +96,9 @@ user=$1 version=$2 revision=$3 -release=${version}.${revision} +. ./rtems-release-version + +echo "] RTEMS Release Tag, v${release}" # # Check if clone_url is empty. diff --git a/rtems-release-version b/rtems-release-version index a2b7136..b964ff5 100644 --- a/rtems-release-version +++ b/rtems-release-version @@ -28,4 +28,22 @@ # POSSIBILITY OF SUCH DAMAGE. # -rtems_release_version="5.0" +if [ ${version} = "not-set" ]; then + echo "error: version not set" + exit 1 +fi + +if [ ${revision} = "not-set" ]; then + echo "error: revision not set" + exit 1 +fi + +release=${version}.${revision} + +# +# Version configuration. Overrides defaults. +# +if [ -f rtems-release-${version}-conf ]; then + rtems_release_conf=rtems-release-${version}-conf + . rtems-release-${version}-conf +fi -- cgit v1.2.3