diff options
author | robak <robak@FreeBSD.org> | 2014-06-27 01:15:39 +0800 |
---|---|---|
committer | robak <robak@FreeBSD.org> | 2014-06-27 01:15:39 +0800 |
commit | 920d8fb9c053a5b670b41e333786aea89de07b66 (patch) | |
tree | 735d23199899a02f6e4405f1c881764742b817ee /Tools | |
parent | 0089cb9ae21c96de50da4bb68a48bb0ae2c38288 (diff) | |
download | freebsd-ports-gnome-920d8fb9c053a5b670b41e333786aea89de07b66.tar.gz freebsd-ports-gnome-920d8fb9c053a5b670b41e333786aea89de07b66.tar.zst freebsd-ports-gnome-920d8fb9c053a5b670b41e333786aea89de07b66.zip |
New script: Tools/scripts/bump-revision.sh
This script, requested by bapt@, is a pure sh tool to increase one
or more ports PORTREVISION value or to add one, if the port havent
had one already.
Approved by: swills (mentor), bapt
Diffstat (limited to 'Tools')
-rwxr-xr-x | Tools/scripts/bump-revision.sh | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/Tools/scripts/bump-revision.sh b/Tools/scripts/bump-revision.sh new file mode 100755 index 000000000000..3b22b8863e56 --- /dev/null +++ b/Tools/scripts/bump-revision.sh @@ -0,0 +1,66 @@ +#!/bin/sh + +# +# bump-revision.sh category/portname category/portname ... +# Bump PORTREVISION if it exists or create it with number 1 if it does not +# +# ---------------------------------------------------------------------------- +# "THE BEER-WARE LICENSE" (Revision 42, (c) Poul-Henning Kamp): +# Bartek Rutkowski <robak@FreeBSD.org> wrote this file. As long as you retain +# this notice you can do whatever you want with this stuff. If we meet some +# day, and you think this stuff is worth it, you can buy me a beer in return. +# +# Bartek Rutkowski +# ---------------------------------------------------------------------------- +# +# $FreeBSD$ +# +# MAINTAINER= robak@FreeBSD.org + +# +# functions +# + +printc () { +# $1 - msg is obligatory, $2 - color (red/green)of the message, default if not passed + if [ -t 1 ]; then + if [ $# -eq 2 ]; then + if [ $2 == "red" ]; then + echo -e "\033[1;31m$1\033[m" + elif [ $2 == "green" ]; then + echo -e "\033[1;32m$1\033[m" + else + echo "$1" + fi + fi + else + echo $1 + fi +} + +# +# main loop +# + +tempfile=$(mktemp) +trap "rm -f $tempfile" 0 1 2 3 15 + +while [ $# -gt 0 ] +do + if [ -f "$1/Makefile" ]; then + echo -n > $tempfile + revision=`grep "^PORTREVISION?\?=" "$1/Makefile"` + if [ $? == 0 ]; then + printc "$1: $revision found, bumping it by 1." "green" + awk -F "\t" '/^PORTREVISION\??=/{ gsub ($2,$2+1) };{ print }' "$1/Makefile" > $tempfile + cat $tempfile > "$1/Makefile" + else + printc "$1: PORTREVISION not found, adding PORTREVISION=1" "red" + awk '/^PORTVERSION\??=\t/{print;print "PORTREVISION=\t1";next}1' "$1/Makefile" > $tempfile + cat $tempfile > "$1/Makefile" + fi + else + printc "$1: might not be a port directory as $1/Makefile is missing!" "red" + fi + shift +done |