]> git.pld-linux.org Git - packages/mysql.git/blame - percona.sh
move status action to status function
[packages/mysql.git] / percona.sh
CommitLineData
b9c8dcd3 1#!/bin/sh
2# updates percona patches
3# http://www.percona.com/docs/wiki/release:start
db97ae77 4# https://launchpad.net/percona-server/release-5.0.91-22
b9c8dcd3 5
db97ae77 6version=release-5.0.91-22
b9c8dcd3 7bzr_branch=lp:percona-server/$version
8branch=MYSQL_5_1
9
10filter_names() {
b9c8dcd3 11 grep -v 'percona-support.patch' | \
12 grep -v 'mysqld_safe_syslog.patch' | \
113b1023 13 grep -v 'mysql-test.patch'
b9c8dcd3 14}
15
16filter_files() {
17 filterdiff -x '*/configure'
18}
19
5267b24c
ER
20set -e
21
b9c8dcd3 22if [ -d $version ]; then
23 cd $version
eacd9823 24 bzr pull
b9c8dcd3 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
5267b24c
ER
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
b9c8dcd3 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
5267b24c
ER
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
b9c8dcd3 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.044886 seconds and 4 git commands to generate.