]> git.proxmox.com Git - pve-xtermjs.git/blob - Makefile
style: use Interest | Interest instead of .add
[pve-xtermjs.git] / Makefile
1 include /usr/share/dpkg/pkg-info.mk
2 include /usr/share/dpkg/architecture.mk
3
4 PACKAGE=pve-xtermjs
5 CRATENAME=termproxy
6
7 export VERSION=${DEB_VERSION_UPSTREAM_REVISION}
8
9 XTERMJSVER=4.7.0
10 XTERMJSTGZ=xterm-${XTERMJSVER}.tgz
11
12 FITADDONVER=0.4.0
13 FITADDONTGZ=xterm-addon-fit-${FITADDONVER}.tgz
14
15 SRCDIR=src
16 GITVERSION:=$(shell git rev-parse HEAD)
17
18 DEB=${PACKAGE}_${DEB_VERSION_UPSTREAM_REVISION}_${DEB_BUILD_ARCH}.deb
19 DSC=rust-${CRATENAME}_${DEB_VERSION_UPSTREAM_REVISION}.dsc
20
21 ifeq ($(BUILD_MODE), release)
22 CARGO_BUILD_ARGS += --release
23 COMPILEDIR := target/release
24 else
25 COMPILEDIR := target/debug
26 endif
27
28 all: cargo-build $(SRCIDR)
29
30 .PHONY: $(SUBDIRS)
31 $(SUBDIRS):
32 make -C $@
33
34 .PHONY: cargo-build
35 cargo-build:
36 cargo build $(CARGO_BUILD_ARGS)
37
38 .PHONY: build
39 build:
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
51
52 .PHONY: deb
53 deb: ${DEB}
54 $(DEB): build
55 cd build; dpkg-buildpackage -b -uc -us --no-pre-clean
56 lintian ${DEB}
57 @echo ${DEB}
58
59 .PHONY: dsc
60 dsc: ${DSC}
61 $(DSC): build
62 cd build; dpkg-buildpackage -S -us -uc -d -nc
63 lintian ${DSC}
64
65 X_EXCLUSIONS=--exclude=addons/attach --exclude=addons/fullscreen --exclude=addons/search \
66 --exclude=addons/terminado --exclude=addons/webLinks --exclude=addons/zmodem
67 .PHONY: download
68 download:
69 wget https://registry.npmjs.org/xterm/-/${XTERMJSTGZ} -O ${XTERMJSTGZ}.tmp
70 wget https://registry.npmjs.org/xterm-addon-fit/-/${FITADDONTGZ} -O ${FITADDONTGZ}.tmp
71 mv ${XTERMJSTGZ}.tmp ${XTERMJSTGZ}
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}
76
77 .PHONY: upload
78 upload: ${DEB}
79 tar cf - ${DEB}|ssh -X repoman@repo.proxmox.com -- upload --product pmg,pve --dist buster
80
81 .PHONY: distclean
82 distclean: clean
83
84 .PHONY: clean
85 clean:
86 rm -rf *~ debian/*~ ${PACKAGE}-*/ build/ *.deb *.changes *.dsc *.tar.?z *.buildinfo
87
88 .PHONY: dinstall
89 dinstall: deb
90 dpkg -i ${DEB}