diff options
Diffstat (limited to 'include/release.sh')
| -rw-r--r-- | include/release.sh | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/include/release.sh b/include/release.sh index e9017a05..e3e02686 100644 --- a/include/release.sh +++ b/include/release.sh @@ -14,45 +14,58 @@ release() reldir="release" - while getopts m: option - do + while getopts m: option; do + if [ -z "$OPTARG" ]; then + err "empty argument not allowed" "release" "$@" fi case "$option" in + m) relmode="$OPTARG" ;; + *) err "invalid option '-$option'" "release" "$@" ;; + esac done reldest="$reldir/$version" + if [ -e "$reldest" ]; then + err "already exists: \"$reldest\"" "release" "$@" fi vdir="`mktemp -d || err "can't make vdir"`" || \ err "can't make tmp vdir" "release" "$@" + vdir="$vdir/$version" rsrc="$vdir/${relname}_src" remkdir "$vdir" + x_ git clone . "$rsrc" + update_xbmkver "$rsrc" prep_release src prep_release tarball + if [ "$relmode" != "src" ]; then + prep_release bin fi + x_ rm -Rf "$rsrc" x_ xbmkdir "$reldir" + x_ mv "$vdir" "$reldir" x_ rm -Rf "${vdir%"/$version"}" @@ -63,8 +76,11 @@ prep_release() { ( if [ "$1" != "tarball" ]; then + x_ cd "$rsrc" + if [ ! -e "cache" ]; then + x_ ln -s "$XBMK_CACHE" "cache" fi fi @@ -83,15 +99,18 @@ prep_release_src() fx_ "x_ rm -Rf" x_ find . -name ".git" fx_ "x_ rm -Rf" x_ find . -name ".gitmodules" + # delete unwanted files from the release ( fx_ nuke x_ find config -type f -name "nuke.list" ) || \ err "can't prune project files" "prep_release_src" "$@"; : } +# delete unwanted files from the release nuke() { r="$rsrc/src/${1#config/}" if [ -d "${r%/*}" ]; then + x_ cd "${r%/*}" dx_ "x_ rm -Rf" "$rsrc/$1" @@ -105,7 +124,9 @@ prep_release_tarball() err "can't create '$rsrc/CHANGELOG'" "prep_release_tarball" "$@" x_ rm -f "$rsrc/lock" "$rsrc/cache" + x_ rm -Rf "$rsrc/xbmkwd" "$rsrc/util/sbase" + x_ mv "$rsrc/util/sbase2" "$rsrc/util/sbase" ( @@ -118,10 +139,12 @@ prep_release_tarball() prep_release_bin() { x_ ./mk -d coreboot - x_ ./mk -b coreboot + x_ ./mk -b pico-serprog + x_ ./mk -b stm32-vserprog + x_ ./mk -b pcsx-redux fx_ mkrom_tarball x_ find bin -maxdepth 1 -type d -name "serprog_*" |
