]> git.ipfire.org Git - thirdparty/e2fsprogs.git/blame - debian/rules
enable thread sanitizer if the builder wants it
[thirdparty/e2fsprogs.git] / debian / rules
CommitLineData
4d8f08f4
TT
1#! /usr/bin/make -f
2# -*- makefile -*-
3#
4# Invoke each target with `./debian/rules <target>'. All targets should be
5# invoked with the package root as the current directory.
6#
7# The `binary' target must be run as root, as it needs to install files with
8# specific ownerships.
9
965e82cb
TT
10.PHONY: binary binary-arch binary-indep build build-arch build-indep \
11 build-bf build-std install install-udeb \
12 clean checkroot mrproper debug_flags debian-files
13
697e21fa
TT
14export DEB_BUILD_MAINT_OPTIONS ?= hardening=+all
15
4d8f08f4 16# be paranoid
d973c18b 17export LC_ALL ?= C
4d8f08f4 18
f85cc2a8
TT
19# These are used for cross-compiling and for saving the configure script
20# from having to guess our platform (since we know it already)
d973c18b
TT
21DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
22DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
23DEB_HOST_OS ?= $(shell dpkg-architecture -qDEB_HOST_OS)
24DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
25DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
e84a4a61 26DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
716ff03b 27DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
4d8f08f4 28
becb01ce
TT
29# Allow distro-specific behaviour
30DISTRO :=$(shell sed -ne '/DISTRIB_ID/s/.*=//p' /etc/lsb-release 2>/dev/null || echo Debian)
becb01ce 31
716ff03b 32ifeq ($(DEB_HOST_ARCH_OS), hurd)
d3c05957
TT
33SKIP_FUSE2FS=yes
34endif
35
8c72de15
SM
36ifneq ($(filter pkg.e2fsprogs.no-fuse2fs,$(DEB_BUILD_PROFILES)),)
37SKIP_FUSE2FS=yes
38endif
39
f704ab1c
TT
40ifneq ($(filter pkg.e2fsprogs.no-static-e2fsck,$(DEB_BUILD_PROFILES)),)
41SKIP_E2FSCK_STATIC=yes
42endif
43
0e253c1a
SM
44ifneq ($(filter noudeb,$(DEB_BUILD_PROFILES)),)
45SKIP_UDEB=yes
46endif
47
a6728639
TT
48DH_VERSION := $(shell dpkg-query -W -f '$${Version}' debhelper)
49
50# USE_DBGSYM :=
51USE_DBGSYM ?= $(shell if dpkg --compare-versions $(DH_VERSION) ">=" 9.20160114 ; then echo yes ; fi)
52
53ifeq ($(USE_DBGSYM),yes)
54dh_strip_args = -p$(1) --dbgsym-migration='$(1)-dbg (<= 1.43-1)'
55dh_strip_args2 = -p$(1) --dbgsym-migration='$(2)-dbg (<= 1.43-1)'
56else
57dh_strip_args = -p$(1) --dbg-package=$(1)-dbg
58dh_strip_args2 = -p$(1) --dbg-package=$(2)-dbg
146649cd 59DBG_PACKAGES += -pe2fsprogs-dbg -plibext2fs-dbg -plibcom-err2-dbg -plibss2-dbg
f704ab1c 60export DEB_BUILD_PROFILES += pkg.e2fsprogs.legacy-dbg
a6728639 61endif
f704ab1c 62
4d8f08f4 63# find the version for the main package, from changelog file
56eb4d47 64MAIN_VERSION = $(shell head -n 1 debian/changelog | cut '-d ' -f 2 | sed 's/[()]//g')
e5b16437
TT
65# find versions for libraries going into their own packages, from their Makefile.in's,
66# and sonames for all libs
d973c18b
TT
67COMERR_VERSION ?= $(shell grep ELF_VERSION lib/et/Makefile.in | cut '-d ' -f3)
68COMERR_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/et/Makefile.in | cut '-d ' -f3)
69SS_VERSION ?= $(shell grep ELF_VERSION lib/ss/Makefile.in | cut '-d ' -f3)
70SS_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/ss/Makefile.in | cut '-d ' -f3)
95f65c3d 71
d973c18b
TT
72EXT2FS_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/ext2fs/Makefile.in | cut '-d ' -f3)
73E2P_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/e2p/Makefile.in | cut '-d ' -f3)
4d8f08f4 74
d973c18b 75package ?= e2fsprogs
4d8f08f4 76
d973c18b
TT
77topdir ?= $(shell pwd)
78debdir ?= ${topdir}/debian
79tmpdir ?= ${debdir}/tmp
80udebdir ?= ${debdir}/e2fsprogs-udeb
146649cd 81libcomerrdir ?= ${debdir}/libcom-err${COMERR_SOVERSION}
d973c18b 82comerrdevdir ?= ${debdir}/comerr-dev
146649cd 83libcomerrdbgdir ?= ${debdir}/libcom-err2-dbg
d973c18b
TT
84libssdir ?= ${debdir}/libss${SS_SOVERSION}
85ssdevdir ?= ${debdir}/ss-dev
86libssdbgdir ?= ${debdir}/libss2-dbg
146649cd
TT
87libext2dir ?= ${debdir}/libext2fs2
88libext2devdir ?= ${debdir}/libext2fs-dev
89libext2dbgdir ?= ${debdir}/libext2fs2-dbg
d973c18b
TT
90maindir ?= ${debdir}/e2fsprogs
91e2fsckstaticdir ?= ${debdir}/e2fsck-static
92debugdir ?= ${debdir}/e2fsprogs-dbg
93stdbuilddir ?= ${debdir}/BUILD-STD
d973c18b
TT
94# docdir ?= ${maindir}/usr/share/doc/${package}
95MANDIR ?= /usr/share/man
96mandir ?= ${tmpdir}${MANDIR}
97
98UDEB_NAME ?= $(package)-udeb_$(MAIN_VERSION)_$(DEB_HOST_ARCH).udeb
f704ab1c 99UDEB_PRIORITY ?= $(shell grep '^Package: e2fsprogs-udeb' debian/control -A 10 | grep ^Priority: | cut -d ' ' -f 2)
dd198d68 100
d973c18b
TT
101STAMPSDIR ?= debian/stampdir
102CFGSTDSTAMP ?= ${STAMPSDIR}/configure-std-stamp
103CFGBFSTAMP ?= ${STAMPSDIR}/configure-bf-stamp
d973c18b
TT
104BUILDSTDSTAMP ?= ${STAMPSDIR}/build-std-stamp
105BUILDBFSTAMP ?= ${STAMPSDIR}/build-bf-stamp
541d173d 106
d973c18b
TT
107INSTALL ?= install
108INSTALL_PROGRAM ?= $(INSTALL) -p -o root -g root -m 0755
1893e713 109
fbcb3a85
TT
110#ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
111#INSTALL_PROGRAM += -s
112#endif
1893e713 113
618dcd2c 114ifneq (,$(findstring update-symbols,$(DEB_BUILD_OPTIONS)))
146649cd 115SYMBOL_LIBS := libext2fs libcomerr2 libss2
618dcd2c
TT
116endif
117
d973c18b
TT
118DEFAULT_CFLAGS ?= -g -O2
119DEFAULT_LDFLAGS ?= -Wl,-Bsymbolic-functions
910fae94 120
95decc5c 121CFLAGS ?= $(shell if dpkg-buildflags > /dev/null 2>&1 ; then \
697e21fa 122 DEB_BUILD_MAINT_OPTIONS=$(DEB_BUILD_MAINT_OPTIONS) \
95decc5c
TT
123 dpkg-buildflags --get CFLAGS; else echo $(DEFAULT_CFLAGS) ; fi)
124LDFLAGS ?= $(shell if dpkg-buildflags > /dev/null 2>&1 ; then \
697e21fa 125 DEB_BUILD_MAINT_OPTIONS=$(DEB_BUILD_MAINT_OPTIONS) \
95decc5c
TT
126 dpkg-buildflags --get LDFLAGS; else echo $(DEFAULT_LDFLAGS) ; fi)
127CPPFLAGS ?= $(shell if dpkg-buildflags > /dev/null 2>&1 ; then \
697e21fa 128 DEB_BUILD_MAINT_OPTIONS=$(DEB_BUILD_MAINT_OPTIONS) \
95decc5c 129 dpkg-buildflags --get CPPFLAGS; fi)
910fae94 130
4d8f08f4 131ifeq (${DEB_HOST_ARCH},alpha)
0b5b9f90 132CFLAGS += -DHAVE_NETINET_IN_H
4d8f08f4 133else
0b5b9f90 134CFLAGS += -D__NO_STRING_INLINES
4d8f08f4
TT
135endif
136
fb8bcfcd 137E2FSCK_STATIC = ${stdbuilddir}/e2fsck/e2fsck.static
3e41608a 138
04f34e71
TT
139CFLAGS_SHLIB = $(CFLAGS)
140CFLAGS_STLIB = $(CFLAGS)
141LDFLAGS_SHLIB = $(LDFLAGS)
697e21fa
TT
142LDFLAGS_STATIC = $(filter-out -fPIE -fpie -pie,$(LDFLAGS))
143
2b561a67
TT
144ifneq ($(SKIP_UDEB),)
145SKIP_BF ?= yes
146endif
147
be241786
TT
148ifeq ($(SKIP_BF),yes)
149BUILD_BF =
150bfbuilddir ?= ${stdbuilddir}
151else
152BUILD_BF = build-bf
153bfbuilddir ?= ${debdir}/BUILD-BF
154endif
155
0b5b9f90 156BF_CFLAGS = -Os -fomit-frame-pointer
79786216 157
efeda9d5 158UTIL_CONF_FLAGS ?= --disable-fsck --disable-libblkid \
95f65c3d 159 --disable-libuuid --disable-uuidd
79786216 160
d3c05957 161ifneq ($(SKIP_FUSE2FS),)
5a0affdb
TT
162UTIL_CONF_FLAGS += --disable-fuse2fs
163endif
164
6e2393fd
TT
165BACKTRACE_CONF_FLAGS ?= $(shell if ${debdir}/scripts/test-backtrace ; then echo --disable-backtrace ; fi)
166
5e666e3d 167COMMON_CONF_FLAGS = --enable-lto --disable-ubsan --disable-addrsan \
bcca786b 168 --disable-threadsan --disable-e2initrd-helper \
efeda9d5 169 --infodir=/usr/share/info --enable-symlink-install \
e84a4a61
TT
170 --with-multiarch=$(DEB_HOST_MULTIARCH) \
171 $(BACKTRACE_CONF_FLAGS) $(UTIL_CONF_FLAGS)
79786216 172
efeda9d5
TT
173STD_CONF_FLAGS ?= --enable-elf-shlibs
174
175BF_CONF_FLAGS ?= --enable-elf-shlibs --disable-nls --disable-imager \
3dcb760f
TT
176 --disable-testio-debug --disable-uuidd --disable-tls \
177 --disable-tdb --disable-debugfs
79786216 178
a6728639
TT
179DBG_PACKAGES=
180
2b561a67
TT
181ifeq ($(SKIP_UDEB),)
182INSTALL_UDEB = install-udeb
2b561a67
TT
183endif
184
f704ab1c 185debian-files:
4aa7cff6
TT
186ifneq ($(USE_DBGSYM),yes)
187 if test ! -f debian/control.save; then \
188 mv debian/control debian/control.save ; \
189 cat debian/control.save debian/control.legacy-dbg \
190 >> debian/control ; \
191 fi
192endif
e54e7000
TT
193
194mrproper: clean
4aa7cff6
TT
195 if test -f debian/control.save; then \
196 mv debian/control.save debian/control ; \
197 fi
95f65c3d 198
541d173d 199${CFGSTDSTAMP}:
4d8f08f4 200 dh_testdir
6bb275aa
TT
201 if which dh_update_autotools_config > /dev/null 2>&1 ; then \
202 dh_update_autotools_config ;\
203 fi
541d173d 204
41b6ae60
TT
205 # Make sure we don't try to rebuild the configure scripts
206 find . -name configure | xargs touch
207
79786216
TT
208 mkdir -p ${stdbuilddir}
209ifeq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
be5a72da 210 cd ${stdbuilddir} && AWK=/usr/bin/awk \
98e858bf 211 ../../configure ${COMMON_CONF_FLAGS} ${STD_CONF_FLAGS} \
efeda9d5 212 ${EXTRA_CONF_FLAGS} CFLAGS="${CFLAGS}" CPPFLAGS="$(CPPFLAGS)" \
697e21fa
TT
213 LDFLAGS="$(LDFLAGS)" CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \
214 CFLAGS_STLIB="$(CFLAGS_STLIB)" \
215 LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \
216 LDFLAGS_STATIC="$(LDFLAGS_STATIC)"
79786216 217else
be5a72da 218 cd ${stdbuilddir} && AWK=/usr/bin/awk CC="${DEB_HOST_GNU_TYPE}-gcc" \
98e858bf 219 ../../configure ${COMMON_CONF_FLAGS} ${STD_CONF_FLAGS} \
efeda9d5
TT
220 ${EXTRA_CONF_FLAGS} --build=$(DEB_BUILD_GNU_TYPE) \
221 --host=$(DEB_HOST_GNU_TYPE) CFLAGS="${CFLAGS}" \
697e21fa
TT
222 CPPFLAGS="$(CPPFLAGS)" CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \
223 CFLAGS_STLIB="$(CFLAGS_STLIB)" \
224 LDFLAGS="$(LDFLAGS)" \
225 LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \
226 LDFLAGS_STATIC="$(LDFLAGS_STATIC)"
79786216 227endif
e5b16437 228
541d173d
TT
229 mkdir -p ${STAMPSDIR}
230 touch ${CFGSTDSTAMP}
4d8f08f4 231
541d173d 232${CFGBFSTAMP}:
4d8f08f4 233 dh_testdir
6bb275aa
TT
234 if which dh_update_autotools_config > /dev/null 2>&1 ; then \
235 dh_update_autotools_config ;\
236 fi
541d173d
TT
237 rm -f config.cache
238
79786216 239 mkdir -p ${bfbuilddir}
4d8f08f4 240ifeq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
be5a72da 241 cd ${bfbuilddir} && AWK=/usr/bin/awk \
98e858bf 242 ../../configure ${COMMON_CONF_FLAGS} ${BF_CONF_FLAGS} \
efeda9d5 243 ${EXTRA_CONF_FLAGS} CFLAGS="${CFLAGS} ${BF_CFLAGS}" \
697e21fa
TT
244 CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \
245 CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \
246 CFLAGS_STLIB="$(CFLAGS_STLIB)" \
247 LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \
248 LDFLAGS_STATIC="$(LDFLAGS_STATIC)"
4d8f08f4 249else
be5a72da 250 cd ${bfbuilddir} && AWK=/usr/bin/awk CC="${DEB_HOST_GNU_TYPE}-gcc" \
98e858bf 251 ../../configure ${COMMON_CONF_FLAGS} ${BF_CONF_FLAGS} \
efeda9d5
TT
252 ${EXTRA_CONF_FLAGS} --build=$(DEB_BUILD_GNU_TYPE) \
253 --host=$(DEB_HOST_GNU_TYPE) CFLAGS="${CFLAGS}" \
697e21fa
TT
254 CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \
255 CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \
256 CFLAGS_STLIB="$(CFLAGS_STLIB)" \
257 LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \
258 LDFLAGS_STATIC="$(LDFLAGS_STATIC)"
4d8f08f4 259endif
541d173d
TT
260 mkdir -p ${STAMPSDIR}
261 touch ${CFGBFSTAMP}
79786216 262
55e00a25
TT
263build-arch: build
264build-indep: build
bf26fae3 265build: build-std $(BUILD_BF)
79786216 266
541d173d
TT
267build-std: ${BUILDSTDSTAMP}
268${BUILDSTDSTAMP}: ${CFGSTDSTAMP}
79786216 269 dh_testdir
f921eda1 270 $(MAKE) -C ${stdbuilddir} V=1 all
f704ab1c 271ifneq ($(SKIP_E2FSCK_STATIC),yes)
cd056798 272 $(MAKE) -C ${stdbuilddir}/e2fsck V=1 e2fsck.static
a8ffb5c2 273endif
2c0e8c7a
TT
274 if ! test -d debian/orig-gmo ; then \
275 mkdir debian/orig-gmo ; \
276 mv po/*.gmo po/*.po debian/orig-gmo ; \
277 cp debian/orig-gmo/*.po po ; \
278 fi
f921eda1 279 $(MAKE) -C ${stdbuilddir}/po V=1 update-gmo
e5b16437 280
b79e338d
TT
281 ( cd ${stdbuilddir}/doc && $(MAKE) V=1 libext2fs.html )
282 ( cd ${stdbuilddir}/lib/et && $(MAKE) V=1 com_err.info com_err.html )
e5b16437 283
541d173d 284 touch ${BUILDSTDSTAMP}
79786216 285
541d173d
TT
286build-bf: ${BUILDBFSTAMP}
287${BUILDBFSTAMP}: ${CFGBFSTAMP}
79786216 288 dh_testdir
f921eda1
TT
289 $(MAKE) -C ${bfbuilddir} V=1 libs
290 $(MAKE) -C ${bfbuilddir}/e2fsck V=1 all
291 $(MAKE) -C ${bfbuilddir}/misc V=1 all
c1986ecb 292 $(MAKE) -C ${bfbuilddir}/resize V=1 all
541d173d 293 touch ${BUILDBFSTAMP}
4d8f08f4
TT
294
295clean:
296 dh_testdir
2c0e8c7a
TT
297 if test -d debian/orig-gmo ; then \
298 rm -f po/*.gmo po/*.po ; \
299 mv debian/orig-gmo/* po ; \
300 rmdir debian/orig-gmo ; \
301 fi
541d173d 302 rm -rf ${STAMPSDIR}
c1986ecb
TT
303 [ ! -f ${stdbuilddir}/Makefile ] || $(MAKE) -C ${stdbuilddir} V=1 distclean
304 [ ! -f ${bfbuilddir}/Makefile ] || $(MAKE) -C ${bfbuilddir} V=1 distclean
305 [ ! -f ${staticbuilddir}/Makefile ] || $(MAKE) -C ${staticbuilddir} V=1 distclean
f088231e 306 rm -rf ${stdbuilddir} ${bfbuilddir} ${staticbuilddir}
4534f8bc 307 rm -f debian/*.substvars
4d8f08f4
TT
308 dh_clean
309
965e82cb 310install: build
b90b826b
TT
311 dh_testdir
312 dh_testroot
ef797135 313 dh_prep
b90b826b 314 dh_installdirs
4d8f08f4 315
b90b826b 316 mkdir -p ${tmpdir}/sbin
c1986ecb 317 $(MAKE) -C ${stdbuilddir} V=1 install DESTDIR=${tmpdir} \
79786216
TT
318 INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true
319 # static libs and .h files
c1986ecb 320 $(MAKE) -C ${stdbuilddir} V=1 install-libs DESTDIR=${tmpdir} LDCONFIG=true
4d8f08f4 321
f704ab1c 322ifneq ($(SKIP_E2FSCK_STATIC),yes)
1893e713 323 # statically-linked fsck
a827a2a3 324 ${INSTALL_PROGRAM} $(E2FSCK_STATIC) ${tmpdir}/sbin
ec3bb41b 325 cp ${mandir}/man8/e2fsck.8 ${mandir}/man8/e2fsck.static.8
a8ffb5c2
FB
326endif
327
716ff03b 328ifeq ($(DEB_HOST_ARCH_OS), hurd)
b1c828e8
TT
329 ${INSTALL} -m 0644 misc/mke2fs-hurd.conf ${tmpdir}/etc/mke2fs.conf
330endif
331
2a4c77bc 332 dh_movefiles
15fdc401 333 test -z "`find ${tmpdir} -type f`"
2a4c77bc 334
62775dc5 335install-udeb: build
79786216
TT
336 dh_testdir
337 dh_testroot
79786216 338
c1986ecb 339 $(MAKE) -C ${bfbuilddir} V=1 install-shlibs-libs-recursive DESTDIR=${udebdir} \
62775dc5 340 INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true
c1986ecb 341 $(MAKE) -C ${bfbuilddir}/e2fsck V=1 install DESTDIR=${udebdir} \
62775dc5 342 INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true
c1986ecb 343 $(MAKE) -C ${bfbuilddir}/misc V=1 install DESTDIR=${udebdir} \
79786216 344 INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true
c1986ecb 345 $(MAKE) -C ${bfbuilddir}/resize V=1 install DESTDIR=${udebdir} \
8a8a12c1 346 INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true
2a4c77bc 347
62775dc5 348 rm -rf ${udebdir}/usr
e3075aea 349 find ${udebdir}/sbin -type f -a ! -name e2fsck \
8a8a12c1
TT
350 -a ! -name mke2fs -a ! -name tune2fs \
351 -a ! -name resize2fs -a ! -name badblocks -print | xargs rm
e3075aea 352
be241786
TT
353 (cd ${udebdir}/sbin; ln -sf e2fsck fsck.ext2 ; \
354 ln -sf e2fsck fsck.ext3 ; ln -sf e2fsck fsck.ext4 ; \
355 ln -sf mke2fs mkfs.ext2 ; ln -sf mke2fs mkfs.ext3 ; \
356 ln -sf mke2fs mkfs.ext4)
dd198d68 357
9b412579
TT
358binary-indep: install
359 dh_testdir
360 dh_testroot
361 dh_lintian -i
965e82cb 362 dh_installdocs -i
9b412579
TT
363 dh_installchangelogs -i
364 dh_fixperms -i
365 dh_compress -i
366 dh_installdeb -i
367 dh_gencontrol -i
368 dh_md5sums -i
369 dh_builddeb -i
370
2b561a67 371binary-arch: install $(INSTALL_UDEB)
b90b826b
TT
372 dh_testdir
373 dh_testroot
374
965e82cb 375 dh_lintian -a
79786216 376
b90b826b 377 # symlinks to prepare dh_installdocs run
1893e713 378
151c86ab
TT
379 mkdir -p ${debdir}/libss${SS_SOVERSION}/usr/share/doc/libss${SS_SOVERSION}
380 mkdir -p ${debdir}/ss-dev/usr/share/doc
b90b826b 381
146649cd 382 mkdir -p ${debdir}/libcom-err${COMERR_SOVERSION}/usr/share/doc/libcom-err${COMERR_SOVERSION}
151c86ab 383 mkdir -p ${debdir}/comerr-dev/usr/share/doc
4d8f08f4 384
146649cd
TT
385 mkdir -p ${debdir}/libext2fs2/usr/share/doc/libext2fs
386 mkdir -p ${debdir}/libext2fs-dev/usr/share/doc
4d8f08f4 387
965e82cb 388 dh_installdocs -a -Ne2fsprogs-udeb
b90b826b 389
4d8f08f4 390 # HTML docs
146649cd 391 $(INSTALL) -d ${debdir}/libext2fs-dev/usr/share/doc/libext2fs/html-info/
4534f8bc 392 $(INSTALL) -p -m 0644 ${stdbuilddir}/doc/*.html \
146649cd
TT
393 ${debdir}/libext2fs-dev/usr/share/doc/libext2fs/html-info/
394 $(INSTALL) -d ${debdir}/comerr-dev/usr/share/doc/libcom-err${COMERR_SOVERSION}/html-info/
4534f8bc 395 $(INSTALL) -p -m 0644 ${stdbuilddir}/lib/et/*.html \
146649cd 396 ${debdir}/comerr-dev/usr/share/doc/libcom-err${COMERR_SOVERSION}/html-info/
4d8f08f4
TT
397
398 # texinfo docs
146649cd 399 mkdir -p ${debdir}/comerr-dev/usr/share/doc/libcom-err${COMERR_SOVERSION}
b1e22d52 400 $(INSTALL) -p -m 0644 ${topdir}/doc/libext2fs.texinfo \
146649cd 401 ${debdir}/libext2fs-dev/usr/share/doc/libext2fs/libext2fs.texi
b1e22d52 402 $(INSTALL) -p -m 0644 ${topdir}/lib/et/com_err.texinfo \
146649cd 403 ${debdir}/comerr-dev/usr/share/doc/libcom-err${COMERR_SOVERSION}/com_err.texi
4d8f08f4 404
146649cd 405 $(INSTALL) -d ${debdir}/comerr-dev/usr/share/doc/libcom-err${COMERR_SOVERSION}/examples
b1e22d52 406 $(INSTALL) -p -m 0644 lib/ss/ss_err.et \
151c86ab 407 ${stdbuilddir}/lib/ext2fs/ext2_err.et \
146649cd 408 ${debdir}/comerr-dev/usr/share/doc/libcom-err${COMERR_SOVERSION}/examples
b1e22d52
TT
409 $(INSTALL) -d ${debdir}/ss-dev/usr/share/doc/libss${SS_SOVERSION}/examples
410 $(INSTALL) -p -m 0644 debugfs/debug_cmds.ct \
151c86ab
TT
411 ${debdir}/ss-dev/usr/share/doc/libss${SS_SOVERSION}/examples
412
541d173d 413 dh_installinfo -pcomerr-dev ${stdbuilddir}/lib/et/com_err.info
146649cd 414 dh_installinfo -plibext2fs-dev ${stdbuilddir}/doc/libext2fs.info
4d8f08f4 415
965e82cb
TT
416 dh_installchangelogs -a
417 dh_fixperms -a
a6728639 418 dh_strip $(call dh_strip_args,e2fsprogs)
f704ab1c 419ifneq ($(SKIP_E2FSCK_STATIC),yes)
a6728639 420 dh_strip $(call dh_strip_args2,e2fsck-static,e2fsprogs)
2b561a67 421endif
146649cd 422 dh_strip $(call dh_strip_args,libext2fs2)
a6728639 423 dh_strip $(call dh_strip_args,libss${SS_SOVERSION})
146649cd 424 dh_strip $(call dh_strip_args,libcom-err${COMERR_SOVERSION})
965e82cb 425 dh_strip -a
fbcb3a85 426
649bd289 427 # dpkg symbol handling
95f65c3d 428 for i in $(SYMBOL_LIBS); \
649bd289
TT
429 do \
430 echo "Generating symbols for $$i..."; \
431 dpkg-gensymbols -p$$i -Pdebian/$$i > debian/$$i.tmp-patch; \
432 cat debian/$$i.tmp-patch; \
433 patch debian/$$i.symbols < debian/$$i.tmp-patch; \
434 /bin/rm debian/$$i.tmp-patch; \
435 done
649bd289 436
965e82cb 437 dh_compress -a
4d8f08f4 438
965e82cb 439 dh_makeshlibs -a --add-udeb=e2fsprogs-udeb
b905cd4f 440 dh_installsystemd -p e2fsprogs
6fe7d115 441
146649cd
TT
442 $(INSTALL) -D -p -m644 debian/e2fsprogs-udeb.lintian-overrides \
443 debian/e2fsprogs-udeb/usr/share/lintian/overrides/e2fsprogs-udeb
965e82cb
TT
444 dh_installdeb -a
445 dh_shlibdeps -a -l${stdbuilddir}/lib
151c86ab
TT
446 dh_shlibdeps -pe2fsprogs -l${stdbuilddir}/lib \
447 -u"-Ldebian/e2fsprogs.shlibs.local"
2b561a67 448ifeq ($(SKIP_UDEB),)
7a15db23
TT
449 dh_shlibdeps -pe2fsprogs-udeb -l${stdbuilddir}/lib \
450 -u"-Ldebian/e2fsprogs-udeb.shlibs.local"
2b561a67 451endif
d3c05957 452ifeq ($(SKIP_FUSE2FS),)
d1335619
TT
453 dh_shlibdeps -pfuse2fs -l${stdbuilddir}/lib \
454 -u"-Ldebian/e2fsprogs.shlibs.local"
d3c05957 455endif
b90b826b 456
965e82cb
TT
457 dh_gencontrol -a -Ncomerr-dev -Nss-dev -Ne2fsprogs-udeb
458 dh_gencontrol -pcomerr-dev \
d8a1a674 459 -u '-v${COMERR_VERSION}-${MAIN_VERSION} -VmainBinary=${MAIN_VERSION}'
965e82cb 460 dh_gencontrol -pss-dev \
d8a1a674 461 -u '-v${SS_VERSION}-${MAIN_VERSION} -VmainBinary=${MAIN_VERSION}'
2b561a67 462ifeq ($(SKIP_UDEB),)
965e82cb 463 dh_gencontrol -pe2fsprogs-udeb -- -fdebian/files~
2b561a67 464endif
b90b826b 465
2b561a67 466ifeq ($(SKIP_UDEB),)
bf5498cc 467 dpkg-distaddfile $(UDEB_NAME) debian-installer $(UDEB_PRIORITY)
95f65c3d 468endif
965e82cb
TT
469 dh_md5sums -a
470 dh_builddeb -a
4d8f08f4 471
965e82cb 472binary: binary-indep binary-arch
910fae94
TT
473
474debug_flags:
475 @echo CFLAGS is $(CFLAGS)
476 @echo LDFLAGS is $(LDFLAGS)
477 @echo CPPFLAGS is $(CPPFLAGS)