]> git.proxmox.com Git - vncterm.git/blob - Makefile
buildsys: fix debug symbol package name
[vncterm.git] / Makefile
1 include /usr/share/dpkg/pkg-info.mk
2 include /usr/share/dpkg/architecture.mk
3
4 PACKAGE=vncterm
5 BUILDDIR ?= $(PACKAGE)-$(DEB_VERSION_UPSTREAM)
6
7 VNCVER=0.9.14
8 VNCREL=LibVNCServer-$(VNCVER)
9 VNCDIR=libvncserver-$(VNCREL)
10 VNCSRC=$(VNCREL).tar.gz
11 VNCLIB=$(VNCDIR)/libvncserver.a
12
13 DSC = $(PACKAGE)_$(DEB_VERSION).dsc
14
15 DEB=$(PACKAGE)_$(DEB_VERSION)_$(DEB_HOST_ARCH).deb
16 DBG_DEB=$(PACKAGE)-dbgsym_$(DEB_VERSION)_$(DEB_HOST_ARCH).deb
17
18 CPPFLAGS += -O2 -g -Wall -Wno-deprecated-declarations -D_GNU_SOURCE -I $(VNCDIR)
19
20 VNC_LIBS := -lnsl -lpthread -lz -ljpeg -lutil -lgnutls -lpng
21
22 all: vncterm
23
24 font.data: genfont2
25 ./genfont2 -o font.data.tmp -i /usr/share/unifont/unifont.hex
26 mv font.data.tmp font.data
27
28 genfont2: genfont2.c
29 gcc -g -O2 -o $@ genfont2.c -Wall -Wextra -D_GNU_SOURCE -lz
30
31 .PHONY: vnc
32 vnc: $(VNCLIB)
33 $(VNCLIB): $(VNCSRC)
34 rm -rf $(VNCDIR)
35 tar xf $(VNCSRC)
36 ln -s ../vncpatches $(VNCDIR)/patches
37 cd $(VNCDIR); quilt push -a
38 cd $(VNCDIR); cmake -D WITH_GNUTLS=OFF -D WITH_OPENSSL=OFF -D WITH_WEBSOCKETS=OFF -D WITH_SYSTEMD=OFF -D WITH_TIGHTVNC_FILETRANSFER=OFF -D WITH_GCRYPT=OFF -D WITH_LZO=OFF -D BUILD_SHARED_LIBS=OFF .; cmake --build .
39
40 vncterm: vncterm.c wchardata.c $(VNCLIB)
41 $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ $^ $(VNC_LIBS)
42
43 wchardata.c:
44 cp /usr/share/unifont/$@ $@
45
46 .PHONY: install
47 install: vncterm vncterm.1 font.data
48 mkdir -p $(DESTDIR)/usr/share/$(PACKAGE)
49 install -m 0644 font.data $(DESTDIR)/usr/share/$(PACKAGE)
50 mkdir -p $(DESTDIR)/usr/share/man/man1
51 install -m 0644 vncterm.1 $(DESTDIR)/usr/share/man/man1
52 mkdir -p $(DESTDIR)/usr/bin
53 install -m 0755 vncterm $(DESTDIR)/usr/bin
54
55 .PHONY: dinstall
56 dinstall: $(DEB)
57 dpkg -i $(DEB)
58
59 vncterm.1: vncterm.pod
60 rm -f $@
61 pod2man -n $< -s 1 -r $(DEB_VERSION_UPSTREAM) <$< >$@
62
63 $(BUILDDIR):
64 rm -rf $@ $@.tmp
65 rsync -a . $@.tmp
66 echo "git clone git://git.proxmox.com/git/vncterm.git\\ngit checkout $$(git rev-parse HEAD)" > $@.tmp/debian/SOURCE
67 mv $@.tmp $@
68
69 .PHONY: deb
70 deb: $(DEB)
71 $(DEB): $(BUILDDIR)
72 cd $(BUILDDIR); dpkg-buildpackage -rfakeroot -b -us -uc
73 lintian $(DEB)
74
75 .PHONY: dsc
76 dsc: $(DSC)
77 rm -rf $(BUILDDIR) $(DSC)
78 $(MAKE) $(DSC)
79 lintian $(DSC)
80
81 $(DSC): $(BUILDDIR)
82 cd $(BUILDDIR); dpkg-buildpackage -S -us -uc
83
84 sbuild: $(DSC)
85 sbuild $<
86
87 .PHONY: upload
88 upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION)
89 upload: $(DEB)
90 tar cf - $(DEB) $(DBG_DEB) | ssh -X repoman@repo.proxmox.com -- upload --product pve --dist $(UPLOAD_DIST)
91
92 .PHONY: clean
93 clean:
94 rm -f *.dsc *.deb $(PACKAGE)*.tar* *.changes *.build *.buildinfo
95 rm -f vncterm vncterm.1 genfont genfont2 *~ *.tmp wchardata.c font.data
96 rm -rf $(VNCDIR) $(PACKAGE)-[0-9]*/
97
98 .PHONY: distclean
99 distclean: clean