]> git.pld-linux.org Git - packages/mysql.git/blame_incremental - percona.sh
move status action to status function
[packages/mysql.git] / percona.sh
... / ...
CommitLineData
1#!/bin/sh
2# updates percona patches
3# http://www.percona.com/docs/wiki/release:start
4# https://launchpad.net/percona-server/release-5.0.91-22
5
6version=release-5.0.91-22
7bzr_branch=lp:percona-server/$version
8branch=MYSQL_5_1
9
10filter_names() {
11 grep -v 'percona-support.patch' | \
12 grep -v 'mysqld_safe_syslog.patch' | \
13 grep -v 'mysql-test.patch'
14}
15
16filter_files() {
17 filterdiff -x '*/configure'
18}
19
20set -e
21
22if [ -d $version ]; then
23 cd $version
24 bzr pull
25 cd ..
26else
27 bzr branch $bzr_branch $version
28fi
29
30> .percona.spec
31> .patch.spec
32i=100
33for patch in $(cat $version/series | filter_names); do
34 # if patch already existed, use mysql- prefix
35 if [ -f mysql-$patch ]; then
36 file=mysql-$patch
37 else
38 file=$patch
39 fi
40 cat $version/$patch | filter_files > $file
41
42 if [ -z "$(awk -vfile=$file -F/ '$2 == file{print}' CVS/Entries)" ]; then
43 cvs add $file
44 ${branch:+cvs up -r $branch $file}
45 fi
46
47 if [ "$patch" != "$file" ]; then
48 echo >&2 "Adding: $file ($patch)"
49 else
50 echo >&2 "Adding: $file"
51 fi
52 printf "Patch%d:\t%s\n" $i $(echo "$file" | sed -e 's,^mysql-,%{name}-,') >> .percona.spec
53 printf "%%patch%d -p1\n" $i >> .patch.spec
54 i=$((i+1))
55done
56
57# update PatchX section
58sed -i -e '
59/^# <percona patches/,/^# <\/percona>/ {
60 /^ <\/percona>/b
61 /^# <percona patches/ {
62 p # print header
63 r .percona.spec
64 a# </percona>
65 }
66 d
67}
68' mysql.spec
69
70# update %patchX section
71sed -i -e '
72/^# <percona %patches/,/^# <\/percona>/ {
73 /^ <\/percona>/b
74 /^# <percona %patches/ {
75 p # print header
76 r .patch.spec
77 a# </percona>
78 }
79 d
80}
81' mysql.spec
This page took 0.036195 seconds and 4 git commands to generate.