]> git.proxmox.com Git - pmg-gui.git/blob - Makefile
buildsys: add dsc and sbuild targets
[pmg-gui.git] / Makefile
1 include /usr/share/dpkg/pkg-info.mk
2
3 PACKAGE=pmg-gui
4
5 BUILDDIR ?= $(PACKAGE)-$(DEB_VERSION)
6 DSC=$(PACKAGE)_$(DEB_VERSION).dsc
7 DEB=$(PACKAGE)_$(DEB_VERSION)_all.deb
8
9 DESTDIR=
10 DOCDIR=$(DESTDIR)/usr/share/doc/$(PACKAGE)
11 WWWBASEDIR=$(DESTDIR)/usr/share/javascript/$(PACKAGE)
12 WWWCSSDIR=$(WWWBASEDIR)/css
13 WWWIMAGESDIR=$(WWWBASEDIR)/images
14 WWWJSDIR=$(WWWBASEDIR)/js
15
16 IMAGES= \
17 images/logo-128.png \
18 images/proxmox_logo.png
19
20 CSSFILES = css/ext6-pmg.css css/ext6-pmg-mobile.css
21
22 export DEB_VERSION_UPSTREAM_REVISION
23
24 all:
25
26 $(BUILDDIR):
27 rm -rf $@ $@.tmp
28 rsync -a * $@.tmp
29 mv $@.tmp $@
30
31
32 .PHONY: dsc deb
33 dsc: $(DSC)
34
35 $(DSC): $(BUILDDIR)
36 cd $(BUILDDIR); dpkg-buildpackage -S -us -uc
37 lintian $(DSC)
38
39 sbuild: $(DSC)
40 sbuild $(DSC)
41
42 deb: $(DEB)
43
44 $(DEB): $(BUILDDIR)
45 cd $(BUILDDIR); dpkg-buildpackage -b -us -uc
46 lintian $(DEB)
47
48 .PHONY: js/pmgmanagerlib.js js/mobile/pmgmanagerlib-mobile.js
49 js/pmgmanagerlib.js:
50 make -C js pmgmanagerlib.js
51 js/mobile/pmgmanagerlib-mobile.js:
52 make -C js/mobile pmgmanagerlib-mobile.js
53
54 install: pmg-index.html.tt pmg-mobile-index.html.tt js/pmgmanagerlib.js js/mobile/pmgmanagerlib-mobile.js $(IMAGES) $(CSSFILES)
55 install -d -m 755 $(WWWBASEDIR)
56 install -d -m 755 $(WWWCSSDIR)
57 install -d -m 755 $(WWWIMAGESDIR)
58 install -d -m 755 $(WWWJSDIR)
59 install -m 0644 pmg-index.html.tt $(WWWBASEDIR)
60 install -m 0644 pmg-mobile-index.html.tt $(WWWBASEDIR)
61 install -m 0644 js/pmgmanagerlib.js $(WWWJSDIR)
62 install -m 0644 js/mobile/pmgmanagerlib-mobile.js $(WWWJSDIR)
63 for f in $(IMAGES); do install -m 0644 "$$f" $(WWWIMAGESDIR); done
64 for f in $(CSSFILES); do install -m 0644 "$$f" $(WWWCSSDIR); done
65
66 .PHONY: upload
67 upload: $(DEB)
68 tar cf - $(DEB) | ssh -X repoman@repo.proxmox.com -- upload --product pmg --dist bullseye
69
70 distclean: clean
71 rm -f examples/simple-demo.pem
72
73 .PHONY: lint
74 check:
75 $(MAKE) -C js/ check
76 $(MAKE) -C js/mobile check
77
78 clean:
79 make -C js clean
80 rm -rf $(PACKAGE)-[0-9]* *.dsc *.tar.* *.deb *.changes *.buildinfo *.build
81 find . -name '*~' -exec rm {} ';'
82
83 .PHONY: dinstall
84 dinstall: $(DEB)
85 dpkg -i $(DEB)