2 # Made with the aid of dh_make, by Craig Small
3 # Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess.
4 # Some lines taken from debmake, by Cristoph Lameter.
6 # Uncomment this to turn on verbose mode.
10 PACKAGES.indep = ncurses6-doc ncurses6-doc-html
11 PACKAGES.arch = ncurses6 ncursest6
13 # These are used for cross-compiling and for saving the configure script
14 # from having to guess our platform (since we know it already)
15 DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
16 DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
18 CC_NORMAL = -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion
19 CC_STRICT = $(CC_NORMAL) -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic
23 MYDATA=/usr/local/ncurses/share/terminfo
24 NORMAL_DIR=$(CURDIR)/debian/ncurses$(MY_ABI)
25 THREAD_DIR=$(CURDIR)/debian/ncursest$(MY_ABI)
27 CFLAGS = $(shell dpkg-buildflags --get CFLAGS) $(CC_NORMAL)
28 CXXFLAGS = $(shell dpkg-buildflags --get CXXFLAGS)
29 CPPFLAGS = $(shell dpkg-buildflags --get CPPFLAGS)
30 LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS)
32 ifneq ($(MY_DIR),/usr)
33 RPATH_ENV = RPATH_LIST=../lib:$(MY_DIR)/lib
34 RPATH_OPT = --enable-rpath
37 RPATH_OPT = --disable-rpath --disable-rpath-hack
40 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
45 ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
54 CPPFLAGS="$(CPPFLAGS)" \
55 LDFLAGS="$(LDFLAGS)" ../../configure $(RPATH_OPT) \
56 --host=$(DEB_HOST_GNU_TYPE) \
57 --build=$(DEB_BUILD_GNU_TYPE) \
59 --with-default-terminfo-dir=$(MYDATA) \
60 --with-terminfo-dirs=$(MYDATA):/usr/share/terminfo \
70 --enable-wgetch-events \
72 --program-suffix=$(MY_ABI) \
74 --with-abi-version=$(MY_ABI) \
76 --with-extra-suffix=$(MY_ABI) \
82 --with-terminfo-dirs=/lib/terminfo:/usr/share/terminfo \
83 --with-versioned-syms \
84 --with-xterm-kbs=DEL \
89 NCURSES6_DIR = $(CURDIR)/debian/ncurses6
90 NCURSEST6_DIR = $(CURDIR)/debian/ncursest6
92 .PHONY: all config build install binary clean config-indep config-arch \
93 build-indep build-arch install-indep install-arch binary-indep \
98 config: config-indep config-arch
99 build: build-indep build-arch
100 install: install-indep install-arch
101 binary: binary-indep binary-arch
108 config-indep: $(PACKAGES.indep:%=config-%-stamp)
109 config-arch: $(PACKAGES.arch:%=config-%-stamp)
111 build-indep: $(PACKAGES.indep:%=build-%-stamp)
112 build-arch: $(PACKAGES.arch:%=build-%-stamp)
114 install-indep: $(PACKAGES.indep:%=install-%-stamp)
115 install-arch: $(PACKAGES.arch:%=install-%-stamp)
117 config-ncurses6-stamp:
121 cd t/ncurses6; $(configure)
124 config-ncursest6-stamp:
128 cd t/ncursest6; $(configure) \
131 --program-suffix=t$(MY_ABI) \
135 config-ncurses6-doc-stamp \
136 config-ncurses6-doc-html-stamp: config-ncurses6-stamp
139 build-ncurses6-stamp: config-ncurses6-stamp
142 $(MAKE) -C t/ncurses6
146 build-ncursest6-stamp: config-ncursest6-stamp
149 $(MAKE) -C t/ncursest6
153 build-ncurses6-doc-stamp \
154 build-ncurses6-doc-html-stamp: build-ncurses6-stamp
157 install-ncurses6-stamp: build-ncurses6-stamp
160 dh_installdirs $(verbose)
161 dh_prep $(verbose) -pncurses6
163 $(MAKE) -C t/ncurses6 install.libs install.progs DESTDIR=$(NCURSES6_DIR)
164 $(MAKE) -C t/ncurses6/test ncurses LOCAL_LIBDIR=$(MY_DIR)/lib
166 mv t/ncurses6/test/ncurses $(NCURSES6_DIR)$(MY_DIR)/bin/ncurses$(MY_ABI)
170 install-ncursest6-stamp: build-ncursest6-stamp
173 dh_installdirs $(verbose)
174 dh_prep $(verbose) -pncursest6
176 $(MAKE) -C t/ncursest6 install.libs install.progs DESTDIR=$(NCURSEST6_DIR)
177 $(MAKE) -C t/ncursest6/test ncurses LOCAL_LIBDIR=$(MY_DIR)/lib
179 mv t/ncursest6/test/ncurses $(NCURSEST6_DIR)$(MY_DIR)/bin/ncursest$(MY_ABI)
183 install-ncurses6-doc-stamp: build-ncurses6-stamp
186 dh_installdirs $(verbose)
187 dh_prep $(verbose) -pncurses6-doc
189 $(MAKE) -C t/ncurses6 install.man DESTDIR=$(NCURSES6_DIR)-doc
193 HTML_DESTDIR=$(NCURSES6_DIR)-doc-html/usr/share/ncurses6-doc-html
194 install-ncurses6-doc-html-stamp: build-ncurses6-stamp
197 dh_installdirs $(verbose)
198 dh_prep $(verbose) -pncurses6-doc-html
200 cd doc/html && find * -type d | sort | xargs -I{} mkdir -p -v $(HTML_DESTDIR)/{}
201 cd doc/html && find * -type f -name '*.html' | sort | xargs -I{} install -m 644 -p -v -T {} $(HTML_DESTDIR)/{}
205 # Build architecture-independent files here.
206 binary-indep: install-indep
207 ifneq ($(PACKAGES.indep),)
208 rm -f $(PACKAGES.indep:%=install-%-stamp)
211 dh_lintian $(verbose) $(PACKAGES.arch:%=-p%)
212 dh_installdocs $(verbose) $(PACKAGES.indep:%=-p%)
213 dh_installman $(verbose) $(PACKAGES.indep:%=-p%)
214 dh_installexamples $(verbose) $(PACKAGES.indep:%=-p%)
215 dh_installchangelogs $(verbose) $(PACKAGES.indep:%=-p%) NEWS
216 dh_compress $(verbose) $(PACKAGES.indep:%=-p%)
217 dh_fixperms $(verbose) $(PACKAGES.indep:%=-p%)
218 dh_installdeb $(verbose) $(PACKAGES.indep:%=-p%)
219 dh_gencontrol $(verbose) $(PACKAGES.indep:%=-p%)
220 dh_md5sums $(verbose) $(PACKAGES.indep:%=-p%)
221 dh_builddeb $(verbose) $(PACKAGES.indep:%=-p%)
224 # Build architecture-dependent files here.
225 binary-arch: install-arch
226 ifneq ($(PACKAGES.arch),)
227 rm -f $(PACKAGES.arch:%=install-%-stamp)
230 dh_lintian $(verbose) $(PACKAGES.arch:%=-p%)
231 dh_installdocs $(verbose) $(PACKAGES.arch:%=-p%)
232 dh_installchangelogs $(verbose) $(PACKAGES.arch:%=-p%) NEWS
233 dh_strip $(verbose) $(PACKAGES.arch:%=-p%)
234 dh_compress $(verbose) $(PACKAGES.arch:%=-p%)
235 dh_fixperms $(verbose) $(PACKAGES.arch:%=-p%)
236 dh_installdeb $(verbose) $(PACKAGES.arch:%=-p%)
237 dh_makeshlibs $(verbose) $(PACKAGES.arch:%=-p%)
238 dh_shlibdeps $(verbose) $(PACKAGES.arch:%=-p%)
239 dh_gencontrol $(verbose) $(PACKAGES.arch:%=-p%)
240 dh_md5sums $(verbose) $(PACKAGES.arch:%=-p%)
241 dh_builddeb $(verbose) $(PACKAGES.arch:%=-p%)