Patch from Mario del Pozo to add install/uninstall rules. Slightly
[selector.git] / mkdeb.sh
1 #!/bin/bash
2
3 #
4 #  selector is a simple shell command for selection of strings with a
5 #  dynamic pattern-matching.
6 #
7 #  Copyright (c) 2009 Francois Fleuret
8 #  Written by Francois Fleuret <francois.fleuret@idiap.ch>
9 #
10 #  This file is part of selector.
11 #
12 #  selector is free software: you can redistribute it and/or modify
13 #  it under the terms of the GNU General Public License version 3 as
14 #  published by the Free Software Foundation.
15 #
16 #  selector is distributed in the hope that it will be useful, but
17 #  WITHOUT ANY WARRANTY; without even the implied warranty of
18 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19 #  General Public License for more details.
20 #
21 #  You should have received a copy of the GNU General Public License
22 #  along with selector.  If not, see <http://www.gnu.org/licenses/>.
23 #
24
25 # This script creates the Debian package. The way it does it is
26 # probably not very conventional. I am open to suggestions.
27
28 # Depends: ${shlibs:Depends}
29
30 VERSION=1.0-R`git log|grep ^commit|wc -l`
31 PACKAGE=/tmp/selector_${VERSION}_i386.deb
32
33 make -k
34
35 TMP=`mktemp -d /tmp/deb.XXXXXX`
36
37 for d in DEBIAN usr/bin usr/share/man/man1; do
38     mkdir -p ${TMP}/${d}
39 done
40
41 # LIBS=`ldd selector | grep "=> /" | awk '{print $3}'`
42 # DEPS=`for l in ${LIBS}; do dpkg -S $l; done | cut -f 1 -d: | sort | uniq`
43
44 cat > ${TMP}/DEBIAN/control <<EOF
45 Package: selector
46 Version: ${VERSION}
47 Maintainer: Francois Fleuret <francois@fleuret.org>
48 Architecture: i386
49 Depends: libncurses5, libstdc++6, libc6, libgcc1
50 Description: A command line for dynamic string-matching.
51  This is a command line for dynamic string selection. As you type a
52  list of strings separated by ';' or a regexp, the display is updated
53  in real time to show only the lines with matching content. The main
54  usage of selector is as an efficient search in the shell command
55  history. With the correct option, it will inject the selected line
56  into the virtual tty input buffer, hence allowing the user to edit
57  the line and execute it as a standard command.
58 EOF
59
60 cp ./selector ${TMP}/usr/bin
61 cp ./selector.1 ${TMP}/usr/share/man/man1
62 gzip ${TMP}/usr/share/man/man1/selector.1
63
64 dpkg-deb --build ${TMP} ${PACKAGE}
65
66 dpkg --contents ${PACKAGE}
67
68 rm -rf ${TMP}