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