PACKAGE=libpve-apiclient-perl
-PKGVER=1.0
-PKGREL=2
+PKGVER=$(shell dpkg-parsechangelog -Sversion | cut -d- -f1)
+PKGREL=$(shell dpkg-parsechangelog -Sversion | cut -d- -f2)
+BUILDSRC := $(PACKAGE)-$(PKGVER)
DEB=${PACKAGE}_${PKGVER}-${PKGREL}_all.deb
+DSC=${PACKAGE}_${PKGVER}-${PKGREL}.dsc
DESTDIR=
PERL5DIR=${DESTDIR}/usr/share/perl5
DOCDIR=${DESTDIR}/usr/share/doc/${PACKAGE}
+PVE_COMMON_FILES= \
+ Exception.pm
+
+GITVERSION:=$(shell git rev-parse HEAD)
+
all: ${DEB}
+.PHONY: $(BUILDSRC)
+$(BUILDSRC):
+ rm -rf $(BUILDSRC)
+ rsync -a debian $(BUILDSRC)
+ make DESTDIR=./$(BUILDSRC) install
+ echo "git clone git://git.proxmox.com/git/pve-apiclient.git\\ngit checkout ${GITVERSION}" > $(BUILDSRC)/debian/SOURCE
+
.PHONY: deb
-deb ${DEB}:
- rm -rf build
- rsync -a debian build
- make DESTDIR=./build install
- cd build; dpkg-buildpackage -rfakeroot -b -us -uc
+deb ${DEB}: $(BUILDSRC)
+ cd $(BUILDSRC); dpkg-buildpackage -rfakeroot -b -us -uc
lintian ${DEB}
+.PHONY: dsc
+dsc: $(BUILDSRC)
+ cd $(BUILDSRC); dpkg-buildpackage -S -us -uc -d -nc
+ lintian ${DSC}
+
install:
install -D -m 0644 PVE/APIClient/LWP.pm ${PERL5DIR}/PVE/APIClient/LWP.pm
+ install -m 0644 PVE/APIClient/Exception.pm ${PERL5DIR}/PVE/APIClient/Exception.pm
install -d -m 755 ${DOCDIR}/examples
install -m 0755 examples/example1.pl ${DOCDIR}/examples
install -m 0755 examples/example2.pl ${DOCDIR}/examples
install -m 0755 examples/perftest1.pl ${DOCDIR}/examples
+update-pve-common:
+ for i in ${PVE_COMMON_FILES}; do cp ../pve-common/src/PVE/$$i PVE/APIClient/; done
+ for i in ${PVE_COMMON_FILES}; do sed -i 's/PVE::/PVE::APIClient::/g' PVE/APIClient/$$i; done
+
.PHONY: upload
upload: ${DEB}
- tar cf - ${DEB} | ssh repoman@repo.proxmox.com upload
+ tar cf - ${DEB} | ssh -X repoman@repo.proxmox.com upload --product pmg,pve --dist buster
distclean: clean
clean:
- rm -rf ./build *.deb *.changes
+ rm -rf ./$(BUILDSRC) *.deb *.changes *.buildinfo *.dsc *.tar.gz
find . -name '*~' -exec rm {} ';'
.PHONY: dinstall