From ea5435268132b2fe066b18bd41f200bb0c8fbfa4 Mon Sep 17 00:00:00 2001 From: Hugues Hiegel Date: Fri, 6 Feb 2009 14:28:14 +0100 Subject: [STLinux] generate spec file + reset git tags --- STLinux/stlinux_generate_spec_file.sh | 23 ++++++++++++++++++++++ STLinux/stlinux_reset_tags.sh | 36 +++++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100755 STLinux/stlinux_generate_spec_file.sh create mode 100755 STLinux/stlinux_reset_tags.sh diff --git a/STLinux/stlinux_generate_spec_file.sh b/STLinux/stlinux_generate_spec_file.sh new file mode 100755 index 0000000..d39ec7c --- /dev/null +++ b/STLinux/stlinux_generate_spec_file.sh @@ -0,0 +1,23 @@ +#!/bin/zsh + +LOG=$1 + +usage() +{ + cat << EOF +usage: $0:t .. +EOF +} + +if [ $# -ne 1 -o -z $LOG ] +then + usage + exit 27 # 27 ? Yes, 27. +fi + +git-log --decorate $LOG |\ +grep "\[Patch\|refs/tags" |\ +sed 's/^commit ........................................ .*refs\/tags\/\([0-9]\+\)[,)].*/# Kernel \1 released here/;s/.*Patch #\([0-9]\+\)\].* Applied /Patch\1: /' |\ +grep -v "^commit " |\ +tac + diff --git a/STLinux/stlinux_reset_tags.sh b/STLinux/stlinux_reset_tags.sh new file mode 100755 index 0000000..0952d6d --- /dev/null +++ b/STLinux/stlinux_reset_tags.sh @@ -0,0 +1,36 @@ +#!/bin/zsh + +FILE=$1 + +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 +EOF +} + +if [ $# -ne 1 -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 $tag $commit +done + -- cgit v1.2.3