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