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