1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
|
#! /usr/bin/make -f
# Copyright © 2010-2018 Richard Kettlewell.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
INSTALL=install
VERSION=5.1
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk
export SOURCE_DATE_EPOCH = $(shell date -d "$$(dpkg-parsechangelog --count 1 -SDate)" +%s)
# Debian apparently wants reproducible builds but won't execute them
# in a consistent environment, so every project has to clean up after
# it.
export LC_ALL=C.UTF-8
build-arch: build
build-indep: build
build:
[ -e configure ] || ./autogen.sh
./configure --prefix=/usr --mandir=/usr/share/man ${CONFIGURE_EXTRA}
$(MAKE)
clean-rsbackup:
rm -rf debian/rsbackup
binary-rsbackup: build
rm -rf debian/rsbackup
mkdir -p debian/rsbackup/DEBIAN
mkdir -p debian/rsbackup/etc/rsbackup/hosts.d
mkdir -p debian/rsbackup/etc/cron.hourly
mkdir -p debian/rsbackup/etc/cron.daily
mkdir -p debian/rsbackup/etc/cron.weekly
mkdir -p debian/rsbackup/etc/cron.monthly
mkdir -p debian/rsbackup/usr/share/doc/rsbackup
mkdir -p debian/rsbackup/var/log/backup
mkdir -p debian/rsbackup/usr/share/doc-base
mkdir -p debian/rsbackup/usr/bin
mkdir -p debian/rsbackup/usr/share/man/man1
mkdir -p debian/rsbackup/usr/share/man/man5
cp debian/rsbackup.conffiles debian/rsbackup/DEBIAN/conffiles
install debian/rsbackup.postinst debian/rsbackup/DEBIAN/postinst
install debian/rsbackup.postrm debian/rsbackup/DEBIAN/postrm
install -m 755 tools/rsbackup.hourly debian/rsbackup/etc/cron.hourly/rsbackup
install -m 755 tools/rsbackup.daily debian/rsbackup/etc/cron.daily/rsbackup
install -m 755 tools/rsbackup.weekly debian/rsbackup/etc/cron.weekly/rsbackup
install -m 755 tools/rsbackup.monthly debian/rsbackup/etc/cron.monthly/rsbackup
cp tools/rsbackup.config debian/rsbackup/etc/rsbackup/config
cp tools/rsbackup.defaults debian/rsbackup/etc/rsbackup/defaults
cp tools/rsbackup.devices debian/rsbackup/etc/rsbackup/devices
cp debian/changelog debian/rsbackup/usr/share/doc/rsbackup/changelog.Debian
cp debian/doc.rsbackup debian/rsbackup/usr/share/doc-base/rsbackup
cp README.md debian/rsbackup/usr/share/doc/rsbackup/.
LC_ALL=C.UTF-8 lynx -dump -nolist doc/CHANGES.html > debian/rsbackup/usr/share/doc/rsbackup/changelog
gzip -9nv debian/rsbackup/usr/share/doc/rsbackup/*
cp doc/*.html doc/*.css debian/rsbackup/usr/share/doc/rsbackup/.
cp debian/copyright debian/rsbackup/usr/share/doc/rsbackup/.
$(INSTALL) -m 755 src/rsbackup debian/rsbackup/usr/bin/rsbackup
$(MAKE) -C tools install DESTDIR=$(shell pwd)/debian/rsbackup
$(INSTALL) -m 644 doc/rsbackup.1 \
doc/rsbackup.cron.1 \
doc/rsbackup-mount.1 \
doc/rsbackup-snapshot-hook.1 \
debian/rsbackup/usr/share/man/man1/
$(INSTALL) -m 644 doc/rsbackup.5 debian/rsbackup/usr/share/man/man5/
strip --remove-section=.comment debian/rsbackup/usr/bin/rsbackup
gzip -9nv debian/rsbackup/usr/share/man/man*/*
dpkg-shlibdeps -Tdebian/substvars.rsbackup \
debian/rsbackup/usr/bin/*
cd debian/rsbackup && \
find -name DEBIAN -prune -o -type f -print \
| sed 's/^\.\///' \
| sort | xargs md5sum > DEBIAN/md5sums
dpkg-gencontrol -isp -prsbackup -Pdebian/rsbackup \
-Tdebian/substvars.rsbackup
chown -R root:root debian/rsbackup
chmod -R g-ws debian/rsbackup
find debian/rsbackup -newermt "@$$SOURCE_DATE_EPOCH" -print0 | \
xargs -0r touch --no-dereference --date="@$$SOURCE_DATE_EPOCH"
dpkg --build debian/rsbackup ..
clean-rsbackup-graph:
rm -rf debian/rsbackup-graph
binary-rsbackup-graph: build
rm -rf debian/rsbackup-graph
mkdir -p debian/rsbackup-graph/DEBIAN
mkdir -p debian/rsbackup-graph/usr/bin
mkdir -p debian/rsbackup-graph/usr/share/man/man1
mkdir -p debian/rsbackup-graph/usr/share/doc
ln -s rsbackup \
debian/rsbackup-graph/usr/share/doc/rsbackup-graph
$(INSTALL) -m 755 src/rsbackup-graph \
debian/rsbackup-graph/usr/bin/rsbackup-graph
$(INSTALL) -m 644 doc/rsbackup-graph.1 \
debian/rsbackup-graph/usr/share/man/man1/
strip --remove-section=.comment \
debian/rsbackup-graph/usr/bin/rsbackup-graph
gzip -9nv debian/rsbackup-graph/usr/share/man/man*/*
dpkg-shlibdeps -Tdebian/substvars.rsbackup-graph \
debian/rsbackup-graph/usr/bin/*
cd debian/rsbackup-graph && \
find -name DEBIAN -prune -o -type f -print \
| sed 's/^\.\///' \
| xargs md5sum > DEBIAN/md5sums
dpkg-gencontrol -isp -prsbackup-graph -Pdebian/rsbackup-graph \
-Tdebian/substvars.rsbackup-graph
chown -R root:root debian/rsbackup-graph
chmod -R g-ws debian/rsbackup-graph
find debian/rsbackup-graph -newermt "@$$SOURCE_DATE_EPOCH" -print0 | \
xargs -0r touch --no-dereference --date="@$$SOURCE_DATE_EPOCH"
dpkg --build debian/rsbackup-graph ..
binary: binary-arch binary-indep
binary-arch: binary-rsbackup binary-rsbackup-graph
binary-indep:
clean: clean-rsbackup clean-rsbackup-graph
rm -f debian/files
rm -f debian/debhelper.log
[ ! -f Makefile ] || $(MAKE) distclean
distcheck:
$(MAKE) dist
gzip -cd rsbackup-${VERSION}.tar.gz | tar xf -
debian/rules -C rsbackup-${VERSION} build
fakeroot debian/rules -C rsbackup-${VERSION} binary
rm -rf rsbackup-${VERSION}
ls -l rsbackup_${VERSION}_all.deb rsbackup-${VERSION}.tar.gz
|