-PACKAGE=proxmox-widget-toolkit
-PKGVER=1.0
-PKGREL=20
+include /usr/share/dpkg/pkg-info.mk
+export DEB_VERSION_UPSTREAM_REVISION
-DEB=${PACKAGE}_${PKGVER}-${PKGREL}_all.deb
+export PACKAGE=proxmox-widget-toolkit
-DESTDIR=
+DEB=${PACKAGE}_${DEB_VERSION_UPSTREAM_REVISION}_all.deb
+DEV_DEB=${PACKAGE}-dev_${DEB_VERSION_UPSTREAM_REVISION}_all.deb
-DOCDIR=${DESTDIR}/usr/share/doc/${PACKAGE}
+DEBS=${DEB} ${DEV_DEB}
+DSC=${PACKAGE}_${DEB_VERSION_UPSTREAM_REVISION}.dsc
-WWWBASEDIR=${DESTDIR}/usr/share/javascript/${PACKAGE}
+BUILDDIR ?= ${PACKAGE}-${DEB_VERSION_UPSTREAM}
-JSSRC= \
- Utils.js \
- Toolkit.js \
- mixin/CBind.js \
- data/reader/JsonObject.js \
- data/ProxmoxProxy.js \
- data/UpdateStore.js \
- data/DiffStore.js \
- data/ObjectStore.js \
- data/RRDStore.js \
- data/TimezoneStore.js \
- form/IntegerField.js \
- form/TextField.js \
- form/DateTimeField.js \
- form/Checkbox.js \
- form/KVComboBox.js \
- form/LanguageSelector.js \
- form/ComboGrid.js \
- form/RRDTypeSelector.js \
- form/BondModeSelector.js \
- button/Button.js \
- button/HelpButton.js \
- grid/ObjectGrid.js \
- grid/PendingObjectGrid.js \
- panel/InputPanel.js \
- panel/LogView.js \
- panel/RRDChart.js \
- panel/GaugeWidget.js \
- window/Edit.js \
- window/PasswordEdit.js \
- window/TaskViewer.js \
- node/APT.js \
- node/NetworkEdit.js \
- node/NetworkView.js \
- node/DNSEdit.js \
- node/HostsView.js \
- node/DNSView.js \
- node/Tasks.js \
- node/ServiceView.js \
- node/TimeEdit.js \
- node/TimeView.js
-
-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}
-${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: dsc
+dsc: ${DSC}
+${DSC}: ${BUILDDIR}
+ cd ${BUILDDIR}; dpkg-buildpackage -S -us -uc -d
+ lintian ${DSC}
.PHONY: lint
lint: ${JSSRC}
- jslint ${JSSRC}
-
-proxmoxlib.js: ${JSSRC}
- # add the version as comment in the file
- echo "// ${PKGVER}-${PKGREL}" > $@.tmp
- cat ${JSSRC} >> $@.tmp
- mv $@.tmp $@
-
-install: proxmoxlib.js
- install -d -m 755 ${WWWBASEDIR}
- install -m 0644 proxmoxlib.js ${WWWBASEDIR}
+ ${MAKE} -C src lint
.PHONY: upload
-upload: ${DEB}
- tar cf - ${DEB} | ssh -X repoman@repo.proxmox.com -- upload --product pve,pmg --dist stretch
+upload: ${DEBS}
+ tar cf - ${DEB} | ssh -X repoman@repo.proxmox.com -- upload --product pve,pmg,pbs --dist bullseye
+ tar cf - ${DEV_DEB} | ssh -X repoman@repo.proxmox.com -- upload --product devel --dist bullseye
distclean: clean
-
clean:
- rm -rf ./build *.deb *.changes *.buildinfo proxmoxlib.js
+ $(MAKE) -C src clean
+ rm -rf ${BUILDDIR} ${BUILDDIR}.tmp *.tar.gz *.dsc *.deb *.changes *.buildinfo
find . -name '*~' -exec rm {} ';'
.PHONY: dinstall
-dinstall: ${DEB}
- dpkg -i ${DEB}
+dinstall: ${DEBS}
+ dpkg -i ${DEBS}