1492d43a5Smrg#!/usr/bin/make -f
2492d43a5Smrg# Made with the aid of dh_make, by Craig Small
3492d43a5Smrg# Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess.
4492d43a5Smrg# Some lines taken from debmake, by Cristoph Lameter.
5492d43a5Smrg
6492d43a5Smrg# Uncomment this to turn on verbose mode.
7492d43a5Smrg#export DH_VERBOSE=1
8492d43a5Smrg
95104ee6eSmrgSHELL = /bin/bash
105104ee6eSmrgDPKG_EXPORT_BUILDFLAGS = 1
115104ee6eSmrgexport DEB_BUILD_MAINT_OPTIONS := hardening=+all qa=+bug reproducible=+all
125104ee6eSmrg
135104ee6eSmrginclude /usr/share/dpkg/buildflags.mk
145104ee6eSmrg
15492d43a5Smrg# These are used for cross-compiling and for saving the configure script
16492d43a5Smrg# from having to guess our platform (since we know it already)
17492d43a5SmrgDEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
18492d43a5SmrgDEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
19492d43a5Smrg
20492d43a5SmrgDESKTOP_VENDOR  = dickey
21492d43a5Smrg
22492d43a5SmrgPKG_SUFFIX	= -dev
23e39b573cSmrgPKG_CLASS	= XTermDev
24492d43a5Smrg
25492d43a5SmrgPACKAGE		:= $(shell dpkg-parsechangelog| \
26492d43a5Smrg			sed -n 's/^Source: \(.*\)$$/\1/p')
27492d43a5Smrg
28492d43a5SmrgPKG_APPDEFAULTS	:= /etc/X11/app-defaults
29492d43a5SmrgPKG_DESKTOP	:= /usr/share/applications
30492d43a5Smrg
31492d43a5SmrgDSTDIR		:= $(CURDIR)/debian/$(PACKAGE)
32492d43a5SmrgMY_DESKTOP	:= $(DSTDIR)/usr/share/applications
33492d43a5Smrg
34492d43a5Smrgifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
35492d43a5SmrgDEBOP=--enable-debug
36492d43a5Smrgelse
37492d43a5SmrgDEBOP=
38492d43a5Smrgendif
39492d43a5Smrg
40492d43a5Smrgifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
41492d43a5Smrg        CFLAGS += -O0
42492d43a5Smrgelse
43492d43a5Smrg        CFLAGS += -O2
44492d43a5Smrgendif
45492d43a5Smrgifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
46492d43a5Smrg        INSTALL_PROGRAM += -s
47492d43a5Smrgendif
48492d43a5Smrg
495104ee6eSmrgconfigure_flags = \
505104ee6eSmrg	--host=$(DEB_HOST_GNU_TYPE) \
515104ee6eSmrg	--build=$(DEB_BUILD_GNU_TYPE) \
525104ee6eSmrg	--program-suffix=$(PKG_SUFFIX) \
535104ee6eSmrg	--prefix=/usr \
545104ee6eSmrg	--libexecdir=\$${prefix}/lib \
555104ee6eSmrg	--mandir=\$${prefix}/share/man \
565104ee6eSmrg	--sysconfdir=/etc/$(PACKAGE) \
575104ee6eSmrg	--localstatedir=/var \
585104ee6eSmrg	--libdir=/etc/$(PACKAGE) \
595104ee6eSmrg	--with-app-class=$(PKG_CLASS) \
605104ee6eSmrg	--without-xterm-symlink \
615104ee6eSmrg	--disable-imake \
625104ee6eSmrg	--enable-dabbrev \
635104ee6eSmrg	--enable-dec-locator \
645104ee6eSmrg	--enable-exec-xterm \
655104ee6eSmrg	--enable-hp-fkeys \
665104ee6eSmrg	--enable-load-vt-fonts \
675104ee6eSmrg	--enable-logfile-exec \
685104ee6eSmrg	--enable-logging \
695104ee6eSmrg	--enable-mini-luit \
705104ee6eSmrg	--enable-regis-graphics \
715104ee6eSmrg	--enable-sco-fkeys \
725104ee6eSmrg	--enable-status-line \
735104ee6eSmrg	--enable-toolbar \
745104ee6eSmrg	--enable-xmc-glitch \
755104ee6eSmrg	--with-app-defaults=$(PKG_APPDEFAULTS) \
765104ee6eSmrg	--with-icondir=\$${prefix}/share/icons \
775104ee6eSmrg	--with-pixmapdir=\$${prefix}/share/pixmaps \
785104ee6eSmrg	--with-own-terminfo=\$${prefix}/share/terminfo \
795104ee6eSmrg	--with-icon-theme \
805104ee6eSmrg	--with-terminal-type=xterm-new \
815104ee6eSmrg	--with-utempter \
825104ee6eSmrg	--with-icon-name=mini.xterm \
835104ee6eSmrg	--with-xpm ${DEBOP}
845104ee6eSmrg
85492d43a5Smrgconfigure: configure-stamp
86492d43a5Smrgconfigure-stamp:
87492d43a5Smrg	dh_testdir
88492d43a5Smrg
895104ee6eSmrg	# Update config.guess, config.sub
905104ee6eSmrg	dh_update_autotools_config
915104ee6eSmrg
925104ee6eSmrg	# Configure xterm-dev
935104ee6eSmrg	dh_auto_configure -- $(configure_flags)
94492d43a5Smrg
95492d43a5Smrg	touch configure-stamp
96492d43a5Smrg
97492d43a5Smrgbuild: build-stamp
98492d43a5Smrgbuild-stamp: configure-stamp
99492d43a5Smrg	dh_testdir
100492d43a5Smrg
101492d43a5Smrg	$(MAKE)
102492d43a5Smrg
103492d43a5Smrg	touch build-stamp
104492d43a5Smrg
105492d43a5Smrgclean:
106492d43a5Smrg	dh_testdir
107492d43a5Smrg	dh_testroot
108492d43a5Smrg
109492d43a5Smrg	[ ! -f Makefile ] || $(MAKE) distclean
110492d43a5Smrg
111492d43a5Smrg	dh_clean
112492d43a5Smrg
113492d43a5Smrginstall: install-stamp
114492d43a5Smrginstall-stamp: build-stamp
115492d43a5Smrg	dh_testdir
116492d43a5Smrg	dh_testroot
1175307cd1aSmrg	dh_prep
118492d43a5Smrg	dh_installdirs
119492d43a5Smrg
120492d43a5Smrg	$(MAKE) install \
121492d43a5Smrg		DESTDIR=$(CURDIR)/debian/$(PACKAGE)
122492d43a5Smrg
123492d43a5Smrg	touch install-stamp
124492d43a5Smrg
125492d43a5Smrginstall: install-indep install-arch
126492d43a5Smrginstall-indep:
127492d43a5Smrg
128492d43a5Smrginstall-arch:
129492d43a5Smrg	dh_testdir
130492d43a5Smrg	dh_testroot
1315307cd1aSmrg	dh_prep -a
1325307cd1aSmrg	dh_installdirs -a
133492d43a5Smrg
134492d43a5Smrg	$(MAKE) install-bin \
135492d43a5Smrg		DESTDIR=$(DSTDIR)
136492d43a5Smrg
137492d43a5Smrg# Build architecture-independent files here.
138492d43a5Smrgbinary-indep: build install
139492d43a5Smrg	dh_testdir
140492d43a5Smrg	dh_testroot
141492d43a5Smrg
142492d43a5Smrg	# This overwrites the Debian package's copy of app-defaults and icons.
143492d43a5Smrg	# But the resources are not the same; they are patched.
144492d43a5Smrg	sed -i -f package/debian/color.sed XTerm-col.ad
145492d43a5Smrg	sed -i -f package/debian/xterm-xres.sed XTerm.ad
146492d43a5Smrg
147492d43a5Smrg	$(MAKE) install-app \
148492d43a5Smrg		install-icon \
149492d43a5Smrg		install-man \
150492d43a5Smrg		DESTDIR=$(DSTDIR)
151492d43a5Smrg
152492d43a5Smrg	# Follow-up with a check against the installed resource files.
153e39b573cSmrg	( cd $(DSTDIR)$(PKG_APPDEFAULTS) \
154e39b573cSmrg	  && $(SHELL) -c 'for p in *; do \
155e39b573cSmrg	  	test -f $(PKG_APPDEFAULTS)/$$p && \
156e39b573cSmrg	  	diff -u $(PKG_APPDEFAULTS)/$$p $$p; \
157e39b573cSmrg		done' ; \
158e39b573cSmrg	  exit 0 )
159492d43a5Smrg
160f2e35a3aSmrg	# The Debian package stopped installing xterm's desktop files; a
161f2e35a3aSmrg	# subsequent revision added that back with limitations.  xterm's
162f2e35a3aSmrg	# configure script checks for categories which are used by other
163f2e35a3aSmrg	# terminal emulators.  The Debian package overrides that to a single
164f2e35a3aSmrg	# category.
165492d43a5Smrg	# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=486317
166492d43a5Smrg	$(MAKE) install-desktop \
167f2e35a3aSmrg		DESKTOP_FLAGS="--dir $(MY_DESKTOP)"
168492d43a5Smrg
169492d43a5Smrg	( cd $(DSTDIR)$(PKG_DESKTOP) \
170492d43a5Smrg	  && $(SHELL) -c 'for p in *;do \
171e39b573cSmrg	  	test -f $(PKG_DESKTOP)/$$p && \
172e39b573cSmrg		diff -u $(PKG_DESKTOP)/$$p $$p; \
173492d43a5Smrg	  	test -n "$(PKG_SUFFIX)" && mv $$p `basename $$p .desktop`$(PKG_SUFFIX).desktop; \
174492d43a5Smrg		done' ; \
175492d43a5Smrg	  exit 0 )
176492d43a5Smrg
1770bd37d32Smrg	dh_icons
1780bd37d32Smrg
179492d43a5Smrg# Build architecture-dependent files here.
180492d43a5Smrgbinary-arch: build install
181492d43a5Smrg	dh_testdir
182492d43a5Smrg	dh_testroot
183492d43a5Smrg	dh_installdebconf
184f2e35a3aSmrg	dh_lintian
185492d43a5Smrg	dh_installdocs
186492d43a5Smrg	dh_installmenu
187492d43a5Smrg	dh_installmime
188492d43a5Smrg	dh_installexamples tektests vttests
189492d43a5Smrg	dh_installchangelogs
190492d43a5Smrg	dh_install
191492d43a5Smrg	dh_link
192492d43a5Smrg	dh_strip
193e0a2b6dfSmrg	dh_compress -Xexamples
194492d43a5Smrg	dh_fixperms
195492d43a5Smrg	dh_installdeb
196492d43a5Smrg	dh_shlibdeps
197492d43a5Smrg	dh_gencontrol
198492d43a5Smrg	dh_md5sums
199492d43a5Smrg	dh_builddeb
200492d43a5Smrg
201492d43a5Smrgbinary: binary-indep binary-arch
202492d43a5Smrg.PHONY: build clean binary-indep binary-arch binary install install-stamp
203