+include /usr/share/dpkg/pkg-info.mk
+include /usr/share/dpkg/architecture.mk
-PROGRAMS=spiceterm
+PACKAGE=spiceterm
-HEADERS=translations.h event_loop.h glyphs.h spiceterm.h keysyms.h
-SOURCES=screen.c event_loop.c input.c spiceterm.c auth-pve.c
+GITVERSION:=$(shell cat .git/refs/heads/master)
+BUILDDIR ?= $(PACKAGE)-$(DEB_VERSION_UPSTREAM)
-#export G_MESSAGES_DEBUG=all
-#export SPICE_DEBUG=1
+DEB=$(PACKAGE)_$(DEB_VERSION)_$(DEB_HOST_ARCH).deb
+DBG_DEB=$(PACKAGE)-dbgsym_$(DEB_VERSION)_$(DEB_HOST_ARCH).deb
+DSC=$(PACKAGE)_$(DEB_VERSION_UPSTREAM_REVISION).dsc
-all: ${PROGRAMS}
+$(BUILDDIR): src/ debian/
+ rm -rf $(BUILDDIR)
+ rsync -a src/ debian $(BUILDDIR)
+ echo "git clone git://git.proxmox.com/git/spiceterm.git\\ngit checkout $(GITVERSION)" > $(BUILDDIR)/debian/SOURCE
-spiceterm: ${SOURCES} ${HEADERS} spiceterm.c
- gcc -Werror -Wall -Wtype-limits ${SOURCES} -g -O2 -o $@ -lutil $(shell pkg-config) $(shell pkg-config --cflags --libs gthread-2.0,spice-protocol,spice-server)
+.PHONY: dsc
+dsc: clean
+ $(MAKE) $(DSC)
+ lintian $(DSC)
-genfont: genfont.c
- gcc -g -O2 -o $@ genfont.c -Wall -D_GNU_SOURCE -lz
+$(DSC): $(BUILDDIR)
+ cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d
-keysyms.h: genkeysym.pl
- ./genkeysym.pl >$@
+sbuild: $(DSC)
+ sbuild $<
-glyphs.h: genfont
- ./genfont > glyphs.h
+.PHONY: deb
+deb: $(DEB)
+$(DEB): $(BUILDDIR)
+ cd $(BUILDDIR); dpkg-buildpackage -b -us -uc
+ lintian $(DEB)
-.PHONY: test
-test: spiceterm
- ./spiceterm --noauth --keymap de & remote-viewer spice://localhost?tls-port=5900
- #G_MESSAGES_DEBUG=all SPICE_DEBUG=1 SPICE_TICKET=test ./spiceterm & G_MESSAGES_DEBUG=all SPICE_DEBUG=1 remote-viewer --debug 'spice://localhost?tls-port=5900' --spice-ca-file /etc/pve/pve-root-ca.pem --spice-secure-channels=all
+.PHONY: dinstall
+dinstall: $(DEB)
+ dpkg -i $(DEB)
-.PHONY: distclean
-distclean: clean
+.PHONY: upload
+upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION)
+upload: $(DEB)
+ tar cf - $(DEB) $(DBG_DEB) | ssh repoman@repo.proxmox.com -- upload --product pve --dist $(UPLOAD_DIST) --arch $(DEB_HOST_ARCH)
-.PHONY: clean
+.PHONY: distclean clean
+distclean: clean
clean:
- rm -rf *~ ${PROGRAMS}
\ No newline at end of file
+ $(MAKE) -C src $@
+ rm -rf *~ $(PACKAGE)-*/ $(PACKAGE)*.tar* *.deb *.dsc *.changes *.build *.buildinfo