]> git.proxmox.com Git - pve-xtermjs.git/blobdiff - termproxy/Makefile
split upstream and our native into different source packages
[pve-xtermjs.git] / termproxy / Makefile
diff --git a/termproxy/Makefile b/termproxy/Makefile
new file mode 100644 (file)
index 0000000..dbc7b85
--- /dev/null
@@ -0,0 +1,86 @@
+include /usr/share/dpkg/default.mk
+
+PACKAGE=proxmox-termproxy
+CRATENAME=proxmox-termproxy
+
+BUILDDIR ?= $(PACKAGE)-$(DEB_VERSION_UPSTREAM)
+ORIG_SRC_TAR=$(PACKAGE)_$(DEB_VERSION_UPSTREAM).orig.tar.gz
+
+DEB=$(PACKAGE)_$(DEB_VERSION)_$(DEB_HOST_ARCH).deb
+DBG_DEB=$(PACKAGE)-dbgsym_$(DEB_VERSION)_$(DEB_HOST_ARCH).deb
+DSC=$(PACKAGE)_$(DEB_VERSION).dsc
+
+CARGO ?= cargo
+ifeq ($(BUILD_MODE), release)
+CARGO_BUILD_ARGS += --release
+COMPILEDIR := target/release
+else
+COMPILEDIR := target/debug
+endif
+
+PREFIX = /usr
+BINDIR = $(PREFIX)/bin
+TERMPROXY_BIN := $(addprefix $(COMPILEDIR)/,proxmox-termproxy)
+
+all:
+
+install: $(TERMPROXY_BIN)
+       install -dm755 $(DESTDIR)$(BINDIR)
+       install -m755 $(TERMPROXY_BIN) $(DESTDIR)$(BINDIR)/
+
+$(TERMPROXY_BIN): .do-cargo-build
+.do-cargo-build:
+       $(CARGO) build $(CARGO_BUILD_ARGS)
+       touch .do-cargo-build
+
+
+.PHONY: cargo-build
+cargo-build: .do-cargo-build
+
+$(BUILDDIR):
+       rm -rf $@ $@.tmp
+       mkdir $@.tmp
+       cp -a debian/ src/ Makefile Cargo.toml $@.tmp
+       echo "git clone git://git.proxmox.com/git/pve-xtermjs.git\\ngit checkout $$(git rev-parse HEAD)" \
+           > $@.tmp/debian/SOURCE
+       mv $@.tmp $@
+
+
+$(ORIG_SRC_TAR): $(BUILDDIR)
+       tar czf $(ORIG_SRC_TAR) --exclude="$(BUILDDIR)/debian" $(BUILDDIR)
+
+.PHONY: deb
+deb: $(DEB)
+$(DBG_DEB): $(DEB)
+$(DEB): $(BUILDDIR)
+       cd $(BUILDDIR); dpkg-buildpackage -b -uc -us
+       lintian $(DEB)
+       @echo $(DEB)
+
+.PHONY: dsc
+dsc:
+       rm -rf $(DSC) $(BUILDDIR)
+       $(MAKE) $(DSC)
+       lintian $(DSC)
+
+$(DSC): $(BUILDDIR) $(ORIG_SRC_TAR)
+       cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d
+
+sbuild: $(DSC)
+       sbuild $(DSC)
+
+.PHONY: upload
+upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION)
+upload: $(DEB) $(DBG_DEB)
+       tar cf - $(DEB) $(DBG_DEB) |ssh -X repoman@repo.proxmox.com -- upload --product pmg,pve,pbs --dist $(UPLOAD_DIST) --arch $(DEB_HOST_ARCH)
+
+.PHONY: clean distclean
+distclean: clean
+clean:
+       $(CARGO) clean
+       rm -rf $(PACKAGE)-[0-9]*/ build/
+       rm -f *.deb *.changes *.dsc *.tar.* *.buildinfo *.build .do-cargo-build
+
+.PHONY: dinstall
+dinstall: deb
+       dpkg -i $(DEB)