1 1.1 mrg #!/usr/bin/make -f 2 1.1 mrg # Made with the aid of dh_make, by Craig Small 3 1.1 mrg # Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess. 4 1.1 mrg # Some lines taken from debmake, by Cristoph Lameter. 5 1.1 mrg 6 1.1 mrg # Uncomment this to turn on verbose mode. 7 1.1 mrg #export DH_VERBOSE=1 8 1.1 mrg 9 1.1.1.11 mrg SHELL = /bin/bash 10 1.1.1.11 mrg DPKG_EXPORT_BUILDFLAGS = 1 11 1.1.1.11 mrg export DEB_BUILD_MAINT_OPTIONS := hardening=+all qa=+bug reproducible=+all 12 1.1.1.11 mrg 13 1.1.1.11 mrg include /usr/share/dpkg/buildflags.mk 14 1.1.1.11 mrg 15 1.1 mrg # These are used for cross-compiling and for saving the configure script 16 1.1 mrg # from having to guess our platform (since we know it already) 17 1.1 mrg DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) 18 1.1 mrg DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) 19 1.1 mrg 20 1.1 mrg DESKTOP_VENDOR = dickey 21 1.1 mrg 22 1.1 mrg PKG_SUFFIX = -dev 23 1.1.1.2 mrg PKG_CLASS = XTermDev 24 1.1 mrg 25 1.1 mrg PACKAGE := $(shell dpkg-parsechangelog| \ 26 1.1 mrg sed -n 's/^Source: \(.*\)$$/\1/p') 27 1.1 mrg 28 1.1 mrg PKG_APPDEFAULTS := /etc/X11/app-defaults 29 1.1 mrg PKG_DESKTOP := /usr/share/applications 30 1.1 mrg 31 1.1 mrg DSTDIR := $(CURDIR)/debian/$(PACKAGE) 32 1.1 mrg MY_DESKTOP := $(DSTDIR)/usr/share/applications 33 1.1 mrg 34 1.1 mrg ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS))) 35 1.1 mrg DEBOP=--enable-debug 36 1.1 mrg else 37 1.1 mrg DEBOP= 38 1.1 mrg endif 39 1.1 mrg 40 1.1 mrg ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) 41 1.1 mrg CFLAGS += -O0 42 1.1 mrg else 43 1.1 mrg CFLAGS += -O2 44 1.1 mrg endif 45 1.1 mrg ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) 46 1.1 mrg INSTALL_PROGRAM += -s 47 1.1 mrg endif 48 1.1 mrg 49 1.1.1.11 mrg configure_flags = \ 50 1.1.1.11 mrg --host=$(DEB_HOST_GNU_TYPE) \ 51 1.1.1.11 mrg --build=$(DEB_BUILD_GNU_TYPE) \ 52 1.1.1.11 mrg --program-suffix=$(PKG_SUFFIX) \ 53 1.1.1.11 mrg --prefix=/usr \ 54 1.1.1.11 mrg --libexecdir=\$${prefix}/lib \ 55 1.1.1.11 mrg --mandir=\$${prefix}/share/man \ 56 1.1.1.11 mrg --sysconfdir=/etc/$(PACKAGE) \ 57 1.1.1.11 mrg --localstatedir=/var \ 58 1.1.1.11 mrg --libdir=/etc/$(PACKAGE) \ 59 1.1.1.11 mrg --with-app-class=$(PKG_CLASS) \ 60 1.1.1.11 mrg --without-xterm-symlink \ 61 1.1.1.11 mrg --disable-imake \ 62 1.1.1.11 mrg --enable-dabbrev \ 63 1.1.1.11 mrg --enable-dec-locator \ 64 1.1.1.11 mrg --enable-exec-xterm \ 65 1.1.1.11 mrg --enable-hp-fkeys \ 66 1.1.1.11 mrg --enable-load-vt-fonts \ 67 1.1.1.11 mrg --enable-logfile-exec \ 68 1.1.1.11 mrg --enable-logging \ 69 1.1.1.11 mrg --enable-mini-luit \ 70 1.1.1.11 mrg --enable-regis-graphics \ 71 1.1.1.11 mrg --enable-sco-fkeys \ 72 1.1.1.11 mrg --enable-status-line \ 73 1.1.1.11 mrg --enable-toolbar \ 74 1.1.1.11 mrg --enable-xmc-glitch \ 75 1.1.1.11 mrg --with-app-defaults=$(PKG_APPDEFAULTS) \ 76 1.1.1.11 mrg --with-icondir=\$${prefix}/share/icons \ 77 1.1.1.11 mrg --with-pixmapdir=\$${prefix}/share/pixmaps \ 78 1.1.1.11 mrg --with-own-terminfo=\$${prefix}/share/terminfo \ 79 1.1.1.11 mrg --with-icon-theme \ 80 1.1.1.11 mrg --with-terminal-type=xterm-new \ 81 1.1.1.11 mrg --with-utempter \ 82 1.1.1.11 mrg --with-icon-name=mini.xterm \ 83 1.1.1.11 mrg --with-xpm ${DEBOP} 84 1.1.1.11 mrg 85 1.1 mrg configure: configure-stamp 86 1.1 mrg configure-stamp: 87 1.1 mrg dh_testdir 88 1.1 mrg 89 1.1.1.11 mrg # Update config.guess, config.sub 90 1.1.1.11 mrg dh_update_autotools_config 91 1.1.1.11 mrg 92 1.1.1.11 mrg # Configure xterm-dev 93 1.1.1.11 mrg dh_auto_configure -- $(configure_flags) 94 1.1 mrg 95 1.1 mrg touch configure-stamp 96 1.1 mrg 97 1.1 mrg build: build-stamp 98 1.1 mrg build-stamp: configure-stamp 99 1.1 mrg dh_testdir 100 1.1 mrg 101 1.1 mrg $(MAKE) 102 1.1 mrg 103 1.1 mrg touch build-stamp 104 1.1 mrg 105 1.1 mrg clean: 106 1.1 mrg dh_testdir 107 1.1 mrg dh_testroot 108 1.1 mrg 109 1.1 mrg [ ! -f Makefile ] || $(MAKE) distclean 110 1.1 mrg 111 1.1 mrg dh_clean 112 1.1 mrg 113 1.1 mrg install: install-stamp 114 1.1 mrg install-stamp: build-stamp 115 1.1 mrg dh_testdir 116 1.1 mrg dh_testroot 117 1.1.1.10 mrg dh_prep 118 1.1 mrg dh_installdirs 119 1.1 mrg 120 1.1 mrg $(MAKE) install \ 121 1.1 mrg DESTDIR=$(CURDIR)/debian/$(PACKAGE) 122 1.1 mrg 123 1.1 mrg touch install-stamp 124 1.1 mrg 125 1.1 mrg install: install-indep install-arch 126 1.1 mrg install-indep: 127 1.1 mrg 128 1.1 mrg install-arch: 129 1.1 mrg dh_testdir 130 1.1 mrg dh_testroot 131 1.1.1.10 mrg dh_prep -a 132 1.1.1.10 mrg dh_installdirs -a 133 1.1 mrg 134 1.1 mrg $(MAKE) install-bin \ 135 1.1 mrg DESTDIR=$(DSTDIR) 136 1.1 mrg 137 1.1 mrg # Build architecture-independent files here. 138 1.1 mrg binary-indep: build install 139 1.1 mrg dh_testdir 140 1.1 mrg dh_testroot 141 1.1 mrg 142 1.1 mrg # This overwrites the Debian package's copy of app-defaults and icons. 143 1.1 mrg # But the resources are not the same; they are patched. 144 1.1 mrg sed -i -f package/debian/color.sed XTerm-col.ad 145 1.1 mrg sed -i -f package/debian/xterm-xres.sed XTerm.ad 146 1.1 mrg 147 1.1 mrg $(MAKE) install-app \ 148 1.1 mrg install-icon \ 149 1.1 mrg install-man \ 150 1.1 mrg DESTDIR=$(DSTDIR) 151 1.1 mrg 152 1.1 mrg # Follow-up with a check against the installed resource files. 153 1.1.1.2 mrg ( cd $(DSTDIR)$(PKG_APPDEFAULTS) \ 154 1.1.1.2 mrg && $(SHELL) -c 'for p in *; do \ 155 1.1.1.2 mrg test -f $(PKG_APPDEFAULTS)/$$p && \ 156 1.1.1.2 mrg diff -u $(PKG_APPDEFAULTS)/$$p $$p; \ 157 1.1.1.2 mrg done' ; \ 158 1.1.1.2 mrg exit 0 ) 159 1.1 mrg 160 1.1.1.8 mrg # The Debian package stopped installing xterm's desktop files; a 161 1.1.1.8 mrg # subsequent revision added that back with limitations. xterm's 162 1.1.1.8 mrg # configure script checks for categories which are used by other 163 1.1.1.8 mrg # terminal emulators. The Debian package overrides that to a single 164 1.1.1.8 mrg # category. 165 1.1 mrg # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=486317 166 1.1 mrg $(MAKE) install-desktop \ 167 1.1.1.8 mrg DESKTOP_FLAGS="--dir $(MY_DESKTOP)" 168 1.1 mrg 169 1.1 mrg ( cd $(DSTDIR)$(PKG_DESKTOP) \ 170 1.1 mrg && $(SHELL) -c 'for p in *;do \ 171 1.1.1.2 mrg test -f $(PKG_DESKTOP)/$$p && \ 172 1.1.1.2 mrg diff -u $(PKG_DESKTOP)/$$p $$p; \ 173 1.1 mrg test -n "$(PKG_SUFFIX)" && mv $$p `basename $$p .desktop`$(PKG_SUFFIX).desktop; \ 174 1.1 mrg done' ; \ 175 1.1 mrg exit 0 ) 176 1.1 mrg 177 1.1.1.3 mrg dh_icons 178 1.1.1.3 mrg 179 1.1 mrg # Build architecture-dependent files here. 180 1.1 mrg binary-arch: build install 181 1.1 mrg dh_testdir 182 1.1 mrg dh_testroot 183 1.1 mrg dh_installdebconf 184 1.1.1.8 mrg dh_lintian 185 1.1 mrg dh_installdocs 186 1.1 mrg dh_installmenu 187 1.1 mrg dh_installmime 188 1.1 mrg dh_installexamples tektests vttests 189 1.1 mrg dh_installchangelogs 190 1.1 mrg dh_install 191 1.1 mrg dh_link 192 1.1 mrg dh_strip 193 1.1.1.4 mrg dh_compress -Xexamples 194 1.1 mrg dh_fixperms 195 1.1 mrg dh_installdeb 196 1.1 mrg dh_shlibdeps 197 1.1 mrg dh_gencontrol 198 1.1 mrg dh_md5sums 199 1.1 mrg dh_builddeb 200 1.1 mrg 201 1.1 mrg binary: binary-indep binary-arch 202 1.1 mrg .PHONY: build clean binary-indep binary-arch binary install install-stamp 203