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/stlinux_generate_spec_file.sh | 23 ------- STLinux/stlinux_import_patches.sh | 119 ---------------------------------- STLinux/stlinux_reset_tags.sh | 39 ----------- 3 files changed, 181 deletions(-) delete mode 100755 STLinux/stlinux_generate_spec_file.sh delete mode 100755 STLinux/stlinux_import_patches.sh delete mode 100755 STLinux/stlinux_reset_tags.sh (limited to 'STLinux') diff --git a/STLinux/stlinux_generate_spec_file.sh b/STLinux/stlinux_generate_spec_file.sh deleted file mode 100755 index d39ec7c..0000000 --- a/STLinux/stlinux_generate_spec_file.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/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_import_patches.sh b/STLinux/stlinux_import_patches.sh deleted file mode 100755 index 38afb14..0000000 --- a/STLinux/stlinux_import_patches.sh +++ /dev/null @@ -1,119 +0,0 @@ -#!/bin/zsh - -usage() -{ - cat << EOF -usage: $0:t [Patch # start] [Patch # end] -EOF -} - -if ! git-rev-parse --git-dir >/dev/null -then - echo "This is not a GIT repository !" - usage - exit 27 # I like 27. -fi -if [ $# -lt 2 ] -then - usage - exit 42 # 42 ? Because ! -fi - -STLINUX_FOLDER=$1 -TAG_PREFIX=$2 -START_FROM=${3:-0} -END_TO=${4:-} - -PATCHES_LIST=$STLINUX_FOLDER/.patches - -grep -if =(grep "^%patch" $STLINUX_FOLDER/*.spec | sed 's/%\(patch.*\) .*/^\1:/') $STLINUX_FOLDER/*.spec | awk '{ print $2 }' > $PATCHES_LIST - -#cat $PATCHES_LIST - -function read_patch_file() -{ - case $1:e in - "patch") - < $1 - ;; - "bz2") - bunzip2 -c $1 - ;; - "*") - echo >&2 "Error ! $1:e is not a recognized patch extension !" - exit; - ;; - esac -} - -export RELEASE="" -for file in $(cat $PATCHES_LIST ) -do - - i=$(grep "^Patch.*:[[:blank:]]\+$file$" $STLINUX_FOLDER/*.spec | sed 's/^Patch\(.*\): .*$/\1/') - - if [ $i -ge $START_FROM -a \( -z "$END_TO" -o $i -le "$END_TO" \) ] - then - - if [ ! -e $STLINUX_FOLDER/$file -a -e $STLINUX_FOLDER/$file:r ] - then - file=$file:r - fi - - ( - # - # On extrait le numéro de release ST dans le nom du fichier .patch - # - _RELEASE="$(echo $file | sed 's/linux-.*[-_]stm\(.\)\(.\)[-_]\([0-9]*\)[_-\.].*/\3/')" - - # Ça a marché ? Alors on vérifie qu'on n'est pas passé à la release suivante... - if [ "$_RELEASE" != "$file" ] - then - # On épure le numéro de révision - _RELEASE=$(( $_RELEASE )) - if [ "$(( $_RELEASE ))" -gt "$(( $RELEASE ))" ] - then - # Ha ! On est passé à une release "supérieure", alors on pose le tag - git-tag "$TAG_PREFIX${_RELEASE}" - # Et on stocke le résultat pour le récupérer dans le bloc parent - echo $_RELEASE > .git/release - fi - - # On crée le tag pour le message de commit - RELEASE="[$_RELEASE] " - else - RELEASE="" - fi - - # Voici la première ligne du message de commit. C'est la plus jolie. - echo "[Patch #$i] ${RELEASE}Applied $file" - - # - # On récupère le commentaire dans le patch en guise de message de commit - # avec gestion des .patch ou des .patch.bz2 - # - read_patch_file $STLINUX_FOLDER/$file | awk '{ RS="--- "; } { if ( NR <= 2 ) { print $0 } }' | \ - grep -v -e "^diff \-" -e "^Index: " -e "^=*$" -e "^Signed-off-by: " -e "^index "; - - ) | sed 's/ //' > .git/message ; - - # On récupère la release trouvée dans le bloc précédent - RELEASE=$([ -s .git/release ] && ( cat .git/release ; rm -f .git/release) ) - # - # On affiche le résultat de l'application du patch dans le message de commit - # - echo "---" >> .git/message - read_patch_file $STLINUX_FOLDER/$file | patch -Np1 >> .git/message - # Suppression des fichiers supprimés par le patch - git-rm $(git-ls-files --deleted) 2>/dev/null - # Ajout de tout le reste :-) - git-add . - # Et on committe !! - git-commit -F .git/message - else - - echo >&2 "Skipping patch #$i : $file" - - fi -done -git-tag "$TAG_PREFIX$((RELEASE + 1))" diff --git a/STLinux/stlinux_reset_tags.sh b/STLinux/stlinux_reset_tags.sh deleted file mode 100755 index e30535a..0000000 --- a/STLinux/stlinux_reset_tags.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/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