-VERSION=5.0
-PACKAGE=libpve-storage-perl
-PKGREL=28
-
-DESTDIR=
-PREFIX=/usr
-BINDIR=${PREFIX}/bin
-SBINDIR=${PREFIX}/sbin
-MANDIR=${PREFIX}/share/man
-DOCDIR=${PREFIX}/share/doc/${PACKAGE}
-MAN1DIR=${MANDIR}/man1/
-BASHCOMPLDIR=${PREFIX}/share/bash-completion/completions/
-
-export PERLDIR=${PREFIX}/share/perl5
+include /usr/share/dpkg/pkg-info.mk
-export SOURCE_DATE_EPOCH ?= $(shell dpkg-parsechangelog -STimestamp)
+PACKAGE=libpve-storage-perl
+BUILDDIR ?= $(PACKAGE)-$(DEB_VERSION)
+DSC=$(PACKAGE)_$(DEB_VERSION).dsc
-ARCH=all
GITVERSION:=$(shell git rev-parse HEAD)
-DEB=${PACKAGE}_${VERSION}-${PKGREL}_${ARCH}.deb
-
-# this require package pve-doc-generator
-export NOVIEW=1
-include /usr/share/pve-doc-generator/pve-doc-generator.mk
+DEB=$(PACKAGE)_$(DEB_VERSION_UPSTREAM_REVISION)_all.deb
all:
.PHONY: dinstall
dinstall: deb
- dpkg -i ${DEB}
+ dpkg -i $(DEB)
-pvesm.bash-completion:
- perl -I. -T -e "use PVE::CLI::pvesm; PVE::CLI::pvesm->generate_bash_completions();" >$@.tmp
+$(BUILDDIR):
+ rm -rf $@ $@.tmp
+ cp -a src $@.tmp
+ cp -a debian $@.tmp/
+ echo "git clone git://git.proxmox.com/git/pve-storage.git\\ngit checkout $(GITVERSION)" >$@.tmp/debian/SOURCE
mv $@.tmp $@
-.PHONY: install
-install: PVE pvesm.1 pvesm.bash-completion
- install -d ${DESTDIR}${SBINDIR}
- install -m 0755 pvesm ${DESTDIR}${SBINDIR}
- make -C PVE install
- install -d ${DESTDIR}/usr/share/man/man1
- install -m 0644 pvesm.1 ${DESTDIR}/usr/share/man/man1/
- gzip -9 -n ${DESTDIR}/usr/share/man/man1/pvesm.1
- install -m 0644 -D pvesm.bash-completion ${DESTDIR}${BASHCOMPLDIR}/pvesm
-
.PHONY: deb
-deb: ${DEB}
-${DEB}:
- rm -rf build
- rsync -a * build
- echo "git clone git://git.proxmox.com/git/pve-storage.git\\ngit checkout ${GITVERSION}" >build/debian/SOURCE
- cd build; dpkg-buildpackage -b -us -uc
- lintian ${DEB}
+deb: $(DEB)
+$(DEB): $(BUILDDIR)
+ cd $(BUILDDIR); dpkg-buildpackage -b -us -uc
+ lintian $(DEB)
-.PHONY: test
-test:
- perl -I. -T -e "use PVE::CLI::pvesm; PVE::CLI::pvesm->verify_api();"
- make -C test
-
-.PHONY: clean
+.PHONY: clean distclean
+distclean: clean
clean:
- make cleanup-docgen
- rm -rf build *.deb *.buildinfo *.changes
- find . -name '*~' -exec rm {} ';'
+ rm -rf $(PACKAGE)-[0-9]*/ *.deb *.dsc *.build *.buildinfo *.changes $(PACKAGE)*.tar.*
-.PHONY: distclean
-distclean: clean
+.PHONY: upload
+upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION)
+upload: $(DEB)
+ tar cf - $(DEB) | ssh -X repoman@repo.proxmox.com -- upload --product pve --dist $(UPLOAD_DIST)
+dsc: $(DSC)
+ $(MAKE) clean
+ $(MAKE) $(DSC)
+ lintian $(DSC)
-.PHONY: upload
-upload: ${DEB}
- tar cf - ${DEB} | ssh repoman@repo.proxmox.com -- upload --product pve --dist stretch
+$(DSC): $(BUILDDIR)
+ cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d
+sbuild: $(DSC)
+ sbuild $(DSC)