#! /usr/bin/make -f # -*- makefile -*- # # Invoke each target with `./debian/rules <target>'. All targets should be # invoked with the package root as the current directory. # # The `binary' target must be run as root, as it needs to install files with # specific ownerships. -include debian/rules.custom export DEB_BUILD_MAINT_OPTIONS ?= hardening=+all # be paranoid export LC_ALL ?= C # These are used for cross-compiling and for saving the configure script # from having to guess our platform (since we know it already) DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) DEB_HOST_OS ?= $(shell dpkg-architecture -qDEB_HOST_OS) DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null) # Allow distro-specific behaviour DISTRO :=$(shell sed -ne '/DISTRIB_ID/s/.*=//p' /etc/lsb-release 2>/dev/null || echo Debian) UTIL_LINUX_NG ?= yes ifeq ($(DEB_BUILD_GNU_SYSTEM), gnu) SKIP_FUSE2FS=yes endif DH_VERSION := $(shell dpkg-query -W -f '$${Version}' debhelper) # USE_DBGSYM := USE_DBGSYM ?= $(shell if dpkg --compare-versions $(DH_VERSION) ">=" 9.20160114 ; then echo yes ; fi) ifeq ($(USE_DBGSYM),yes) dh_strip_args = -p$(1) --dbgsym-migration='$(1)-dbg (<= 1.43-1)' dh_strip_args2 = -p$(1) --dbgsym-migration='$(2)-dbg (<= 1.43-1)' else dh_strip_args = -p$(1) --dbg-package=$(1)-dbg dh_strip_args2 = -p$(1) --dbg-package=$(2)-dbg endif # find the version for the main package, from changelog file MAIN_VERSION = $(shell head -n 1 debian/changelog | cut '-d ' -f 2 | sed 's/[()]//g') # find versions for libraries going into their own packages, from their Makefile.in's, # and sonames for all libs COMERR_VERSION ?= $(shell grep ELF_VERSION lib/et/Makefile.in | cut '-d ' -f3) COMERR_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/et/Makefile.in | cut '-d ' -f3) SS_VERSION ?= $(shell grep ELF_VERSION lib/ss/Makefile.in | cut '-d ' -f3) SS_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/ss/Makefile.in | cut '-d ' -f3) ifneq ($(UTIL_LINUX_NG),yes) UUID_VERSION ?= $(shell grep ELF_VERSION lib/uuid/Makefile.in | cut '-d ' -f3) UUID_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/uuid/Makefile.in | cut '-d ' -f3) BLKID_VERSION ?= $(shell grep ELF_VERSION lib/blkid/Makefile.in | cut '-d ' -f3) BLKID_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/blkid/Makefile.in | cut '-d ' -f3) endif EXT2FS_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/ext2fs/Makefile.in | cut '-d ' -f3) E2P_SOVERSION ?= $(shell grep ELF_SO_VERSION lib/e2p/Makefile.in | cut '-d ' -f3) package ?= e2fsprogs topdir ?= $(shell pwd) debdir ?= ${topdir}/debian tmpdir ?= ${debdir}/tmp udebdir ?= ${debdir}/e2fsprogs-udeb ifneq ($(UTIL_LINUX_NG),yes) blkidudebdir ?= ${debdir}/libblkid1-udeb uuidudebdir ?= ${debdir}/libuuid1-udeb endif libcomerrdir ?= ${debdir}/libcomerr${COMERR_SOVERSION} comerrdevdir ?= ${debdir}/comerr-dev libcomerrdbgdir ?= ${debdir}/libcomerr2-dbg libssdir ?= ${debdir}/libss${SS_SOVERSION} ssdevdir ?= ${debdir}/ss-dev libssdbgdir ?= ${debdir}/libss2-dbg ifneq ($(UTIL_LINUX_NG),yes) libblkiddir ?= ${debdir}/libblkid${BLKID_SOVERSION} libblkiddevdir ?= ${debdir}/libblkid-dev libblkiddbgdir ?= ${debdir}/libblkid1-dbg libuuiddir ?= ${debdir}/libuuid${UUID_SOVERSION} uuiddevdir ?= ${debdir}/uuid-dev libuuiddbgdir ?= ${debdir}/libuuid1-dbg uuidruntimedir ?= ${debdir}/uuid-runtime uuidruntimedbgdir ?= ${debdir}/uuid-runtime-dbg endif libext2dir ?= ${debdir}/e2fslibs libext2devdir ?= ${debdir}/e2fslibs-dev libext2dbgdir ?= ${debdir}/e2fslibs-dbg maindir ?= ${debdir}/e2fsprogs e2fsckstaticdir ?= ${debdir}/e2fsck-static debugdir ?= ${debdir}/e2fsprogs-dbg stdbuilddir ?= ${debdir}/BUILD-STD mipsbuilddir ?= ${debdir}/BUILD-MIPS mipsbuilddir64 ?= ${debdir}/BUILD-MIPS-64 # docdir ?= ${maindir}/usr/share/doc/${package} MANDIR ?= /usr/share/man mandir ?= ${tmpdir}${MANDIR} UDEB_NAME ?= $(package)-udeb_$(MAIN_VERSION)_$(DEB_HOST_ARCH).udeb UDEB_PRIORITY ?= $(shell grep '^Package: e2fsprogs-udeb' debian/control.in -A 10 | grep ^Priority: | cut -d ' ' -f 2) ifneq ($(UTIL_LINUX_NG),yes) BLKID_UDEB_NAME ?= libblkid1-udeb_$(MAIN_VERSION)_$(DEB_HOST_ARCH).udeb BLKID_UDEB_PRIORITY ?= $(shell grep '^Package: libblkid1-udeb' debian/control.in -A 10 | grep ^Priority: | cut -d ' ' -f 2) UUID_UDEB_NAME ?= libuuid1-udeb_$(MAIN_VERSION)_$(DEB_HOST_ARCH).udeb UUID_UDEB_PRIORITY ?= $(shell grep '^Package: libuuid1-udeb' debian/control.in -A 10 | grep ^Priority: | cut -d ' ' -f 2) endif STAMPSDIR ?= debian/stampdir CFGSTDSTAMP ?= ${STAMPSDIR}/configure-std-stamp CFGBFSTAMP ?= ${STAMPSDIR}/configure-bf-stamp BUILDSTDSTAMP ?= ${STAMPSDIR}/build-std-stamp BUILDBFSTAMP ?= ${STAMPSDIR}/build-bf-stamp INSTALL ?= install INSTALL_PROGRAM ?= $(INSTALL) -p -o root -g root -m 0755 #ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) #INSTALL_PROGRAM += -s #endif ifneq (,$(findstring update-symbols,$(DEB_BUILD_OPTIONS))) SYMBOL_LIBS := e2fslibs libcomerr2 libss2 ifneq ($(UTIL_LINUX_NG),yes) SYMBOL_LIBS += libblkid1 libuuid1 endif endif DEFAULT_CFLAGS ?= -g -O2 DEFAULT_LDFLAGS ?= -Wl,-Bsymbolic-functions CFLAGS ?= $(shell if dpkg-buildflags > /dev/null 2>&1 ; then \ DEB_BUILD_MAINT_OPTIONS=$(DEB_BUILD_MAINT_OPTIONS) \ dpkg-buildflags --get CFLAGS; else echo $(DEFAULT_CFLAGS) ; fi) LDFLAGS ?= $(shell if dpkg-buildflags > /dev/null 2>&1 ; then \ DEB_BUILD_MAINT_OPTIONS=$(DEB_BUILD_MAINT_OPTIONS) \ dpkg-buildflags --get LDFLAGS; else echo $(DEFAULT_LDFLAGS) ; fi) CPPFLAGS ?= $(shell if dpkg-buildflags > /dev/null 2>&1 ; then \ DEB_BUILD_MAINT_OPTIONS=$(DEB_BUILD_MAINT_OPTIONS) \ dpkg-buildflags --get CPPFLAGS; fi) ifeq (${DEB_HOST_ARCH},alpha) CFLAGS += -DHAVE_NETINET_IN_H else CFLAGS += -D__NO_STRING_INLINES endif E2FSCK_STATIC = ${stdbuilddir}/e2fsck/e2fsck.static CFLAGS_SHLIB = $(CFLAGS) CFLAGS_STLIB = $(CFLAGS) LDFLAGS_SHLIB = $(LDFLAGS) LDFLAGS_STATIC = $(filter-out -fPIE -fpie -pie,$(LDFLAGS)) ifneq ($(SKIP_UDEB),) SKIP_BF ?= yes endif ifeq ($(SKIP_BF),yes) BUILD_BF = bfbuilddir ?= ${stdbuilddir} else BUILD_BF = build-bf bfbuilddir ?= ${debdir}/BUILD-BF endif BF_CFLAGS = -Os -fomit-frame-pointer ifeq ($(UTIL_LINUX_NG),yes) UTIL_CONF_FLAGS ?= --disable-fsck --disable-libblkid \ --disable-libuuid --disable-uuidd else UTIL_CONF_FLAGS ?= --enable-fsck --enable-libblkid \ --enable-libuuid --enable-uuidd endif ifneq ($(SKIP_FUSE2FS),) UTIL_CONF_FLAGS += --disable-fuse2fs endif ifneq ($(strip $(DEB_HOST_MULTIARCH)),) MULTIARCH_CONF ?= --with-multiarch=$(DEB_HOST_MULTIARCH) # This doesn't work yet because gdb and lintian don't expect and/or # don't work with /usr/lib/<triplet>/debug #USRLIB = /usr/lib/$(DEB_HOST_MULTIARCH) USRLIB ?= /usr/lib else USRLIB ?= /usr/lib endif BACKTRACE_CONF_FLAGS ?= $(shell if ${debdir}/scripts/test-backtrace ; then echo --disable-backtrace ; fi) COMMON_CONF_FLAGS = --disable-e2initrd-helper --enable-quota \ --infodir=/usr/share/info --enable-symlink-install \ $(MULTIARCH_CONF) $(BACKTRACE_CONF_FLAGS) $(UTIL_CONF_FLAGS) STD_CONF_FLAGS ?= --enable-elf-shlibs BF_CONF_FLAGS ?= --enable-elf-shlibs --disable-nls --disable-imager \ --disable-testio-debug --disable-uuidd --disable-tls \ --disable-tdb --disable-debugfs MIPS_NOPIC_CONF_FLAGS ?= --disable-nls --disable-imager \ --disable-uuidd --disable-tls \ --disable-resizer # --disable-debugfs # we can't use those flags at configure time MIPS_CFLAGS ?= -G 0 -fno-pic -mno-abicalls MIPS_CFLAGS_64 ?= -mabi=64 -G 0 -fno-pic -mno-abicalls ifeq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH)) ifneq (,$(findstring $(DEB_BUILD_ARCH),mips mipsel)) ismips=ismips endif endif M4_ARGS= DBG_PACKAGES= ifeq ($(USE_DBGSYM),yes) M4_ARGS+=-DUSE_DBGSYM else DBG_PACKAGES += -pe2fsprogs-dbg -pe2fslibs-dbg -plibcomerr2-dbg -plibss2-dbg M4_ARGS+=-UUSE_DBGSYM endif ifeq ($(UTIL_LINUX_NG),yes) M4_ARGS+=-DUTIL_LINUX_NG else DBG_PACKAGES += -puuid-runtime-dbg -plibuuid1-dbg -plibblkid1-dbg M4_ARGS+=-UUTIL_LINUX_NG endif ifneq ($(strip $(DEB_HOST_MULTIARCH)),) M4_ARGS+=-DDO_MULTIARCH else M4_ARGS+=-UDO_MULTIARCH endif ifneq ($(BUILD_E2FSCK_STATIC),no) M4_ARGS+=-DE2FSCK_STATIC else M4_ARGS+=-UE2FSCK_STATIC endif ifeq ($(SKIP_UDEB),) INSTALL_UDEB = install-udeb M4_ARGS+=-DUDEB_PKGS else M4_ARGS+=-UUDEB_PKGS endif ifeq ($(SKIP_FUSE2FS),) M4_ARGS+=-DFUSE2FS else M4_ARGS+=-UFUSE2FS endif FILES_FIXUP= libcomerr2.files comerr-dev.files libss2.files ss-dev.files \ libuuid1.files uuid-dev.files libblkid1.files libblkid-dev.files \ e2fslibs.files e2fslibs-dev.files debian-files: debian/control debian/e2fsprogs.shlibs.local ifeq ($(strip $(DEB_HOST_MULTIARCH)),) for i in $(FILES_FIXUP); do \ sed -e 's;lib/\*/;lib/;' debian/$$i.in > debian/$$i; \ done else for i in $(FILES_FIXUP); do cp debian/$$i.in debian/$$i; done endif mrproper: clean rm debian/control debian/e2fsprogs.shlibs.local debian/control: debian/control.in debian/rules m4 $(M4_ARGS) < debian/control.in | grep -v ^REMOVE_ME$$ > $@ debian/e2fsprogs.shlibs.local: debian/e2fsprogs.shlibs.local.in m4 $(M4_ARGS) < debian/e2fsprogs.shlibs.local.in > $@ ${CFGSTDSTAMP}: dh_testdir # Make sure we don't try to rebuild the configure scripts find . -name configure | xargs touch mkdir -p ${stdbuilddir} ifeq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH)) cd ${stdbuilddir} && AWK=/usr/bin/awk \ ../../configure ${COMMON_CONF_FLAGS} ${STD_CONF_FLAGS} \ ${EXTRA_CONF_FLAGS} CFLAGS="${CFLAGS}" CPPFLAGS="$(CPPFLAGS)" \ LDFLAGS="$(LDFLAGS)" CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \ CFLAGS_STLIB="$(CFLAGS_STLIB)" \ LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \ LDFLAGS_STATIC="$(LDFLAGS_STATIC)" else cd ${stdbuilddir} && AWK=/usr/bin/awk CC="${DEB_HOST_GNU_TYPE}-gcc" \ ../../configure ${COMMON_CONF_FLAGS} ${STD_CONF_FLAGS} \ ${EXTRA_CONF_FLAGS} --build=$(DEB_BUILD_GNU_TYPE) \ --host=$(DEB_HOST_GNU_TYPE) CFLAGS="${CFLAGS}" \ CPPFLAGS="$(CPPFLAGS)" CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \ CFLAGS_STLIB="$(CFLAGS_STLIB)" \ LDFLAGS="$(LDFLAGS)" \ LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \ LDFLAGS_STATIC="$(LDFLAGS_STATIC)" endif # specially-built MIPS libs ifneq ($(ismips),) mkdir -p ${mipsbuilddir} ${mipsbuilddir64} cd ${mipsbuilddir} && AWK=/usr/bin/awk \ ../../configure ${COMMON_CONF_FLAGS} \ ${MIPS_NOPIC_CONF_FLAGS} CFLAGS="${CFLAGS}" \ CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \ CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \ CFLAGS_STLIB="$(CFLAGS_STLIB)" \ LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \ LDFLAGS_STATIC="$(LDFLAGS_STATIC)" cd ${mipsbuilddir64} && AWK=/usr/bin/awk \ ../../configure ${COMMON_CONF_FLAGS} \ ${MIPS_NOPIC_CONF_FLAGS} CFLAGS="${CFLAGS}" \ CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \ CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \ CFLAGS_STLIB="$(CFLAGS_STLIB)" \ LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \ LDFLAGS_STATIC="$(LDFLAGS_STATIC)" endif mkdir -p ${STAMPSDIR} touch ${CFGSTDSTAMP} ${CFGBFSTAMP}: dh_testdir rm -f config.cache mkdir -p ${bfbuilddir} ifeq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH)) cd ${bfbuilddir} && AWK=/usr/bin/awk \ ../../configure ${COMMON_CONF_FLAGS} ${BF_CONF_FLAGS} \ ${EXTRA_CONF_FLAGS} CFLAGS="${CFLAGS} ${BF_CFLAGS}" \ CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \ CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \ CFLAGS_STLIB="$(CFLAGS_STLIB)" \ LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \ LDFLAGS_STATIC="$(LDFLAGS_STATIC)" else cd ${bfbuilddir} && AWK=/usr/bin/awk CC="${DEB_HOST_GNU_TYPE}-gcc" \ ../../configure ${COMMON_CONF_FLAGS} ${BF_CONF_FLAGS} \ ${EXTRA_CONF_FLAGS} --build=$(DEB_BUILD_GNU_TYPE) \ --host=$(DEB_HOST_GNU_TYPE) CFLAGS="${CFLAGS}" \ CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \ CFLAGS_SHLIB="$(CFLAGS_SHLIB)" \ CFLAGS_STLIB="$(CFLAGS_STLIB)" \ LDFLAGS_SHLIB="$(LDFLAGS_SHLIB)" \ LDFLAGS_STATIC="$(LDFLAGS_STATIC)" endif mkdir -p ${STAMPSDIR} touch ${CFGBFSTAMP} build-arch: build build-indep: build build: build-std $(BUILD_BF) build-std: ${BUILDSTDSTAMP} ${BUILDSTDSTAMP}: ${CFGSTDSTAMP} dh_testdir if which dh_update_autotools_config > /dev/null 2>&1 ; then \ dh_update_autotools_config ;\ fi $(MAKE) -C ${stdbuilddir} V=1 all ifneq ($(BUILD_E2FSCK_STATIC),no) $(MAKE) -C ${stdbuilddir}/e2fsck V=1 e2fsck.static endif if ! test -d debian/orig-gmo ; then \ mkdir debian/orig-gmo ; \ mv po/*.gmo po/*.po debian/orig-gmo ; \ cp debian/orig-gmo/*.po po ; \ fi $(MAKE) -C ${stdbuilddir}/po V=1 update-gmo ( cd ${stdbuilddir}/doc && $(MAKE) V=1 libext2fs.html ) ( cd ${stdbuilddir}/lib/et && $(MAKE) V=1 com_err.info com_err.html ) # specially-built MIPS libs ifneq ($(ismips),) $(MAKE) -C ${mipsbuilddir}/util V=1 $(MAKE) -C ${mipsbuilddir} V=1 \ CFLAGS="${CFLAGS} ${MIPS_CFLAGS}" \ LIB_SUBDIRS="lib/et lib/ext2fs" libs $(MAKE) -C ${mipsbuilddir64}/util V=1 $(MAKE) -C ${mipsbuilddir64} V=1 \ CFLAGS="${CFLAGS} ${MIPS_CFLAGS_64}" \ LIB_SUBDIRS="lib/et lib/ext2fs" libs endif touch ${BUILDSTDSTAMP} build-bf: ${BUILDBFSTAMP} ${BUILDBFSTAMP}: ${CFGBFSTAMP} dh_testdir $(MAKE) -C ${bfbuilddir} V=1 libs $(MAKE) -C ${bfbuilddir}/e2fsck V=1 all $(MAKE) -C ${bfbuilddir}/misc V=1 all $(MAKE) -C ${bfbuilddir}/resize V=1 all touch ${BUILDBFSTAMP} clean: dh_testdir if test -d debian/orig-gmo ; then \ rm -f po/*.gmo po/*.po ; \ mv debian/orig-gmo/* po ; \ rmdir debian/orig-gmo ; \ fi rm -rf ${STAMPSDIR} [ ! -f ${stdbuilddir}/Makefile ] || $(MAKE) -C ${stdbuilddir} V=1 distclean [ ! -f ${bfbuilddir}/Makefile ] || $(MAKE) -C ${bfbuilddir} V=1 distclean [ ! -f ${staticbuilddir}/Makefile ] || $(MAKE) -C ${staticbuilddir} V=1 distclean rm -rf ${stdbuilddir} ${bfbuilddir} ${staticbuilddir} ${mipsbuilddir} ${mipsbuilddir64} rm -f debian/*.substvars dh_clean install: cleanup install-std # This rule allows to factorize the dh_clean between the 2 install rules # This must be launched before install-* (if launching them by hand, for # exemple) or results are unpredictable cleanup: dh_testdir dh_testroot dh_prep install-std: DH_OPTIONS= install-std: build dh_testdir dh_testroot dh_installdirs mkdir -p ${tmpdir}/sbin $(MAKE) -C ${stdbuilddir} V=1 install DESTDIR=${tmpdir} \ INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true # static libs and .h files $(MAKE) -C ${stdbuilddir} V=1 install-libs DESTDIR=${tmpdir} LDCONFIG=true ifneq ($(BUILD_E2FSCK_STATIC),no) # statically-linked fsck ${INSTALL_PROGRAM} $(E2FSCK_STATIC) ${tmpdir}/sbin cp ${mandir}/man8/e2fsck.8 ${mandir}/man8/e2fsck.static.8 endif ifeq ($(DEB_BUILD_GNU_SYSTEM), gnu) ${INSTALL} -m 0644 misc/mke2fs-hurd.conf ${tmpdir}/etc/mke2fs.conf endif dh_movefiles test -z "`find ${tmpdir} -type f`" # specially-built MIPS libs ifneq ($(ismips),) $(INSTALL) -p -m 0644 ${mipsbuilddir}/lib/libext2fs.a \ ${debdir}/e2fslibs-dev/usr/lib/libext2fs-nopic.a $(INSTALL) -p -m 0644 ${mipsbuilddir64}/lib/libext2fs.a \ ${debdir}/e2fslibs-dev/usr/lib/lib64ext2fs-nopic.a endif install-udeb: DH_OPTIONS= install-udeb: build dh_testdir dh_testroot $(MAKE) -C ${bfbuilddir} V=1 install-shlibs-libs-recursive DESTDIR=${udebdir} \ INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true $(MAKE) -C ${bfbuilddir}/e2fsck V=1 install DESTDIR=${udebdir} \ INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true $(MAKE) -C ${bfbuilddir}/misc V=1 install DESTDIR=${udebdir} \ INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true $(MAKE) -C ${bfbuilddir}/resize V=1 install DESTDIR=${udebdir} \ INSTALL_PROGRAM="${INSTALL_PROGRAM}" LDCONFIG=true rm -rf ${udebdir}/usr find ${udebdir}/sbin -type f -a ! -name e2fsck \ -a ! -name mke2fs -a ! -name tune2fs \ -a ! -name resize2fs -a ! -name badblocks -print | xargs rm (cd ${udebdir}/sbin; ln -sf e2fsck fsck.ext2 ; \ ln -sf e2fsck fsck.ext3 ; ln -sf e2fsck fsck.ext4 ; \ ln -sf mke2fs mkfs.ext2 ; ln -sf mke2fs mkfs.ext3 ; \ ln -sf mke2fs mkfs.ext4) ifneq ($(UTIL_LINUX_NG),yes) mkdir -p ${blkidudebdir}/lib mv ${udebdir}/lib/libblkid.* ${blkidudebdir}/lib mkdir -p ${uuidudebdir}/lib mv ${udebdir}/lib/libuuid.* ${uuidudebdir}/lib endif binary-indep: # no arch-independant debs. binary-arch: DH_OPTIONS= -a binary-arch: install $(INSTALL_UDEB) dh_testdir dh_testroot dh_lintian # symlinks to prepare dh_installdocs run ifneq ($(UTIL_LINUX_NG),yes) mkdir -p ${debdir}/libblkid${BLKID_SOVERSION}/usr/share/doc/libblkid${BLKID_SOVERSION} mkdir -p ${debdir}/libblkid-dev/usr/share/doc ln -sf libblkid${BLKID_SOVERSION} ${debdir}/libblkid-dev/usr/share/doc/libblkid-dev endif mkdir -p ${debdir}/libss${SS_SOVERSION}/usr/share/doc/libss${SS_SOVERSION} mkdir -p ${debdir}/ss-dev/usr/share/doc ln -sf libss${SS_SOVERSION} ${debdir}/ss-dev/usr/share/doc/ss-dev mkdir -p ${debdir}/libcomerr${COMERR_SOVERSION}/usr/share/doc/libcomerr${COMERR_SOVERSION} mkdir -p ${debdir}/comerr-dev/usr/share/doc ln -sf libcomerr${COMERR_SOVERSION} ${debdir}/comerr-dev/usr/share/doc/comerr-dev ifneq ($(UTIL_LINUX_NG),yes) mkdir -p ${debdir}/libuuid${UUID_SOVERSION}/usr/share/doc/libuuid${UUID_SOVERSION} mkdir -p ${debdir}/uuid-dev/usr/share/doc # ln -sf libuuid${UUID_SOVERSION} ${debdir}/uuid-dev/usr/share/doc/uuid-dev endif mkdir -p ${debdir}/e2fslibs/usr/share/doc/e2fslibs mkdir -p ${debdir}/e2fslibs-dev/usr/share/doc ln -sf e2fslibs ${debdir}/e2fslibs-dev/usr/share/doc/e2fslibs-dev ifneq ($(UTIL_LINUX_NG),yes) $(INSTALL) -p -m 0644 debian/libblkid.copyright \ ${debdir}/libblkid${BLKID_SOVERSION}/usr/share/doc/libblkid${BLKID_SOVERSION}/copyright endif dh_installdocs -Ne2fsprogs-udeb -Nlibblkid1-udeb -Nlibuuid1-udeb # HTML docs $(INSTALL) -d ${debdir}/e2fslibs-dev/usr/share/doc/e2fslibs/html-info/ $(INSTALL) -p -m 0644 ${stdbuilddir}/doc/*.html \ ${debdir}/e2fslibs-dev/usr/share/doc/e2fslibs/html-info/ $(INSTALL) -d ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}/html-info/ $(INSTALL) -p -m 0644 ${stdbuilddir}/lib/et/*.html \ ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}/html-info/ # texinfo docs mkdir -p ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION} $(INSTALL) -p -m 0644 ${topdir}/doc/libext2fs.texinfo \ ${debdir}/e2fslibs-dev/usr/share/doc/e2fslibs/libext2fs.texi $(INSTALL) -p -m 0644 ${topdir}/lib/et/com_err.texinfo \ ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}/com_err.texi $(INSTALL) -d ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}/examples $(INSTALL) -p -m 0644 lib/ss/ss_err.et \ ${stdbuilddir}/lib/ext2fs/ext2_err.et \ ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}/examples $(INSTALL) -d ${debdir}/ss-dev/usr/share/doc/libss${SS_SOVERSION}/examples $(INSTALL) -p -m 0644 debugfs/debug_cmds.ct \ ${debdir}/ss-dev/usr/share/doc/libss${SS_SOVERSION}/examples dh_installinfo -pcomerr-dev ${stdbuilddir}/lib/et/com_err.info dh_installinfo -pe2fslibs-dev ${stdbuilddir}/doc/libext2fs.info dh_installchangelogs dh_fixperms dh_strip $(call dh_strip_args,e2fsprogs) ifneq ($(BUILD_E2FSCK_STATIC),no) dh_strip $(call dh_strip_args2,e2fsck-static,e2fsprogs) endif ifneq ($(ismips),) dh_strip $(call dh_strip_args,e2fslibs) -Xlib64ext2fs-nopic.a else dh_strip $(call dh_strip_args,e2fslibs) endif dh_strip $(call dh_strip_args,libss${SS_SOVERSION}) dh_strip $(call dh_strip_args,libcomerr${COMERR_SOVERSION}) ifneq ($(UTIL_LINUX_NG),yes) dh_strip $(call dh_strip_args,libblkid${BLKID_SOVERSION}) dh_strip $(call dh_strip_args,libuuid${UUID_SOVERSION}) endif dh_strip # dpkg symbol handling for i in $(SYMBOL_LIBS); \ do \ echo "Generating symbols for $$i..."; \ dpkg-gensymbols -p$$i -Pdebian/$$i > debian/$$i.tmp-patch; \ cat debian/$$i.tmp-patch; \ patch debian/$$i.symbols < debian/$$i.tmp-patch; \ /bin/rm debian/$$i.tmp-patch; \ done dh_compress dh_makeshlibs --add-udeb=e2fsprogs-udeb ifeq ($(SKIP_UDEB),) ifneq ($(UTIL_LINUX_NG),yes) echo "udeb: libblkid 1 libblkid1-udeb" >> \ debian/libblkid1/DEBIAN/shlibs echo "udeb: libuuid 1 libuuid1-udeb" >> debian/libuuid1/DEBIAN/shlibs endif endif dh_installdeb dh_shlibdeps -l${stdbuilddir}/lib dh_shlibdeps -pe2fsprogs -l${stdbuilddir}/lib \ -u"-Ldebian/e2fsprogs.shlibs.local" ifeq ($(SKIP_UDEB),) dh_shlibdeps -pe2fsprogs-udeb -l${stdbuilddir}/lib \ -u"-Ldebian/e2fsprogs-udeb.shlibs.local" endif ifeq ($(SKIP_FUSE2FS),) dh_shlibdeps -pfuse2fs -l${stdbuilddir}/lib \ -u"-Ldebian/e2fsprogs.shlibs.local" endif dh_gencontrol -Ncomerr-dev -Nss-dev -Nuuid-dev \ -Ne2fsprogs-udeb -Nlibblkid1-udeb -Nlibuuid1-udeb DH_OPTIONS= dh_gencontrol -pcomerr-dev \ -u '-v${COMERR_VERSION}-${MAIN_VERSION} -VmainBinary=${MAIN_VERSION}' DH_OPTIONS= dh_gencontrol -pss-dev \ -u '-v${SS_VERSION}-${MAIN_VERSION} -VmainBinary=${MAIN_VERSION}' ifneq ($(UTIL_LINUX_NG),yes) DH_OPTIONS= dh_gencontrol -puuid-dev \ -u '-v${UUID_VERSION}-${MAIN_VERSION} -VmainBinary=${MAIN_VERSION}' endif ifeq ($(SKIP_UDEB),) dh_gencontrol -pe2fsprogs-udeb -- -fdebian/files~ ifneq ($(UTIL_LINUX_NG),yes) dh_gencontrol -plibblkid1-udeb -- -fdebian/files~ dh_gencontrol -plibuuid1-udeb -- -fdebian/files~ endif endif ifeq ($(SKIP_UDEB),) dpkg-distaddfile $(UDEB_NAME) debian-installer $(UDEB_PRIORITY) ifneq ($(UTIL_LINUX_NG),yes) dpkg-distaddfile $(BLKID_UDEB_NAME) debian-installer $(BLKID_UDEB_PRIORITY) dpkg-distaddfile $(UUID_UDEB_NAME) debian-installer $(UUID_UDEB_PRIORITY) endif endif dh_md5sums dh_builddeb binary: binary-indep binary-arch .PHONY: binary binary-arch binary-indep clean checkroot mrproper \ debug_flags debian-files debug_flags: @echo CFLAGS is $(CFLAGS) @echo LDFLAGS is $(LDFLAGS) @echo CPPFLAGS is $(CPPFLAGS)