]> mj.ucw.cz Git - libucw.git/blob - debian/pkg-lib
Build: Added support for chrooted building from Centrum Gigamail repository.
[libucw.git] / debian / pkg-lib
1 # A library of shell functions for building of Debian packages
2 # (c) 2008--2009 Martin Mares <mj@ucw.cz>
3 # (c) 2009--2017 Pavel Charvat <pchar@ucw.cz>
4
5 # Expects:
6 # PKG           name of the package
7 # ROOT          absolute path to the root of the source tree
8 # PKGVER        custom package version
9
10 unset PKG ROOT SRCVER VER PKG_NO_CHECKOUT
11
12 function pkg-git-version {
13         if [ -z "$PKG_NO_CHECKOUT" ] ; then
14                 TREEVER=`git describe --tags | sed 's/^v//;s/[a-f]$/&-0/'`
15                 TREEHASH=`git rev-parse --verify HEAD`
16         else
17                 TREEVER=?
18                 TREEHASH=?
19         fi
20         VER=${PKGVER:-$TREEVER}
21         SRCVER=${PKGVER:-$VER}
22         cat <<EOF
23 ###
24 ### Source tree version: $TREEVER
25 ### Source tree hash: $TREEHASH
26 ### Debian binary package version: $VER
27 ### Debian source package version: $SRCVER
28 ###
29 ### Hey, did you commit everything? Or added it to the index?
30 ###
31
32 EOF
33 }
34
35 function pkg-git-checkout {
36         BUILDDIR=debian-tmp/$PKG-$SRCVER
37         if [ -z "$PKG_NO_CHECKOUT" ] ; then
38                 rm -rf debian-tmp
39                 mkdir -p $BUILDDIR
40                 git checkout-index -a --prefix=$BUILDDIR/
41         fi
42 }
43
44 function pkg-fake-changelog {
45         echo "Creating automatic changelogs for package $PKG version $VER"
46         (
47                 export EDITOR=true
48                 CL=debian/changelog
49                 rm -f $CL
50                 dch --changelog $CL --create --package $PKG --newversion $VER "Automatic release. See /usr/share/doc/$PKG/changelog for the true story."
51                 dch --changelog $CL --release
52                 sed -i '/Initial release/d' $CL
53         )
54 }
55
56 function pkg-cleanup {
57         echo -n "Press return to delete temp files... "
58         read YES
59         rm -rf $ROOT/debian-tmp
60 }
61
62 function pkg-get-files {
63         echo
64         echo "Generated files:"
65         FILES=
66         unset FILES_ARY[@]
67         for F in "$@" ; do
68                 if [ -f "$F" ] ; then
69                         FILES="$FILES${FILES:+,}$F"
70                         FILES_ARY[${#FILES_ARY[@]}]="$F"
71                         echo "$F"
72                 fi
73         done
74         if [ -z "$FILES" ] ; then
75                 echo "No files found"
76                 return 1
77         fi
78 }