]>
Commit | Line | Data |
---|---|---|
145da0bf TL |
1 | include /usr/share/dpkg/default.mk |
2 | ||
3 | PACKAGE=proxmox-termproxy | |
4 | CRATENAME=proxmox-termproxy | |
5 | ||
6 | BUILDDIR ?= $(PACKAGE)-$(DEB_VERSION_UPSTREAM) | |
7 | ORIG_SRC_TAR=$(PACKAGE)_$(DEB_VERSION_UPSTREAM).orig.tar.gz | |
8 | ||
9 | DEB=$(PACKAGE)_$(DEB_VERSION)_$(DEB_HOST_ARCH).deb | |
10 | DBG_DEB=$(PACKAGE)-dbgsym_$(DEB_VERSION)_$(DEB_HOST_ARCH).deb | |
11 | DSC=$(PACKAGE)_$(DEB_VERSION).dsc | |
12 | ||
13 | CARGO ?= cargo | |
14 | ifeq ($(BUILD_MODE), release) | |
15 | CARGO_BUILD_ARGS += --release | |
16 | COMPILEDIR := target/release | |
17 | else | |
18 | COMPILEDIR := target/debug | |
19 | endif | |
20 | ||
21 | PREFIX = /usr | |
22 | BINDIR = $(PREFIX)/bin | |
23 | TERMPROXY_BIN := $(addprefix $(COMPILEDIR)/,proxmox-termproxy) | |
24 | ||
25 | all: | |
26 | ||
27 | install: $(TERMPROXY_BIN) | |
28 | install -dm755 $(DESTDIR)$(BINDIR) | |
29 | install -m755 $(TERMPROXY_BIN) $(DESTDIR)$(BINDIR)/ | |
30 | ||
31 | $(TERMPROXY_BIN): .do-cargo-build | |
32 | .do-cargo-build: | |
33 | $(CARGO) build $(CARGO_BUILD_ARGS) | |
34 | touch .do-cargo-build | |
35 | ||
36 | ||
37 | .PHONY: cargo-build | |
38 | cargo-build: .do-cargo-build | |
39 | ||
40 | $(BUILDDIR): | |
41 | rm -rf $@ $@.tmp | |
42 | mkdir $@.tmp | |
43 | cp -a debian/ src/ Makefile Cargo.toml $@.tmp | |
44 | echo "git clone git://git.proxmox.com/git/pve-xtermjs.git\\ngit checkout $$(git rev-parse HEAD)" \ | |
45 | > $@.tmp/debian/SOURCE | |
46 | mv $@.tmp $@ | |
47 | ||
48 | ||
49 | $(ORIG_SRC_TAR): $(BUILDDIR) | |
50 | tar czf $(ORIG_SRC_TAR) --exclude="$(BUILDDIR)/debian" $(BUILDDIR) | |
51 | ||
52 | .PHONY: deb | |
53 | deb: $(DEB) | |
54 | $(DBG_DEB): $(DEB) | |
55 | $(DEB): $(BUILDDIR) | |
56 | cd $(BUILDDIR); dpkg-buildpackage -b -uc -us | |
57 | lintian $(DEB) | |
58 | @echo $(DEB) | |
59 | ||
60 | .PHONY: dsc | |
61 | dsc: | |
62 | rm -rf $(DSC) $(BUILDDIR) | |
63 | $(MAKE) $(DSC) | |
64 | lintian $(DSC) | |
65 | ||
66 | $(DSC): $(BUILDDIR) $(ORIG_SRC_TAR) | |
67 | cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d | |
68 | ||
69 | sbuild: $(DSC) | |
70 | sbuild $(DSC) | |
71 | ||
72 | .PHONY: upload | |
73 | upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION) | |
74 | upload: $(DEB) $(DBG_DEB) | |
75 | tar cf - $(DEB) $(DBG_DEB) |ssh -X repoman@repo.proxmox.com -- upload --product pmg,pve,pbs --dist $(UPLOAD_DIST) --arch $(DEB_HOST_ARCH) | |
76 | ||
77 | .PHONY: clean distclean | |
78 | distclean: clean | |
79 | clean: | |
80 | $(CARGO) clean | |
81 | rm -rf $(PACKAGE)-[0-9]*/ build/ | |
82 | rm -f *.deb *.changes *.dsc *.tar.* *.buildinfo *.build .do-cargo-build | |
83 | ||
84 | .PHONY: dinstall | |
85 | dinstall: deb | |
86 | dpkg -i $(DEB) |