~pali/+junk/mesa-lts-saucy-packaging

« back to all changes in this revision

Viewing changes to debian/git-cleanup.sh

  • Committer: Pali Rohár
  • Date: 2014-04-11 10:59:06 UTC
  • Revision ID: pali.rohar@gmail.com-20140411105906-qk25ix27pd6rdho8
Import debian packaging for mesa-lts-saucy version 9.2.1-1ubuntu3~precise1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/bin/sh
 
2
# © 2011 Cyril Brulebois <kibi@debian.org>
 
3
set -e
 
4
 
 
5
### First phase, files known to make dpkg-source unhappy.
 
6
 
 
7
# List broken symlinks:
 
8
symlinks=$(find -type l)
 
9
 
 
10
# Symlinks vs. directories:
 
11
dirs_vs_symlinks=''
 
12
 
 
13
# Modified binaries:
 
14
binaries='
 
15
src/gallium/state_trackers/d3d1x/progs/bin/d3d10tri.exe
 
16
src/gallium/state_trackers/d3d1x/progs/bin/d3d11gears.exe
 
17
src/gallium/state_trackers/d3d1x/progs/bin/d3d11spikysphere.exe
 
18
src/gallium/state_trackers/d3d1x/progs/bin/d3d11tex.exe
 
19
src/gallium/state_trackers/d3d1x/progs/bin/d3d11tri.exe
 
20
src/gallium/state_trackers/python/tests/regress/fragment-shader/frag-abs.png
 
21
docs/gears.png
 
22
'
 
23
 
 
24
case $1 in
 
25
  "")   clean=0; echo "I: No parameter given, listing only (-f to remove).";;
 
26
  "-f") clean=1; echo "I: Removing files.";;
 
27
  *)    clean=0; echo "I: Unknown parameter given, listing only (-f to remove).";;
 
28
esac
 
29
 
 
30
# Readibility:
 
31
echo
 
32
 
 
33
for x in $symlinks $dirs_vs_symlinks $binaries; do
 
34
  # Do not fail if the file went away already, only warn:
 
35
  if [ -e $x -o -L $x ]; then
 
36
    if [ $clean = 1 ]; then
 
37
      git rm $x
 
38
    else
 
39
      echo "I: Would remove $x"
 
40
    fi
 
41
  else
 
42
   echo "W: Unable to remove non-existing: $x"
 
43
  fi
 
44
done
 
45
 
 
46
### Second phase, kill all files in git not in the tarball
 
47
version=$(dpkg-parsechangelog|awk '/Version: / {print $2}'|sed 's/-.*$//')
 
48
tarball="../mesa_$version.orig.tar.gz"
 
49
if [ ! -f $tarball ]; then
 
50
  echo "E: Missing tarball ($tarball), you could use: uscan --download-current --rename"
 
51
  exit 1
 
52
fi
 
53
 
 
54
# Be lazy for now, temporary files would be better:
 
55
one=1
 
56
two=2
 
57
 
 
58
# Strip one directory, Mesa-$version/ is the top-level:
 
59
tar tfz $tarball | sed 's,[^/]*/,,' | sort > $two
 
60
# List all files known to git, except those under debian/:
 
61
git ls-files | grep -v ^debian/ | sort > $one
 
62
 
 
63
for x in $(diff -u $one $two|tail -n +3|grep ^-|sed 's/^-//'); do
 
64
  if [ -e $x -o -L $x ]; then
 
65
    if [ $clean = 1 ]; then
 
66
      git rm $x
 
67
    else
 
68
      echo "I: Would remove $x"
 
69
    fi
 
70
  else
 
71
    echo "W: Unable to remove non-existing: $x (maybe gone during 1st phase)"
 
72
  fi
 
73
done
 
74
 
 
75
rm $one $two