From 382aedeba3ecd2924c790166e2b65d4e249f83f5 Mon Sep 17 00:00:00 2001 From: Hugues Hiegel Date: Fri, 6 Feb 2009 14:59:12 +0100 Subject: scripts moved back to parent dir --- stlinux_reset_tags.sh | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100755 stlinux_reset_tags.sh (limited to 'stlinux_reset_tags.sh') diff --git a/stlinux_reset_tags.sh b/stlinux_reset_tags.sh new file mode 100755 index 0000000..e30535a --- /dev/null +++ b/stlinux_reset_tags.sh @@ -0,0 +1,39 @@ +#!/bin/zsh + +FILE=$1 +TAGPREFIX=$2 + +usage() +{ + cat << EOF +usage: $0:t []" + Where FILE.spec is a .spec file with list of patches and of kernel releases + To generate this FILE.spec, you should take a look to stlinux_generate_spec_file.sh + + TAGPREFIX should be used to prefix the tags +EOF +} + +if [ $# -lt 1 -o $# -gt 2 -o ! -f $FILE ] +then + usage + exit 42 # Yes, 42. +fi + +local tag commit release + +for tag in $(grep -i "^# Kernel [0-9]\+ released here$" $FILE | sed 's/^# Kernel \([0-9]*\) released here$/\1/') +do + release=$( + grep -i "^# Kernel $tag released here$" $FILE -B1 |\ + head -n1 |\ + sed 's/^Patch\([0-9]*\): /\\[Patch \\#\1\\].* /' + ) + commit=$( + git-log --grep="$release" --pretty=oneline |\ + cut -c1-40 + ) + echo "#$tag -- $(git-log --grep="$release" | grep "$release")" + git-tag $TAGPREFIX$tag $commit +done + -- cgit v1.2.3