diff options
Diffstat (limited to 'mkdeb.sh.in')
-rwxr-xr-x | mkdeb.sh.in | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/mkdeb.sh.in b/mkdeb.sh.in new file mode 100755 index 000000000..efb477920 --- /dev/null +++ b/mkdeb.sh.in | |||
@@ -0,0 +1,70 @@ | |||
1 | #!/bin/sh | ||
2 | # This file is part of Firejail project | ||
3 | # Copyright (C) 2014-2020 Firejail Authors | ||
4 | # License GPL v2 | ||
5 | |||
6 | # based on http://tldp.org/HOWTO/html_single/Debian-Binary-Package-Building-HOWTO/ | ||
7 | # a code archive should already be available | ||
8 | |||
9 | set -e | ||
10 | NAME=@PACKAGE_NAME@ | ||
11 | VERSION=@PACKAGE_VERSION@ | ||
12 | PACKAGE_TARNAME=@PACKAGE_TARNAME@ | ||
13 | HAVE_APPARMOR=@HAVE_APPARMOR@ | ||
14 | HAVE_SELINUX=@HAVE_SELINUX@ | ||
15 | EXTRA_VERSION=$1 | ||
16 | |||
17 | CONFIG_ARGS="--prefix=/usr" | ||
18 | if [ -n "$HAVE_APPARMOR" ]; then | ||
19 | CONFIG_ARGS="$CONFIG_ARGS --enable-apparmor" | ||
20 | fi | ||
21 | if [ -n "$HAVE_SELINUX" ]; then | ||
22 | CONFIG_ARGS="$CONFIG_ARGS --enable-selinux" | ||
23 | fi | ||
24 | |||
25 | TOP=`pwd` | ||
26 | CODE_ARCHIVE="$NAME-$VERSION.tar.xz" | ||
27 | CODE_DIR="$NAME-$VERSION" | ||
28 | INSTALL_DIR="${INSTALL_DIR}${CODE_DIR}/debian" | ||
29 | DEBIAN_CTRL_DIR="${DEBIAN_CTRL_DIR}${CODE_DIR}/debian/DEBIAN" | ||
30 | |||
31 | echo "*****************************************" | ||
32 | echo "code archive: $CODE_ARCHIVE" | ||
33 | echo "code directory: $CODE_DIR" | ||
34 | echo "install directory: $INSTALL_DIR" | ||
35 | echo "debian control directory: $DEBIAN_CTRL_DIR" | ||
36 | echo "*****************************************" | ||
37 | |||
38 | tar -xJvf $CODE_ARCHIVE | ||
39 | #mkdir -p $INSTALL_DIR | ||
40 | cd $CODE_DIR | ||
41 | ./configure $CONFIG_ARGS | ||
42 | make -j2 | ||
43 | mkdir debian | ||
44 | DESTDIR=debian make install-strip | ||
45 | |||
46 | cd .. | ||
47 | echo "*****************************************" | ||
48 | SIZE=`du -s $INSTALL_DIR` | ||
49 | echo "install size $SIZE" | ||
50 | echo "*****************************************" | ||
51 | |||
52 | mv $INSTALL_DIR/usr/share/doc/firejail/RELNOTES $INSTALL_DIR/usr/share/doc/firejail/changelog.Debian | ||
53 | gzip -9 -n $INSTALL_DIR/usr/share/doc/firejail/changelog.Debian | ||
54 | rm $INSTALL_DIR/usr/share/doc/firejail/COPYING | ||
55 | install -m644 platform/debian/copyright $INSTALL_DIR/usr/share/doc/firejail/. | ||
56 | mkdir -p $DEBIAN_CTRL_DIR | ||
57 | sed "s/FIREJAILVER/$VERSION/g" platform/debian/control.$(dpkg-architecture -qDEB_HOST_ARCH) > $DEBIAN_CTRL_DIR/control | ||
58 | |||
59 | mkdir -p $INSTALL_DIR/usr/share/lintian/overrides/ | ||
60 | install -m644 platform/debian/firejail.lintian-overrides $INSTALL_DIR/usr/share/lintian/overrides/firejail | ||
61 | |||
62 | find $INSTALL_DIR/etc -type f | sed "s,^$INSTALL_DIR,," | LC_ALL=C sort > $DEBIAN_CTRL_DIR/conffiles | ||
63 | chmod 644 $DEBIAN_CTRL_DIR/conffiles | ||
64 | find $INSTALL_DIR -type d | xargs chmod 755 | ||
65 | cd $CODE_DIR | ||
66 | fakeroot dpkg-deb --build debian | ||
67 | lintian debian.deb | ||
68 | mv debian.deb ../firejail_${VERSION}${EXTRA_VERSION}_1_$(dpkg-architecture -qDEB_HOST_ARCH).deb | ||
69 | cd .. | ||
70 | rm -fr $CODE_DIR | ||