]> git.proxmox.com Git - pve-xtermjs.git/blame - termproxy/Makefile
split upstream and our native into different source packages
[pve-xtermjs.git] / termproxy / Makefile
CommitLineData
145da0bf
TL
1include /usr/share/dpkg/default.mk
2
3PACKAGE=proxmox-termproxy
4CRATENAME=proxmox-termproxy
5
6BUILDDIR ?= $(PACKAGE)-$(DEB_VERSION_UPSTREAM)
7ORIG_SRC_TAR=$(PACKAGE)_$(DEB_VERSION_UPSTREAM).orig.tar.gz
8
9DEB=$(PACKAGE)_$(DEB_VERSION)_$(DEB_HOST_ARCH).deb
10DBG_DEB=$(PACKAGE)-dbgsym_$(DEB_VERSION)_$(DEB_HOST_ARCH).deb
11DSC=$(PACKAGE)_$(DEB_VERSION).dsc
12
13CARGO ?= cargo
14ifeq ($(BUILD_MODE), release)
15CARGO_BUILD_ARGS += --release
16COMPILEDIR := target/release
17else
18COMPILEDIR := target/debug
19endif
20
21PREFIX = /usr
22BINDIR = $(PREFIX)/bin
23TERMPROXY_BIN := $(addprefix $(COMPILEDIR)/,proxmox-termproxy)
24
25all:
26
27install: $(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
38cargo-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
53deb: $(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
61dsc:
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
69sbuild: $(DSC)
70 sbuild $(DSC)
71
72.PHONY: upload
73upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION)
74upload: $(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
78distclean: clean
79clean:
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
85dinstall: deb
86 dpkg -i $(DEB)