~tsarev/percona-server/quilt-5.5-2

« back to all changes in this revision

Viewing changes to normalize_patches

  • Committer: Oleg Tsarev
  • Date: 2011-07-27 11:13:05 UTC
  • Revision ID: oleg.tsarev@percona.com-20110727111305-cb1vgegkotimc8gn
1. Makefile: 
  * add symlink to quiltrc to $(PERCONA_SERVER) dir
  * split "main" target to "prepare" and "main" (prepare just unpack source code and setup for patch appling, main also apply patches)
  * add target "regenerate" (old normalize_patches.sh) (requires for future porting to new mysql version)
  * fix "clean" target
2. apply_patches:
  * fix usages: "--quiltrc=quiltrc"
  * now uses sh instead of bash
3. install_tests:
  * rename to install_tests from install_tests.sh
  * fix path to series
4. normalize_patches:
  * rename to normalize_patches from normalize_patches.sh
  * now use quilt for regenerate patches
5. quiltrc:
  * add QUILT_[REFRESH|DIFF|PATCH]_[ARGS|OPTS] options
6. regenerate_patch.sh:
  * removed (unecessary now)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/usr/bin/env bash
2
 
 
3
 
MYSQL_VERSION="$(grep ^MYSQL_VERSION= "Makefile" \
4
 
    | cut -d = -f 2)"
5
 
PERCONA_SERVER_VERSION="$(grep ^PERCONA_SERVER_VERSION= "Makefile" \
6
 
    | cut -d = -f 2)"
7
 
PERCONA_SERVER="Percona-Server-${MYSQL_VERSION}-${PERCONA_SERVER_VERSION}"
8
 
MYSQL_DIR=mysql-${MYSQL_VERSION}
9
 
MYSQL_TAR_GZ=${MYSQL_DIR}.tar.gz
10
 
 
11
 
echo "===== Prepare source code for patch's adaptation...";
12
 
echo "===== Remove 'a' copy...";
13
 
rm -rf a;
14
 
echo "===== Remove 'b' copy..."
15
 
rm -rf b;
16
 
echo "===== Remove '${PERCONA_SERVER}' copy..."
17
 
rm -rf ${PERCONA_SERVER};
18
 
echo "===== Unpack ${MYSQL_DIR} to ${PERCONA_SERVER}..."
19
 
tar zxf ${MYSQL_TAR_GZ};
20
 
mv ${MYSQL_DIR} ${PERCONA_SERVER};
21
 
echo "===== Prepare 'a' copy..."
22
 
cp -R ${PERCONA_SERVER} a;
23
 
echo "===== Prepare 'b' copy..."
24
 
cp -R ${PERCONA_SERVER} b;
25
 
echo "===== Ok, let's go patch adaptation..."
26
 
for patch_name in `cat series`; do
27
 
    echo "========================================================="
28
 
    echo "===== Check patch $patch_name";
29
 
    echo "===== Apply patch $patch_name...";
30
 
    patch -p1 -d b < $patch_name >result;
31
 
    fail=`cat result | grep FAIL | wc -l`;
32
 
    hunk=`cat result | grep Hunk | wc -l`;
33
 
    echo "===== Patch $patch_name FAILED: $fail";
34
 
    echo "===== Patch $patch_name HUNK:   $hunk";
35
 
    if [ $fail -ne 0 ]; then
36
 
        echo "===== Patch $patch_name are failed";
37
 
        exit 1;
38
 
    fi;
39
 
    if [ $hunk -ne 0 ]; then
40
 
        ./regenerate_patch.sh a b $patch_name
41
 
    fi;
42
 
    patch -p1 -d ${PERCONA_SERVER} < $patch_name > /dev/null;
43
 
    patch -p1 -d a < $patch_name > /dev/null;
44
 
    echo "===== Patch $patch_name regenerated succesfully"
45
 
    if [ $hunk -ne 0 ]; then
46
 
        echo "===== Remove temporary 'b' version"
47
 
        rm -rf b;
48
 
        echo "===== Prepare 'b' copy..."
49
 
        cp -R ${PERCONA_SERVER} b;
50
 
    fi;
 
1
#!/bin/sh
 
2
 
 
3
for patch_name in `cat patches/series`; do
 
4
  quilt push ${patch_name} --quiltrc=quiltrc;
 
5
  quilt refresh --quiltrc=quiltrc;
51
6
done;