]> git.proxmox.com Git - pve-xtermjs.git/blame - Makefile
buildsys: use full DEB_VERSION and correct DEB_HOST_ARCH
[pve-xtermjs.git] / Makefile
CommitLineData
dcefe98b 1include /usr/share/dpkg/pkg-info.mk
3e4311fe 2include /usr/share/dpkg/architecture.mk
dcefe98b
TL
3
4PACKAGE=pve-xtermjs
3e4311fe 5CRATENAME=termproxy
dcefe98b 6
d174283d 7export VERSION=$(DEB_VERSION_UPSTREAM_REVISION)
dcf3d43b 8
4dc4b7df 9XTERMJSVER=4.16.0
d174283d 10XTERMJSTGZ=xterm-$(XTERMJSVER).tgz
5e8b8730 11
d0f166b1 12FITADDONVER=0.5.0
d174283d 13FITADDONTGZ=xterm-addon-fit-$(FITADDONVER).tgz
e264b129 14
ff095498
TL
15DEB=$(PACKAGE)_$(DEB_VERSION_UPSTREAM_REVISION)_$(DEB_HOST_ARCH).deb
16DBG_DEB=$(PACKAGE)-dbgsym_$(DEB_VERSION_UPSTREAM_REVISION)_$(DEB_HOST_ARCH).deb
d174283d 17DSC=rust-$(CRATENAME)_$(DEB_VERSION_UPSTREAM_REVISION).dsc
dcf3d43b 18
3e4311fe
DC
19ifeq ($(BUILD_MODE), release)
20CARGO_BUILD_ARGS += --release
21COMPILEDIR := target/release
22else
23COMPILEDIR := target/debug
24endif
25
26all: cargo-build $(SRCIDR)
27
28.PHONY: $(SUBDIRS)
29$(SUBDIRS):
30 make -C $@
31
32.PHONY: cargo-build
33cargo-build:
34 cargo build $(CARGO_BUILD_ARGS)
dcf3d43b 35
3e4311fe
DC
36.PHONY: build
37build:
38 rm -rf build
d82a7626 39 rm -f debian/control
3e4311fe 40 debcargo package \
10de4e73
TL
41 --config debian/debcargo.toml \
42 --changelog-ready \
43 --no-overlay-write-back \
44 --directory build \
45 $(CRATENAME) \
46 $(shell dpkg-parsechangelog -l debian/changelog -SVersion | sed -e 's/-.*//')
3e4311fe
DC
47 rm build/Cargo.lock
48 find build/debian -name "*.hint" -delete
d82a7626 49 cp build/debian/control debian/control
ff095498
TL
50 echo "git clone git://git.proxmox.com/git/pve-xtermjs.git\\ngit checkout $$(git rev-parse HEAD)" \
51 > $@.tmp/debian/SOURCE
094d1014 52
dcf3d43b 53.PHONY: deb
d174283d
TL
54deb: $(DEB)
55$(DEB) $(DBG_DEB): build
3e4311fe 56 cd build; dpkg-buildpackage -b -uc -us --no-pre-clean
d174283d
TL
57 lintian $(DEB)
58 @echo $(DEB)
dcf3d43b 59
094d1014 60.PHONY: dsc
d174283d 61dsc: $(DSC)
3e4311fe
DC
62$(DSC): build
63 cd build; dpkg-buildpackage -S -us -uc -d -nc
d174283d 64 lintian $(DSC)
dcf3d43b 65
3d800c15
TL
66X_EXCLUSIONS=--exclude=addons/attach --exclude=addons/fullscreen --exclude=addons/search \
67 --exclude=addons/terminado --exclude=addons/webLinks --exclude=addons/zmodem
dcf3d43b 68.PHONY: download
3d800c15 69download:
d174283d
TL
70 wget https://registry.npmjs.org/xterm/-/$(XTERMJSTGZ) -O $(XTERMJSTGZ).tmp
71 wget https://registry.npmjs.org/xterm-addon-fit/-/$(FITADDONTGZ) -O $(FITADDONTGZ).tmp
72 mv $(XTERMJSTGZ).tmp $(XTERMJSTGZ)
73 mv $(FITADDONTGZ).tmp $(FITADDONTGZ)
ff095498
TL
74 tar -C src/www -xf $(XTERMJSTGZ) package/lib package/css --strip-components=2 $(X_EXCLUSIONS)
75 tar -C src/www -xf $(FITADDONTGZ) package/lib --strip-components=2 $(X_EXCLUSIONS)
d174283d 76 rm $(XTERMJSTGZ) $(FITADDONTGZ)
dcf3d43b
DC
77
78.PHONY: upload
d174283d
TL
79upload: $(DEB) $(DBG_DEB)
80 tar cf - $(DEB) $(DBG_DEB) |ssh -X repoman@repo.proxmox.com -- upload --product pmg,pve,pbs --dist bullseye
dcf3d43b
DC
81
82.PHONY: distclean
83distclean: clean
84
85.PHONY: clean
86clean:
d174283d 87 rm -rf *~ debian/*~ $(PACKAGE)-*/ build/ *.deb *.changes *.dsc *.tar.?z *.buildinfo
dcf3d43b
DC
88
89.PHONY: dinstall
90dinstall: deb
d174283d 91 dpkg -i $(DEB)