X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=Makefile;h=b9dc8b93a7f5c7918ee4ecae8327f375102f8d02;hb=HEAD;hp=46aea79822a0045949edbe87824733d2b814e16a;hpb=1748088d28a276edaf6d2eb36d98b298cc635ab8;p=proxmox-widget-toolkit.git diff --git a/Makefile b/Makefile index 46aea79..47c1cf1 100644 --- a/Makefile +++ b/Makefile @@ -1,81 +1,56 @@ -PACKAGE=proxmox-widget-toolkit -PKGVER=1.0 -PKGREL=2 - -DEB=${PACKAGE}_${PKGVER}-${PKGREL}_all.deb +include /usr/share/dpkg/pkg-info.mk -DESTDIR= +PACKAGE=proxmox-widget-toolkit -DOCDIR=${DESTDIR}/usr/share/doc/${PACKAGE} +DEB=$(PACKAGE)_$(DEB_VERSION)_all.deb +DEV_DEB=$(PACKAGE)-dev_$(DEB_VERSION)_all.deb -WWWBASEDIR=${DESTDIR}/usr/share/javascript/${PACKAGE} +DEBS=$(DEB) $(DEV_DEB) +DSC=$(PACKAGE)_$(DEB_VERSION).dsc -JSSRC= \ - Utils.js \ - Toolkit.js \ - mixin/CBind.js \ - data/reader/JsonObject.js \ - data/ProxmoxProxy.js \ - data/UpdateQueue.js \ - data/UpdateStore.js \ - data/DiffStore.js \ - data/ObjectStore.js \ - data/RRDStore.js \ - data/TimezoneStore.js \ - form/IntegerField.js \ - form/TextField.js \ - form/Checkbox.js \ - form/KVComboBox.js \ - form/ComboGrid.js \ - form/RRDTypeSelector.js \ - button/Button.js \ - grid/ObjectGrid.js \ - grid/PendingObjectGrid.js \ - panel/InputPanel.js \ - panel/LogView.js \ - window/Edit.js \ - window/PasswordEdit.js \ - window/TaskViewer.js \ - node/NetworkEdit.js \ - node/NetworkView.js \ - node/DNSEdit.js \ - node/DNSView.js \ - node/Tasks.js \ - node/ServiceView.js \ - node/TimeEdit.js \ - node/TimeView.js +BUILDDIR ?= $(PACKAGE)-$(DEB_VERSION_UPSTREAM) -all: +$(BUILDDIR): GITVERSION:=$(shell git rev-parse HEAD) +$(BUILDDIR): + rm -rf $(BUILDDIR) $(BUILDDIR).tmp + cp -a src/ $(BUILDDIR).tmp + cp -a debian $(BUILDDIR).tmp/ + echo "git clone git://git.proxmox.com/git/proxmox-widget-toolkit.git\\ngit checkout $(GITVERSION)" > $(BUILDDIR).tmp/debian/SOURCE + mv $(BUILDDIR).tmp/ $(BUILDDIR) .PHONY: deb -deb ${DEB}: - rm -rf build - rsync -a * build - cd build; dpkg-buildpackage -b -us -uc - lintian ${DEB} +deb: $(DEBS) +$(DEBS): $(BUILDDIR) + cd $(BUILDDIR); dpkg-buildpackage -b -us -uc + lintian $(DEBS) -.PHONY: lint -lint: ${JSSRC} - jslint ${JSSRC} +.PHONY: dsc +dsc: $(DSC) + $(MAKE) clean + $(MAKE) $(DSC) + lintian $(DSC) -proxmoxlib.js: ${JSSRC} - cat ${JSSRC} >$@.tmp - mv $@.tmp $@ +$(DSC): $(BUILDDIR) + cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d -install: proxmoxlib.js - install -d -m 755 ${WWWBASEDIR} - install -m 0644 proxmoxlib.js ${WWWBASEDIR} +sbuild: $(DSC) + sbuild $(DSC) + +.PHONY: lint +lint: $(JSSRC) + $(MAKE) -C src lint .PHONY: upload -upload: ${DEB} - tar cf - ${DEB} | ssh -X repoman@repo.proxmox.com -- upload --product pve,pmg --dist stretch +upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION) +upload: $(DEBS) + tar cf - $(DEB) | ssh -X repoman@repo.proxmox.com -- upload --product pve,pmg,pbs --dist $(UPLOAD_DIST) + tar cf - $(DEV_DEB) | ssh -X repoman@repo.proxmox.com -- upload --product devel --dist $(UPLOAD_DIST) distclean: clean - clean: - rm -rf ./build *.deb *.changes *.buildinfo - find . -name '*~' -exec rm {} ';' + $(MAKE) -C src clean + rm -rf $(PACKAGE)-[0-9]*/ *.tar.* *.dsc *.deb *.changes *.buildinfo *.build .PHONY: dinstall -dinstall: ${DEB} - dpkg -i ${DEB} +dinstall: $(DEBS) + dpkg -i $(DEBS)