]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/blame - Makepkgs
build: makefile and package tweaks for in-tree deb builds.
[thirdparty/xfsprogs-dev.git] / Makepkgs
CommitLineData
fc49813f 1#! /bin/sh
dfc130f3 2#
c939ff20
NS
3# Make whichever packages have been requested.
4# Defaults to RPMs.
fc49813f
NS
5#
6LOGDIR=Logs
7
42e5b5df
NS
8#
9# If we're on a Debian or Debian-derived system generate deb packages by
10# default, else rpm packages.
11#
12if [ -f /etc/debian_version ] ; then
13 type=debian
14else
15 type=rpm
16fi
fc49813f
NS
17verbose=false
18
19MAKE=${MAKE:-make}
20test ! -z "$MAKE" && make=$MAKE
21
22for opt in $*
23do
c939ff20
NS
24 case "$opt" in
25 clean)
26 ;; # ignored, kept for backward compatibility
27 rpm)
28 type=rpm ;;
29 debian)
30 type=debian ;;
31 verbose)
32 verbose=true ;;
33 *)
34 echo "Usage: Makepkgs [verbose] [debian|rpm]"; exit 1 ;;
35 esac
fc49813f
NS
36done
37
38# start with a clean manifest
39test -f files.rpm && rm -f files.rpm
40test -f filesdevel.rpm && rm -f filesdevel.rpm
6c6508ec 41test -f fileslib.rpm && rm -f fileslib.rpm
fc49813f
NS
42
43test ! -d $LOGDIR && mkdir $LOGDIR
44rm -rf $LOGDIR/* > /dev/null 2>&1
45
c939ff20 46if [ $type = debian ] ; then
42e5b5df
NS
47 SOURCE=`pwd`
48 PACKAGE=`basename $SOURCE`
49 LOGDEB=$SOURCE/$LOGDIR/$PACKAGE.log
50 if $verbose ; then
51 $MAKE include/builddefs 2>&1 | tee $LOGDIR/configure
52 else
53 $MAKE include/builddefs > $LOGDIR/configure 2>&1 || exit 1
54 fi
55
56 . ./VERSION
57 VERSION=${PKG_MAJOR}.${PKG_MINOR}.${PKG_REVISION}
58 export SRCLINK_ROOT="$SOURCE/build/deb/$PACKAGE-$VERSION"
59 rm -fr "$SRCLINK_ROOT"
60 mkdir -p "$SRCLINK_ROOT" || exit 1
61
62 $MAKE source-link || exit 1
63
64 cd "$SRCLINK_ROOT"
65 SUDO=${SUDO:-fakeroot}
66 test ! -z "$SUDO" && sudo=$SUDO
fc49813f 67 if $verbose ; then
c939ff20 68 dpkg-buildpackage -r$SUDO | tee $LOGDEB
fc49813f 69 else
36fda47f 70 dpkg-buildpackage -r$SUDO > $LOGDEB || exit 1
fc49813f 71 fi
c939ff20 72 exit 0
fc49813f
NS
73fi
74
c939ff20
NS
75echo "== clean, log is $LOGDIR/clean"
76if $verbose ; then
7aa6e535 77 $MAKE clean 2>&1 | tee $LOGDIR/clean
c939ff20 78else
36fda47f 79 $MAKE clean > $LOGDIR/clean 2>&1 || exit 1
fc49813f
NS
80fi
81
82echo
83echo "== configure, log is $LOGDIR/configure"
7aa6e535 84rm -f .census # force configure to run here
fc49813f 85if $verbose ; then
6c6508ec 86 $MAKE configure 2>&1 | tee $LOGDIR/configure
fc49813f 87else
36fda47f 88 $MAKE configure > $LOGDIR/configure 2>&1 || exit 1
fc49813f
NS
89fi
90
91echo
92echo "== default, log is $LOGDIR/default"
93if $verbose ; then
c939ff20 94 $MAKE default 2>&1 | tee $LOGDIR/default
fc49813f 95else
36fda47f 96 $MAKE default > $LOGDIR/default 2>&1 || exit 1
fc49813f
NS
97fi
98
99echo
100echo "== dist, log is $LOGDIR/dist"
101[ ! -f .census ] && touch .census
102if $verbose ; then
c939ff20 103 $MAKE -C build dist 2>&1 | tee $LOGDIR/dist
fc49813f 104else
36fda47f 105 $MAKE -C build dist > $LOGDIR/dist 2>&1 || exit 1
c939ff20 106 grep '^Wrote:' $LOGDIR/dist | sed -e 's/\.\.\/\.\.\///'
fc49813f
NS
107fi
108
109exit 0