summaryrefslogtreecommitdiffstats
path: root/freed-ebian/deblobian
blob: 476e2ca491f51a610c91f2796690bd4a05fe80b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#!/bin/bash
#
# Copyright (C) 2008,2009  Robert Millan
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

# Upstream extraversion is shipped in the patchset; this script makes
# sure deblob is run against the _patched_ tree.

set -ex

basedir=`dirname $0`
v=`dpkg-parsechangelog | sed -ne "s/Version: \([^-]*\)-.*/\1/p"`
debian_rev=`dpkg-parsechangelog | sed -ne "s/Version: .*-\([^-]*\)/\1/p"`

which patch sponge

eval `grep ^revisions debian/bin/patch.apply | sed -e "s/\.split.*//g;s/ = /=/g"`

for i in ${revisions} ; do
  # deblob will take care of those
  if [ "$i" = orig-0 ] ; then continue ; fi

  echo "*** PROCESSING debian/patches/series/$i"
  grep -v "^\($\|#\)" debian/patches/series/$i | while read action file opts ; do
    if [ "$opts" != "" ] ; then
      echo "skipping patch $file with opts $opts"
      continue
    fi

    args=""

    if [ "$action" = "+" ] ; then
      echo "appliing patch $file"
    elif [ "$action" = "-" ] ; then
      echo "unappliing patch $file"
      args="$args -R"
    else
      echo "FUCK"
      exit 1
    fi

    patch $args -p1 < debian/patches/$file
    grep -v "$file" debian/patches/series/$i | sponge debian/patches/series/$i
  done
done

for i in ${basedir}/patches/*.diff ; do
  patch -p0 < $i
done

cp ${basedir}/../scripts/deblob-{main,check,${v}} ./

chmod +x deblob-${v}
./deblob-${v} --force

dch -v ${v}-libre2-${debian_rev} "deblob, etc."

set +x

echo "$0 finished succesfully"
OpenPOWER on IntegriCloud