]>
Commit | Line | Data |
---|---|---|
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 | ||
d973c18b TT |
10 | -include debian/rules.custom |
11 | ||
697e21fa TT |
12 | export DEB_BUILD_MAINT_OPTIONS ?= hardening=+all |
13 | ||
4d8f08f4 | 14 | # be paranoid |
d973c18b | 15 | export LC_ALL ?= C |
4d8f08f4 | 16 | |
f85cc2a8 TT |
17 | # These are used for cross-compiling and for saving the configure script |
18 | # from having to guess our platform (since we know it already) | |
d973c18b TT |
19 | DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) |
20 | DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) | |
21 | DEB_HOST_OS ?= $(shell dpkg-architecture -qDEB_HOST_OS) | |
22 | DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) | |
23 | DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) | |
24 | DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null) | |
4d8f08f4 | 25 | |
becb01ce TT |
26 | # Allow distro-specific behaviour |
27 | DISTRO :=$(shell sed -ne '/DISTRIB_ID/s/.*=//p' /etc/lsb-release 2>/dev/null || echo Debian) | |
becb01ce | 28 | UTIL_LINUX_NG ?= yes |
becb01ce | 29 | |
d3c05957 TT |
30 | ifeq ($(DEB_BUILD_GNU_SYSTEM), gnu) |
31 | SKIP_FUSE2FS=yes | |
32 | endif | |
33 | ||
a6728639 TT |
34 | DH_VERSION := $(shell dpkg-query -W -f '$${Version}' debhelper) |
35 | ||
36 | # USE_DBGSYM := | |
37 | USE_DBGSYM ?= $(shell if dpkg --compare-versions $(DH_VERSION) ">=" 9.20160114 ; then echo yes ; fi) | |
38 | ||
39 | ifeq ($(USE_DBGSYM),yes) | |
40 | dh_strip_args = -p$(1) --dbgsym-migration='$(1)-dbg (<= 1.43-1)' | |
41 | dh_strip_args2 = -p$(1) --dbgsym-migration='$(2)-dbg (<= 1.43-1)' | |
42 | else | |
43 | dh_strip_args = -p$(1) --dbg-package=$(1)-dbg | |
44 | dh_strip_args2 = -p$(1) --dbg-package=$(2)-dbg | |
45 | endif | |
4d8f08f4 | 46 | # find the version for the main package, from changelog file |
56eb4d47 | 47 | MAIN_VERSION = $(shell head -n 1 debian/changelog | cut '-d ' -f 2 | sed 's/[()]//g') |
e5b16437 TT |
48 | # find versions for libraries going into their own packages, from their Makefile.in's, |
49 | # and sonames for all libs | |
d973c18b TT |
50 | COMERR_VERSION ?= $(shell grep ELF_VERSION lib/et/Makefile.in | cut '-d ' -f3) |
51 | COMERR_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/et/Makefile.in | cut '-d ' -f3) | |
52 | SS_VERSION ?= $(shell grep ELF_VERSION lib/ss/Makefile.in | cut '-d ' -f3) | |
53 | SS_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/ss/Makefile.in | cut '-d ' -f3) | |
95f65c3d TT |
54 | |
55 | ifneq ($(UTIL_LINUX_NG),yes) | |
d973c18b TT |
56 | UUID_VERSION ?= $(shell grep ELF_VERSION lib/uuid/Makefile.in | cut '-d ' -f3) |
57 | UUID_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/uuid/Makefile.in | cut '-d ' -f3) | |
95f65c3d | 58 | |
d973c18b TT |
59 | BLKID_VERSION ?= $(shell grep ELF_VERSION lib/blkid/Makefile.in | cut '-d ' -f3) |
60 | BLKID_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/blkid/Makefile.in | cut '-d ' -f3) | |
95f65c3d TT |
61 | endif |
62 | ||
d973c18b TT |
63 | EXT2FS_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/ext2fs/Makefile.in | cut '-d ' -f3) |
64 | E2P_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/e2p/Makefile.in | cut '-d ' -f3) | |
4d8f08f4 | 65 | |
d973c18b | 66 | package ?= e2fsprogs |
4d8f08f4 | 67 | |
d973c18b TT |
68 | topdir ?= $(shell pwd) |
69 | debdir ?= ${topdir}/debian | |
70 | tmpdir ?= ${debdir}/tmp | |
71 | udebdir ?= ${debdir}/e2fsprogs-udeb | |
95f65c3d | 72 | ifneq ($(UTIL_LINUX_NG),yes) |
d973c18b TT |
73 | blkidudebdir ?= ${debdir}/libblkid1-udeb |
74 | uuidudebdir ?= ${debdir}/libuuid1-udeb | |
95f65c3d | 75 | endif |
d973c18b TT |
76 | libcomerrdir ?= ${debdir}/libcomerr${COMERR_SOVERSION} |
77 | comerrdevdir ?= ${debdir}/comerr-dev | |
78 | libcomerrdbgdir ?= ${debdir}/libcomerr2-dbg | |
79 | libssdir ?= ${debdir}/libss${SS_SOVERSION} | |
80 | ssdevdir ?= ${debdir}/ss-dev | |
81 | libssdbgdir ?= ${debdir}/libss2-dbg | |
95f65c3d | 82 | ifneq ($(UTIL_LINUX_NG),yes) |
d973c18b TT |
83 | libblkiddir ?= ${debdir}/libblkid${BLKID_SOVERSION} |
84 | libblkiddevdir ?= ${debdir}/libblkid-dev | |
85 | libblkiddbgdir ?= ${debdir}/libblkid1-dbg | |
86 | libuuiddir ?= ${debdir}/libuuid${UUID_SOVERSION} | |
87 | uuiddevdir ?= ${debdir}/uuid-dev | |
88 | libuuiddbgdir ?= ${debdir}/libuuid1-dbg | |
89 | uuidruntimedir ?= ${debdir}/uuid-runtime | |
90 | uuidruntimedbgdir ?= ${debdir}/uuid-runtime-dbg | |
95f65c3d | 91 | endif |
d973c18b TT |
92 | libext2dir ?= ${debdir}/e2fslibs |
93 | libext2devdir ?= ${debdir}/e2fslibs-dev | |
94 | libext2dbgdir ?= ${debdir}/e2fslibs-dbg | |
95 | maindir ?= ${debdir}/e2fsprogs | |
96 | e2fsckstaticdir ?= ${debdir}/e2fsck-static | |
97 | debugdir ?= ${debdir}/e2fsprogs-dbg | |
98 | stdbuilddir ?= ${debdir}/BUILD-STD | |
d973c18b TT |
99 | # docdir ?= ${maindir}/usr/share/doc/${package} |
100 | MANDIR ?= /usr/share/man | |
101 | mandir ?= ${tmpdir}${MANDIR} | |
102 | ||
103 | UDEB_NAME ?= $(package)-udeb_$(MAIN_VERSION)_$(DEB_HOST_ARCH).udeb | |
104 | UDEB_PRIORITY ?= $(shell grep '^Package: e2fsprogs-udeb' debian/control.in -A 10 | grep ^Priority: | cut -d ' ' -f 2) | |
dd198d68 | 105 | |
95f65c3d | 106 | ifneq ($(UTIL_LINUX_NG),yes) |
d973c18b TT |
107 | BLKID_UDEB_NAME ?= libblkid1-udeb_$(MAIN_VERSION)_$(DEB_HOST_ARCH).udeb |
108 | BLKID_UDEB_PRIORITY ?= $(shell grep '^Package: libblkid1-udeb' debian/control.in -A 10 | grep ^Priority: | cut -d ' ' -f 2) | |
417781af | 109 | |
d973c18b TT |
110 | UUID_UDEB_NAME ?= libuuid1-udeb_$(MAIN_VERSION)_$(DEB_HOST_ARCH).udeb |
111 | UUID_UDEB_PRIORITY ?= $(shell grep '^Package: libuuid1-udeb' debian/control.in -A 10 | grep ^Priority: | cut -d ' ' -f 2) | |
95f65c3d | 112 | endif |
e254d05b | 113 | |
d973c18b TT |
114 | STAMPSDIR ?= debian/stampdir |
115 | CFGSTDSTAMP ?= ${STAMPSDIR}/configure-std-stamp | |
116 | CFGBFSTAMP ?= ${STAMPSDIR}/configure-bf-stamp | |
d973c18b TT |
117 | BUILDSTDSTAMP ?= ${STAMPSDIR}/build-std-stamp |
118 | BUILDBFSTAMP ?= ${STAMPSDIR}/build-bf-stamp | |
541d173d | 119 | |
d973c18b TT |
120 | INSTALL ?= install |
121 | INSTALL_PROGRAM ?= $(INSTALL) -p -o root -g root -m 0755 | |
1893e713 | 122 | |
fbcb3a85 TT |
123 | #ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) |
124 | #INSTALL_PROGRAM += -s | |
125 | #endif | |
1893e713 | 126 | |
618dcd2c TT |
127 | ifneq (,$(findstring update-symbols,$(DEB_BUILD_OPTIONS))) |
128 | SYMBOL_LIBS := e2fslibs libcomerr2 libss2 | |
129 | ifneq ($(UTIL_LINUX_NG),yes) | |
130 | SYMBOL_LIBS += libblkid1 libuuid1 | |
131 | endif | |
132 | endif | |
133 | ||
d973c18b TT |
134 | DEFAULT_CFLAGS ?= -g -O2 |
135 | DEFAULT_LDFLAGS ?= -Wl,-Bsymbolic-functions | |
910fae94 | 136 | |
95decc5c | 137 | CFLAGS ?= $(shell if dpkg-buildflags > /dev/null 2>&1 ; then \ |
697e21fa | 138 | DEB_BUILD_MAINT_OPTIONS=$(DEB_BUILD_MAINT_OPTIONS) \ |
95decc5c TT |
139 | dpkg-buildflags --get CFLAGS; else echo $(DEFAULT_CFLAGS) ; fi) |
140 | LDFLAGS ?= $(shell if dpkg-buildflags > /dev/null 2>&1 ; then \ | |
697e21fa | 141 | DEB_BUILD_MAINT_OPTIONS=$(DEB_BUILD_MAINT_OPTIONS) \ |
95decc5c TT |
142 | dpkg-buildflags --get LDFLAGS; else echo $(DEFAULT_LDFLAGS) ; fi) |
143 | CPPFLAGS ?= $(shell if dpkg-buildflags > /dev/null 2>&1 ; then \ | |
697e21fa | 144 | DEB_BUILD_MAINT_OPTIONS=$(DEB_BUILD_MAINT_OPTIONS) \ |
95decc5c | 145 | dpkg-buildflags --get CPPFLAGS; fi) |
910fae94 | 146 | |
4d8f08f4 | 147 | ifeq (${DEB_HOST_ARCH},alpha) |
0b5b9f90 | 148 | CFLAGS += -DHAVE_NETINET_IN_H |
4d8f08f4 | 149 | else |
0b5b9f90 | 150 | CFLAGS += -D__NO_STRING_INLINES |
4d8f08f4 TT |
151 | endif |
152 | ||
fb8bcfcd | 153 | E2FSCK_STATIC = ${stdbuilddir}/e2fsck/e2fsck.static |
3e41608a | 154 | |
04f34e71 TT |
155 | CFLAGS_SHLIB = $(CFLAGS) |
156 | CFLAGS_STLIB = $(CFLAGS) | |
157 | LDFLAGS_SHLIB = $(LDFLAGS) | |
697e21fa TT |
158 | LDFLAGS_STATIC = $(filter-out -fPIE -fpie -pie,$(LDFLAGS)) |
159 | ||
2b561a67 TT |
160 | ifneq ($(SKIP_UDEB),) |
161 | SKIP_BF ?= yes | |
162 | endif | |
163 | ||
be241786 TT |
164 | ifeq ($(SKIP_BF),yes) |
165 | BUILD_BF = | |
166 | bfbuilddir ?= ${stdbuilddir} | |
167 | else | |
168 | BUILD_BF = build-bf | |
169 | bfbuilddir ?= ${debdir}/BUILD-BF | |
170 | endif | |
171 | ||
0b5b9f90 | 172 | BF_CFLAGS = -Os -fomit-frame-pointer |
79786216 | 173 | |
95f65c3d | 174 | ifeq ($(UTIL_LINUX_NG),yes) |
efeda9d5 | 175 | UTIL_CONF_FLAGS ?= --disable-fsck --disable-libblkid \ |
95f65c3d TT |
176 | --disable-libuuid --disable-uuidd |
177 | else | |
efeda9d5 TT |
178 | UTIL_CONF_FLAGS ?= --enable-fsck --enable-libblkid \ |
179 | --enable-libuuid --enable-uuidd | |
95f65c3d | 180 | endif |
79786216 | 181 | |
d3c05957 | 182 | ifneq ($(SKIP_FUSE2FS),) |
5a0affdb TT |
183 | UTIL_CONF_FLAGS += --disable-fuse2fs |
184 | endif | |
185 | ||
55e00a25 | 186 | ifneq ($(strip $(DEB_HOST_MULTIARCH)),) |
d973c18b | 187 | MULTIARCH_CONF ?= --with-multiarch=$(DEB_HOST_MULTIARCH) |
55e00a25 TT |
188 | # This doesn't work yet because gdb and lintian don't expect and/or |
189 | # don't work with /usr/lib/<triplet>/debug | |
190 | #USRLIB = /usr/lib/$(DEB_HOST_MULTIARCH) | |
d973c18b | 191 | USRLIB ?= /usr/lib |
55e00a25 | 192 | else |
d973c18b | 193 | USRLIB ?= /usr/lib |
55e00a25 TT |
194 | endif |
195 | ||
6e2393fd TT |
196 | BACKTRACE_CONF_FLAGS ?= $(shell if ${debdir}/scripts/test-backtrace ; then echo --disable-backtrace ; fi) |
197 | ||
efeda9d5 TT |
198 | COMMON_CONF_FLAGS = --disable-e2initrd-helper --enable-quota \ |
199 | --infodir=/usr/share/info --enable-symlink-install \ | |
200 | $(MULTIARCH_CONF) $(BACKTRACE_CONF_FLAGS) $(UTIL_CONF_FLAGS) | |
79786216 | 201 | |
efeda9d5 TT |
202 | STD_CONF_FLAGS ?= --enable-elf-shlibs |
203 | ||
204 | BF_CONF_FLAGS ?= --enable-elf-shlibs --disable-nls --disable-imager \ | |
3dcb760f TT |
205 | --disable-testio-debug --disable-uuidd --disable-tls \ |
206 | --disable-tdb --disable-debugfs | |
79786216 | 207 | |
95f65c3d | 208 | M4_ARGS= |
a6728639 TT |
209 | DBG_PACKAGES= |
210 | ||
211 | ifeq ($(USE_DBGSYM),yes) | |
212 | M4_ARGS+=-DUSE_DBGSYM | |
213 | else | |
214 | DBG_PACKAGES += -pe2fsprogs-dbg -pe2fslibs-dbg -plibcomerr2-dbg -plibss2-dbg | |
215 | M4_ARGS+=-UUSE_DBGSYM | |
216 | endif | |
217 | ||
95f65c3d TT |
218 | ifeq ($(UTIL_LINUX_NG),yes) |
219 | M4_ARGS+=-DUTIL_LINUX_NG | |
220 | else | |
a6728639 | 221 | DBG_PACKAGES += -puuid-runtime-dbg -plibuuid1-dbg -plibblkid1-dbg |
95f65c3d TT |
222 | M4_ARGS+=-UUTIL_LINUX_NG |
223 | endif | |
224 | ||
55e00a25 TT |
225 | ifneq ($(strip $(DEB_HOST_MULTIARCH)),) |
226 | M4_ARGS+=-DDO_MULTIARCH | |
227 | else | |
228 | M4_ARGS+=-UDO_MULTIARCH | |
229 | endif | |
230 | ||
a8ffb5c2 FB |
231 | ifneq ($(BUILD_E2FSCK_STATIC),no) |
232 | M4_ARGS+=-DE2FSCK_STATIC | |
233 | else | |
234 | M4_ARGS+=-UE2FSCK_STATIC | |
235 | endif | |
236 | ||
2b561a67 TT |
237 | ifeq ($(SKIP_UDEB),) |
238 | INSTALL_UDEB = install-udeb | |
239 | M4_ARGS+=-DUDEB_PKGS | |
240 | else | |
241 | M4_ARGS+=-UUDEB_PKGS | |
242 | endif | |
243 | ||
d3c05957 TT |
244 | ifeq ($(SKIP_FUSE2FS),) |
245 | M4_ARGS+=-DFUSE2FS | |
246 | else | |
247 | M4_ARGS+=-UFUSE2FS | |
248 | endif | |
249 | ||
55e00a25 TT |
250 | FILES_FIXUP= libcomerr2.files comerr-dev.files libss2.files ss-dev.files \ |
251 | libuuid1.files uuid-dev.files libblkid1.files libblkid-dev.files \ | |
252 | e2fslibs.files e2fslibs-dev.files | |
253 | ||
e54e7000 | 254 | debian-files: debian/control debian/e2fsprogs.shlibs.local |
55e00a25 TT |
255 | ifeq ($(strip $(DEB_HOST_MULTIARCH)),) |
256 | for i in $(FILES_FIXUP); do \ | |
257 | sed -e 's;lib/\*/;lib/;' debian/$$i.in > debian/$$i; \ | |
258 | done | |
259 | else | |
260 | for i in $(FILES_FIXUP); do cp debian/$$i.in debian/$$i; done | |
261 | endif | |
e54e7000 TT |
262 | |
263 | mrproper: clean | |
264 | rm debian/control debian/e2fsprogs.shlibs.local | |
265 | ||
95f65c3d | 266 | debian/control: debian/control.in debian/rules |
55e00a25 | 267 | m4 $(M4_ARGS) < debian/control.in | grep -v ^REMOVE_ME$$ > $@ |
95f65c3d | 268 | |
e54e7000 TT |
269 | debian/e2fsprogs.shlibs.local: debian/e2fsprogs.shlibs.local.in |
270 | m4 $(M4_ARGS) < debian/e2fsprogs.shlibs.local.in > $@ | |
271 | ||
541d173d | 272 | ${CFGSTDSTAMP}: |
4d8f08f4 | 273 | dh_testdir |
541d173d | 274 | |
41b6ae60 TT |
275 | # Make sure we don't try to rebuild the configure scripts |
276 | find . -name configure | xargs touch | |
277 | ||
79786216 TT |
278 | mkdir -p ${stdbuilddir} |
279 | ifeq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH)) | |
be5a72da | 280 | cd ${stdbuilddir} && AWK=/usr/bin/awk \ |
98e858bf | 281 | ../../configure ${COMMON_CONF_FLAGS} ${STD_CONF_FLAGS} \ |
efeda9d5 | 282 | ${EXTRA_CONF_FLAGS} CFLAGS="${CFLAGS}" CPPFLAGS="$(CPPFLAGS)" \ |
697e21fa TT |
283 | LDFLAGS="$(LDFLAGS)" CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \ |
284 | CFLAGS_STLIB="$(CFLAGS_STLIB)" \ | |
285 | LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \ | |
286 | LDFLAGS_STATIC="$(LDFLAGS_STATIC)" | |
79786216 | 287 | else |
be5a72da | 288 | cd ${stdbuilddir} && AWK=/usr/bin/awk CC="${DEB_HOST_GNU_TYPE}-gcc" \ |
98e858bf | 289 | ../../configure ${COMMON_CONF_FLAGS} ${STD_CONF_FLAGS} \ |
efeda9d5 TT |
290 | ${EXTRA_CONF_FLAGS} --build=$(DEB_BUILD_GNU_TYPE) \ |
291 | --host=$(DEB_HOST_GNU_TYPE) CFLAGS="${CFLAGS}" \ | |
697e21fa TT |
292 | CPPFLAGS="$(CPPFLAGS)" CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \ |
293 | CFLAGS_STLIB="$(CFLAGS_STLIB)" \ | |
294 | LDFLAGS="$(LDFLAGS)" \ | |
295 | LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \ | |
296 | LDFLAGS_STATIC="$(LDFLAGS_STATIC)" | |
79786216 | 297 | endif |
e5b16437 | 298 | |
541d173d TT |
299 | mkdir -p ${STAMPSDIR} |
300 | touch ${CFGSTDSTAMP} | |
4d8f08f4 | 301 | |
541d173d | 302 | ${CFGBFSTAMP}: |
4d8f08f4 | 303 | dh_testdir |
541d173d TT |
304 | rm -f config.cache |
305 | ||
79786216 | 306 | mkdir -p ${bfbuilddir} |
4d8f08f4 | 307 | ifeq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH)) |
be5a72da | 308 | cd ${bfbuilddir} && AWK=/usr/bin/awk \ |
98e858bf | 309 | ../../configure ${COMMON_CONF_FLAGS} ${BF_CONF_FLAGS} \ |
efeda9d5 | 310 | ${EXTRA_CONF_FLAGS} CFLAGS="${CFLAGS} ${BF_CFLAGS}" \ |
697e21fa TT |
311 | CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \ |
312 | CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \ | |
313 | CFLAGS_STLIB="$(CFLAGS_STLIB)" \ | |
314 | LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \ | |
315 | LDFLAGS_STATIC="$(LDFLAGS_STATIC)" | |
4d8f08f4 | 316 | else |
be5a72da | 317 | cd ${bfbuilddir} && AWK=/usr/bin/awk CC="${DEB_HOST_GNU_TYPE}-gcc" \ |
98e858bf | 318 | ../../configure ${COMMON_CONF_FLAGS} ${BF_CONF_FLAGS} \ |
efeda9d5 TT |
319 | ${EXTRA_CONF_FLAGS} --build=$(DEB_BUILD_GNU_TYPE) \ |
320 | --host=$(DEB_HOST_GNU_TYPE) CFLAGS="${CFLAGS}" \ | |
697e21fa TT |
321 | CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \ |
322 | CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \ | |
323 | CFLAGS_STLIB="$(CFLAGS_STLIB)" \ | |
324 | LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \ | |
325 | LDFLAGS_STATIC="$(LDFLAGS_STATIC)" | |
4d8f08f4 | 326 | endif |
541d173d TT |
327 | mkdir -p ${STAMPSDIR} |
328 | touch ${CFGBFSTAMP} | |
79786216 | 329 | |
55e00a25 TT |
330 | build-arch: build |
331 | build-indep: build | |
bf26fae3 | 332 | build: build-std $(BUILD_BF) |
79786216 | 333 | |
541d173d TT |
334 | build-std: ${BUILDSTDSTAMP} |
335 | ${BUILDSTDSTAMP}: ${CFGSTDSTAMP} | |
79786216 | 336 | dh_testdir |
43e6c79a TT |
337 | if which dh_update_autotools_config > /dev/null 2>&1 ; then \ |
338 | dh_update_autotools_config ;\ | |
339 | fi | |
f921eda1 | 340 | $(MAKE) -C ${stdbuilddir} V=1 all |
a8ffb5c2 | 341 | ifneq ($(BUILD_E2FSCK_STATIC),no) |
cd056798 | 342 | $(MAKE) -C ${stdbuilddir}/e2fsck V=1 e2fsck.static |
a8ffb5c2 | 343 | endif |
2c0e8c7a TT |
344 | if ! test -d debian/orig-gmo ; then \ |
345 | mkdir debian/orig-gmo ; \ | |
346 | mv po/*.gmo po/*.po debian/orig-gmo ; \ | |
347 | cp debian/orig-gmo/*.po po ; \ | |
348 | fi | |
f921eda1 | 349 | $(MAKE) -C ${stdbuilddir}/po V=1 update-gmo |
e5b16437 | 350 | |
b79e338d TT |
351 | ( cd ${stdbuilddir}/doc && $(MAKE) V=1 libext2fs.html ) |
352 | ( cd ${stdbuilddir}/lib/et && $(MAKE) V=1 com_err.info com_err.html ) | |
e5b16437 | 353 | |
541d173d | 354 | touch ${BUILDSTDSTAMP} |
79786216 | 355 | |
541d173d TT |
356 | build-bf: ${BUILDBFSTAMP} |
357 | ${BUILDBFSTAMP}: ${CFGBFSTAMP} | |
79786216 | 358 | dh_testdir |
f921eda1 TT |
359 | $(MAKE) -C ${bfbuilddir} V=1 libs |
360 | $(MAKE) -C ${bfbuilddir}/e2fsck V=1 all | |
361 | $(MAKE) -C ${bfbuilddir}/misc V=1 all | |
c1986ecb | 362 | $(MAKE) -C ${bfbuilddir}/resize V=1 all |
541d173d | 363 | touch ${BUILDBFSTAMP} |
4d8f08f4 TT |
364 | |
365 | clean: | |
366 | dh_testdir | |
2c0e8c7a TT |
367 | if test -d debian/orig-gmo ; then \ |
368 | rm -f po/*.gmo po/*.po ; \ | |
369 | mv debian/orig-gmo/* po ; \ | |
370 | rmdir debian/orig-gmo ; \ | |
371 | fi | |
541d173d | 372 | rm -rf ${STAMPSDIR} |
c1986ecb TT |
373 | [ ! -f ${stdbuilddir}/Makefile ] || $(MAKE) -C ${stdbuilddir} V=1 distclean |
374 | [ ! -f ${bfbuilddir}/Makefile ] || $(MAKE) -C ${bfbuilddir} V=1 distclean | |
375 | [ ! -f ${staticbuilddir}/Makefile ] || $(MAKE) -C ${staticbuilddir} V=1 distclean | |
f088231e | 376 | rm -rf ${stdbuilddir} ${bfbuilddir} ${staticbuilddir} |
4534f8bc | 377 | rm -f debian/*.substvars |
4d8f08f4 TT |
378 | dh_clean |
379 | ||
62775dc5 | 380 | install: cleanup install-std |
79786216 TT |
381 | |
382 | # This rule allows to factorize the dh_clean between the 2 install rules | |
383 | # This must be launched before install-* (if launching them by hand, for | |
384 | # exemple) or results are unpredictable | |
385 | cleanup: | |
b90b826b TT |
386 | dh_testdir |
387 | dh_testroot | |
ef797135 | 388 | dh_prep |
79786216 TT |
389 | |
390 | install-std: DH_OPTIONS= | |
391 | install-std: build | |
392 | dh_testdir | |
393 | dh_testroot | |
b90b826b | 394 | dh_installdirs |
4d8f08f4 | 395 | |
b90b826b | 396 | mkdir -p ${tmpdir}/sbin |
c1986ecb | 397 | $(MAKE) -C ${stdbuilddir} V=1 install DESTDIR=${tmpdir} \ |
79786216 TT |
398 | INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true |
399 | # static libs and .h files | |
c1986ecb | 400 | $(MAKE) -C ${stdbuilddir} V=1 install-libs DESTDIR=${tmpdir} LDCONFIG=true |
4d8f08f4 | 401 | |
a8ffb5c2 | 402 | ifneq ($(BUILD_E2FSCK_STATIC),no) |
1893e713 | 403 | # statically-linked fsck |
a827a2a3 | 404 | ${INSTALL_PROGRAM} $(E2FSCK_STATIC) ${tmpdir}/sbin |
ec3bb41b | 405 | cp ${mandir}/man8/e2fsck.8 ${mandir}/man8/e2fsck.static.8 |
a8ffb5c2 FB |
406 | endif |
407 | ||
b1c828e8 TT |
408 | ifeq ($(DEB_BUILD_GNU_SYSTEM), gnu) |
409 | ${INSTALL} -m 0644 misc/mke2fs-hurd.conf ${tmpdir}/etc/mke2fs.conf | |
410 | endif | |
411 | ||
2a4c77bc | 412 | dh_movefiles |
15fdc401 | 413 | test -z "`find ${tmpdir} -type f`" |
2a4c77bc | 414 | |
62775dc5 TT |
415 | install-udeb: DH_OPTIONS= |
416 | install-udeb: build | |
79786216 TT |
417 | dh_testdir |
418 | dh_testroot | |
79786216 | 419 | |
c1986ecb | 420 | $(MAKE) -C ${bfbuilddir} V=1 install-shlibs-libs-recursive DESTDIR=${udebdir} \ |
62775dc5 | 421 | INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true |
c1986ecb | 422 | $(MAKE) -C ${bfbuilddir}/e2fsck V=1 install DESTDIR=${udebdir} \ |
62775dc5 | 423 | INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true |
c1986ecb | 424 | $(MAKE) -C ${bfbuilddir}/misc V=1 install DESTDIR=${udebdir} \ |
79786216 | 425 | INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true |
c1986ecb | 426 | $(MAKE) -C ${bfbuilddir}/resize V=1 install DESTDIR=${udebdir} \ |
8a8a12c1 | 427 | INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true |
2a4c77bc | 428 | |
62775dc5 | 429 | rm -rf ${udebdir}/usr |
e3075aea | 430 | find ${udebdir}/sbin -type f -a ! -name e2fsck \ |
8a8a12c1 TT |
431 | -a ! -name mke2fs -a ! -name tune2fs \ |
432 | -a ! -name resize2fs -a ! -name badblocks -print | xargs rm | |
e3075aea | 433 | |
be241786 TT |
434 | (cd ${udebdir}/sbin; ln -sf e2fsck fsck.ext2 ; \ |
435 | ln -sf e2fsck fsck.ext3 ; ln -sf e2fsck fsck.ext4 ; \ | |
436 | ln -sf mke2fs mkfs.ext2 ; ln -sf mke2fs mkfs.ext3 ; \ | |
437 | ln -sf mke2fs mkfs.ext4) | |
dd198d68 | 438 | |
95f65c3d | 439 | ifneq ($(UTIL_LINUX_NG),yes) |
417781af TT |
440 | mkdir -p ${blkidudebdir}/lib |
441 | mv ${udebdir}/lib/libblkid.* ${blkidudebdir}/lib | |
79786216 | 442 | |
e254d05b TT |
443 | mkdir -p ${uuidudebdir}/lib |
444 | mv ${udebdir}/lib/libuuid.* ${uuidudebdir}/lib | |
95f65c3d | 445 | endif |
e254d05b | 446 | |
b90b826b TT |
447 | binary-indep: |
448 | # no arch-independant debs. | |
4d8f08f4 | 449 | |
b90b826b | 450 | binary-arch: DH_OPTIONS= -a |
2b561a67 | 451 | binary-arch: install $(INSTALL_UDEB) |
b90b826b TT |
452 | dh_testdir |
453 | dh_testroot | |
454 | ||
e1ada171 | 455 | dh_lintian |
79786216 | 456 | |
b90b826b | 457 | # symlinks to prepare dh_installdocs run |
1893e713 | 458 | |
95f65c3d | 459 | ifneq ($(UTIL_LINUX_NG),yes) |
151c86ab TT |
460 | mkdir -p ${debdir}/libblkid${BLKID_SOVERSION}/usr/share/doc/libblkid${BLKID_SOVERSION} |
461 | mkdir -p ${debdir}/libblkid-dev/usr/share/doc | |
462 | ln -sf libblkid${BLKID_SOVERSION} ${debdir}/libblkid-dev/usr/share/doc/libblkid-dev | |
95f65c3d | 463 | endif |
b90b826b | 464 | |
151c86ab TT |
465 | mkdir -p ${debdir}/libss${SS_SOVERSION}/usr/share/doc/libss${SS_SOVERSION} |
466 | mkdir -p ${debdir}/ss-dev/usr/share/doc | |
467 | ln -sf libss${SS_SOVERSION} ${debdir}/ss-dev/usr/share/doc/ss-dev | |
b90b826b | 468 | |
151c86ab TT |
469 | mkdir -p ${debdir}/libcomerr${COMERR_SOVERSION}/usr/share/doc/libcomerr${COMERR_SOVERSION} |
470 | mkdir -p ${debdir}/comerr-dev/usr/share/doc | |
e5b16437 | 471 | ln -sf libcomerr${COMERR_SOVERSION} ${debdir}/comerr-dev/usr/share/doc/comerr-dev |
4d8f08f4 | 472 | |
95f65c3d | 473 | ifneq ($(UTIL_LINUX_NG),yes) |
151c86ab TT |
474 | mkdir -p ${debdir}/libuuid${UUID_SOVERSION}/usr/share/doc/libuuid${UUID_SOVERSION} |
475 | mkdir -p ${debdir}/uuid-dev/usr/share/doc | |
ec3bb41b | 476 | # ln -sf libuuid${UUID_SOVERSION} ${debdir}/uuid-dev/usr/share/doc/uuid-dev |
95f65c3d | 477 | endif |
4d8f08f4 | 478 | |
151c86ab TT |
479 | mkdir -p ${debdir}/e2fslibs/usr/share/doc/e2fslibs |
480 | mkdir -p ${debdir}/e2fslibs-dev/usr/share/doc | |
481 | ln -sf e2fslibs ${debdir}/e2fslibs-dev/usr/share/doc/e2fslibs-dev | |
4d8f08f4 | 482 | |
95f65c3d | 483 | ifneq ($(UTIL_LINUX_NG),yes) |
b1e22d52 | 484 | $(INSTALL) -p -m 0644 debian/libblkid.copyright \ |
6fe7d115 | 485 | ${debdir}/libblkid${BLKID_SOVERSION}/usr/share/doc/libblkid${BLKID_SOVERSION}/copyright |
95f65c3d | 486 | endif |
6fe7d115 | 487 | |
e254d05b | 488 | dh_installdocs -Ne2fsprogs-udeb -Nlibblkid1-udeb -Nlibuuid1-udeb |
b90b826b | 489 | |
4d8f08f4 | 490 | # HTML docs |
b1e22d52 | 491 | $(INSTALL) -d ${debdir}/e2fslibs-dev/usr/share/doc/e2fslibs/html-info/ |
4534f8bc | 492 | $(INSTALL) -p -m 0644 ${stdbuilddir}/doc/*.html \ |
151c86ab | 493 | ${debdir}/e2fslibs-dev/usr/share/doc/e2fslibs/html-info/ |
b1e22d52 | 494 | $(INSTALL) -d ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}/html-info/ |
4534f8bc | 495 | $(INSTALL) -p -m 0644 ${stdbuilddir}/lib/et/*.html \ |
151c86ab | 496 | ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}/html-info/ |
4d8f08f4 TT |
497 | |
498 | # texinfo docs | |
151c86ab | 499 | mkdir -p ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION} |
b1e22d52 | 500 | $(INSTALL) -p -m 0644 ${topdir}/doc/libext2fs.texinfo \ |
151c86ab | 501 | ${debdir}/e2fslibs-dev/usr/share/doc/e2fslibs/libext2fs.texi |
b1e22d52 | 502 | $(INSTALL) -p -m 0644 ${topdir}/lib/et/com_err.texinfo \ |
e5b16437 | 503 | ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}/com_err.texi |
4d8f08f4 | 504 | |
b1e22d52 TT |
505 | $(INSTALL) -d ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}/examples |
506 | $(INSTALL) -p -m 0644 lib/ss/ss_err.et \ | |
151c86ab TT |
507 | ${stdbuilddir}/lib/ext2fs/ext2_err.et \ |
508 | ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}/examples | |
b1e22d52 TT |
509 | $(INSTALL) -d ${debdir}/ss-dev/usr/share/doc/libss${SS_SOVERSION}/examples |
510 | $(INSTALL) -p -m 0644 debugfs/debug_cmds.ct \ | |
151c86ab TT |
511 | ${debdir}/ss-dev/usr/share/doc/libss${SS_SOVERSION}/examples |
512 | ||
541d173d | 513 | dh_installinfo -pcomerr-dev ${stdbuilddir}/lib/et/com_err.info |
79786216 | 514 | dh_installinfo -pe2fslibs-dev ${stdbuilddir}/doc/libext2fs.info |
4d8f08f4 | 515 | |
d1335619 | 516 | dh_installchangelogs |
a3f464ff | 517 | dh_fixperms |
a6728639 | 518 | dh_strip $(call dh_strip_args,e2fsprogs) |
2b561a67 | 519 | ifneq ($(BUILD_E2FSCK_STATIC),no) |
a6728639 | 520 | dh_strip $(call dh_strip_args2,e2fsck-static,e2fsprogs) |
2b561a67 | 521 | endif |
a6728639 | 522 | dh_strip $(call dh_strip_args,e2fslibs) |
a6728639 TT |
523 | dh_strip $(call dh_strip_args,libss${SS_SOVERSION}) |
524 | dh_strip $(call dh_strip_args,libcomerr${COMERR_SOVERSION}) | |
95f65c3d | 525 | ifneq ($(UTIL_LINUX_NG),yes) |
a6728639 TT |
526 | dh_strip $(call dh_strip_args,libblkid${BLKID_SOVERSION}) |
527 | dh_strip $(call dh_strip_args,libuuid${UUID_SOVERSION}) | |
95f65c3d | 528 | endif |
7f2c7495 | 529 | dh_strip |
fbcb3a85 | 530 | |
649bd289 | 531 | # dpkg symbol handling |
95f65c3d | 532 | for i in $(SYMBOL_LIBS); \ |
649bd289 TT |
533 | do \ |
534 | echo "Generating symbols for $$i..."; \ | |
535 | dpkg-gensymbols -p$$i -Pdebian/$$i > debian/$$i.tmp-patch; \ | |
536 | cat debian/$$i.tmp-patch; \ | |
537 | patch debian/$$i.symbols < debian/$$i.tmp-patch; \ | |
538 | /bin/rm debian/$$i.tmp-patch; \ | |
539 | done | |
649bd289 | 540 | |
b90b826b | 541 | dh_compress |
4d8f08f4 | 542 | |
e1ada171 | 543 | dh_makeshlibs --add-udeb=e2fsprogs-udeb |
2b561a67 | 544 | ifeq ($(SKIP_UDEB),) |
95f65c3d | 545 | ifneq ($(UTIL_LINUX_NG),yes) |
7512f136 TT |
546 | echo "udeb: libblkid 1 libblkid1-udeb" >> \ |
547 | debian/libblkid1/DEBIAN/shlibs | |
548 | echo "udeb: libuuid 1 libuuid1-udeb" >> debian/libuuid1/DEBIAN/shlibs | |
2b561a67 | 549 | endif |
95f65c3d | 550 | endif |
6fe7d115 | 551 | |
b90b826b | 552 | dh_installdeb |
79786216 | 553 | dh_shlibdeps -l${stdbuilddir}/lib |
151c86ab TT |
554 | dh_shlibdeps -pe2fsprogs -l${stdbuilddir}/lib \ |
555 | -u"-Ldebian/e2fsprogs.shlibs.local" | |
2b561a67 | 556 | ifeq ($(SKIP_UDEB),) |
7a15db23 TT |
557 | dh_shlibdeps -pe2fsprogs-udeb -l${stdbuilddir}/lib \ |
558 | -u"-Ldebian/e2fsprogs-udeb.shlibs.local" | |
2b561a67 | 559 | endif |
d3c05957 | 560 | ifeq ($(SKIP_FUSE2FS),) |
d1335619 TT |
561 | dh_shlibdeps -pfuse2fs -l${stdbuilddir}/lib \ |
562 | -u"-Ldebian/e2fsprogs.shlibs.local" | |
d3c05957 | 563 | endif |
b90b826b | 564 | |
151c86ab | 565 | dh_gencontrol -Ncomerr-dev -Nss-dev -Nuuid-dev \ |
e254d05b | 566 | -Ne2fsprogs-udeb -Nlibblkid1-udeb -Nlibuuid1-udeb |
b90b826b | 567 | DH_OPTIONS= dh_gencontrol -pcomerr-dev \ |
d8a1a674 | 568 | -u '-v${COMERR_VERSION}-${MAIN_VERSION} -VmainBinary=${MAIN_VERSION}' |
b90b826b | 569 | DH_OPTIONS= dh_gencontrol -pss-dev \ |
d8a1a674 | 570 | -u '-v${SS_VERSION}-${MAIN_VERSION} -VmainBinary=${MAIN_VERSION}' |
95f65c3d | 571 | ifneq ($(UTIL_LINUX_NG),yes) |
b90b826b | 572 | DH_OPTIONS= dh_gencontrol -puuid-dev \ |
d8a1a674 | 573 | -u '-v${UUID_VERSION}-${MAIN_VERSION} -VmainBinary=${MAIN_VERSION}' |
95f65c3d | 574 | endif |
2b561a67 | 575 | ifeq ($(SKIP_UDEB),) |
bf5498cc | 576 | dh_gencontrol -pe2fsprogs-udeb -- -fdebian/files~ |
95f65c3d | 577 | ifneq ($(UTIL_LINUX_NG),yes) |
bf5498cc TT |
578 | dh_gencontrol -plibblkid1-udeb -- -fdebian/files~ |
579 | dh_gencontrol -plibuuid1-udeb -- -fdebian/files~ | |
95f65c3d | 580 | endif |
2b561a67 | 581 | endif |
b90b826b | 582 | |
2b561a67 | 583 | ifeq ($(SKIP_UDEB),) |
bf5498cc | 584 | dpkg-distaddfile $(UDEB_NAME) debian-installer $(UDEB_PRIORITY) |
95f65c3d | 585 | ifneq ($(UTIL_LINUX_NG),yes) |
bf5498cc TT |
586 | dpkg-distaddfile $(BLKID_UDEB_NAME) debian-installer $(BLKID_UDEB_PRIORITY) |
587 | dpkg-distaddfile $(UUID_UDEB_NAME) debian-installer $(UUID_UDEB_PRIORITY) | |
2b561a67 | 588 | endif |
95f65c3d | 589 | endif |
e1ada171 TT |
590 | dh_md5sums |
591 | dh_builddeb | |
e254d05b | 592 | |
4d8f08f4 TT |
593 | binary: binary-indep binary-arch |
594 | ||
910fae94 TT |
595 | .PHONY: binary binary-arch binary-indep clean checkroot mrproper \ |
596 | debug_flags debian-files | |
597 | ||
598 | debug_flags: | |
599 | @echo CFLAGS is $(CFLAGS) | |
600 | @echo LDFLAGS is $(LDFLAGS) | |
601 | @echo CPPFLAGS is $(CPPFLAGS) |