]> git.proxmox.com Git - pve-access-control.git/blobdiff - Makefile
fix #5335: sort ACL entries in user.cfg
[pve-access-control.git] / Makefile
index cd8f0295775eebf9c4a7c232dcbbe76f76e7a4d2..ed09ea812bf5f56218a6a761c674caa88b3eedea 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,86 +1,48 @@
-RELEASE=4.1
+include /usr/share/dpkg/default.mk
 
-VERSION=4.0
 PACKAGE=libpve-access-control
-PKGREL=18
 
-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/
+DEB=$(PACKAGE)_$(DEB_VERSION_UPSTREAM_REVISION)_all.deb
+DSC=$(PACKAGE)_$(DEB_VERSION_UPSTREAM_REVISION).dsc
 
-export PERLDIR=${PREFIX}/share/perl5
+BUILDDIR ?= $(PACKAGE)-$(DEB_VERSION_UPSTREAM)
 
-ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
-GITVERSION:=$(shell cat .git/refs/heads/master)
+GITVERSION:=$(shell git rev-parse HEAD)
 
-DEB=${PACKAGE}_${VERSION}-${PKGREL}_${ARCH}.deb
-
-# this requires package pve-doc-generator
-export NOVIEW=1
-include /usr/share/pve-doc-generator/pve-doc-generator.mk
-
-all: ${DEB}
+all:
 
 .PHONY: dinstall
 dinstall: deb
-       dpkg -i ${DEB}
+       dpkg -i $(DEB)
 
-pveum.bash-completion: PVE/CLI/pveum.pm
-       perl -I. -T -e "use PVE::CLI::pveum; PVE::CLI::pveum->generate_bash_completions();" >$@.tmp
-       mv $@.tmp $@
+$(BUILDDIR):
+       rm -rf $(BUILDDIR)
+       cp -a src $(BUILDDIR)
+       cp -a debian $(BUILDDIR)/
+       echo "git clone git://git.proxmox.com/git/pve-access-control.git\\ngit checkout $(GITVERSION)" > $(BUILDDIR)/debian/SOURCE
 
-.PHONY: install
-install: pveum.1 oathkeygen pveum.bash-completion
-       install -d ${DESTDIR}${BINDIR}
-       install -d ${DESTDIR}${SBINDIR}
-       install -m 0755 pveum ${DESTDIR}${SBINDIR}
-       install -m 0755 oathkeygen ${DESTDIR}${BINDIR}
-       make -C PVE install
-       perl -I. ./pveum verifyapi
-       perl -I. -T -e "use PVE::CLI::pveum; PVE::CLI::pveum->verify_api();"
-       install -d ${DESTDIR}/${MAN1DIR}
-       install -d ${DESTDIR}/${DOCDIR}
-       install -m 0644 pveum.1 ${DESTDIR}/${MAN1DIR}
-       gzip -9 ${DESTDIR}/${MAN1DIR}/pveum.1
-       install -m 0644 -D pveum.bash-completion ${DESTDIR}${BASHCOMPLDIR}/pveum
+.PHONY: deb
+deb: $(DEB)
+$(DEB): $(BUILDDIR)
+       cd $(BUILDDIR); dpkg-buildpackage -b -us -uc
+       lintian $(DEB)
 
-.PHONY: deb ${DEB}
-deb ${DEB}:
-       rm -rf build
-       mkdir build
-       make DESTDIR=`pwd`/build install
-       install -d -m 0755 build/DEBIAN
-       sed -e s/@@VERSION@@/${VERSION}/ -e s/@@PKGRELEASE@@/${PKGREL}/ -e s/@@ARCH@@/${ARCH}/ <control.in >build/DEBIAN/control
-       echo "git clone git://git.proxmox.com/git/pve-access-control.git\\ngit checkout ${GITVERSION}" >  build/${DOCDIR}/SOURCE
-       install -m 0644 triggers build/DEBIAN
-       install -D -m 0644 copyright build/${DOCDIR}/copyright
-       install -m 0644 changelog.Debian build/${DOCDIR}/
-       gzip -9 build/${DOCDIR}/changelog.Debian
-       dpkg-deb --build build  
-       mv build.deb ${DEB}
-       #rm -rf build
-       lintian ${DEB}
+.PHONY: dsc
+dsc: $(DSC)
+$(DSC): $(BUILDDIR)
+       cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d
+       lintian $(DSC)
 
-.PHONY: upload
-upload: ${DEB}
-       umount /pve/${RELEASE}; mount /pve/${RELEASE} -o rw 
-       mkdir -p /pve/${RELEASE}/extra
-       rm -f /pve/${RELEASE}/extra/${PACKAGE}_*.deb
-       rm -f /pve/${RELEASE}/extra/Packages*
-       cp ${DEB} /pve/${RELEASE}/extra
-       cd /pve/${RELEASE}/extra; dpkg-scanpackages . /dev/null > Packages; gzip -9c Packages > Packages.gz
-       umount /pve/${RELEASE}; mount /pve/${RELEASE} -o ro
+sbuild: $(DSC)
+       sbuild $(DSC)
 
-.PHONY: clean
-clean:
-       make cleanup-docgen
-       rm -rf build *~ *.deb ${PACKAGE}-*.tar.gz pveum.1
-       find . -name '*~' -exec rm {} ';'
+.PHONY: upload
+upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION)
+upload: $(DEB)
+       tar cf - $(DEB) | ssh repoman@repo.proxmox.com -- upload --product pve --dist $(UPLOAD_DIST)
 
-.PHONY: distclean
+.PHONY: clean distclean
 distclean: clean
+clean:
+       rm -rf $(PACKAGE)-[0-9]*/
+       rm -f *.dsc *.deb *.buildinfo *.build *.changes $(PACKAGE)*.tar.*