blob: 7c9f90e6c483ffb20c915aaffe718673c6219a5c [file] [log] [blame]
#!/usr/bin/make -f
export DH_VERBOSE=1
export AUTOHEADER=true
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
PMAKEFLAGS += -j$(NUMJOBS)
endif
ifeq (,$(filter terse,$(DEB_BUILD_OPTIONS)))
PMAKEFLAGS += V=1
endif
package = xfsprogs
develop = xfslibs-dev
bootpkg = xfsprogs-udeb
include /usr/share/dpkg/architecture.mk
version = $(shell dpkg-parsechangelog | grep ^Version: | cut -d ' ' -f 2 | cut -d '-' -f 1)
target ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
udebpkg = $(bootpkg)_$(version)_$(target).udeb
dirme = debian/$(package)
dirdev = debian/$(develop)
dirdi = debian/$(bootpkg)
pkgme = DIST_ROOT=$(CURDIR)/$(dirme); export DIST_ROOT;
pkgdev = DIST_ROOT=$(CURDIR)/$(dirdev); export DIST_ROOT;
pkgdi = DIST_ROOT=$(CURDIR)/$(dirdi); export DIST_ROOT;
stdenv = @GZIP=-q; export GZIP;
configure_options = \
--build=$(DEB_BUILD_GNU_TYPE) \
--with-multiarch=$(DEB_HOST_MULTIARCH) \
--host=$(DEB_HOST_GNU_TYPE) \
--disable-ubsan \
--disable-addrsan \
--disable-threadsan \
--enable-lto \
--localstatedir=/var
options = export DEBUG=-DNDEBUG DISTRIBUTION=debian \
INSTALL_USER=root INSTALL_GROUP=root LDFLAGS='$(LDFLAGS)' \
LOCAL_CONFIGURE_OPTIONS="$(configure_options) --enable-editline=yes --enable-blkid=yes" ;
diopts = $(options) \
export OPTIMIZER=-Os LOCAL_CONFIGURE_OPTIONS="$(configure_options) --enable-gettext=no" ;
%:
dh $@
override_dh_auto_configure:
dh_testdir
touch .gitcensus
override_dh_auto_build:
@echo "== dpkg-buildpackage: installer" 1>&2
if [ ! -f mkfs/mkfs.xfs-$(bootpkg) ]; then \
$(diopts) $(MAKE) include/builddefs; \
mkdir -p include/xfs; \
for dir in include libxfs; do \
$(MAKE) $(PMAKEFLAGS) -C $$dir NODEP=1 install-headers; \
done; \
for dir in include libxfs libxcmd libfrog mkfs; do \
$(MAKE) $(PMAKEFLAGS) $$dir; \
done; \
mv mkfs/mkfs.xfs mkfs/mkfs.xfs-$(bootpkg); \
$(MAKE) distclean; \
fi
@echo "== dpkg-buildpackage: configure" 1>&2
# runs configure with $(options)
$(options) $(MAKE) $(PMAKEFLAGS) include/builddefs
cp -f include/install-sh .
@echo "== dpkg-buildpackage: build" 1>&2
$(MAKE) $(PMAKEFLAGS) default
execute_before_dh_clean:
@echo "== dpkg-buildpackage: clean" 1>&2
dh_testdir
-rm -f built .gitcensus mkfs/mkfs.xfs-$(bootpkg)
$(MAKE) distclean
-rm -rf $(dirme) $(dirdev) $(dirdi)
override_dh_auto_install:
@echo "== dpkg-buildpackage: binary-arch" 1>&2
-rm -rf $(dirme) $(dirdev) $(dirdi)
dh_testdir
$(pkgme) $(MAKE) -C . install
$(pkgdev) $(MAKE) -C . install-dev
$(pkgdi) $(MAKE) -C debian install-d-i
install -D -m 0755 debian/local/initramfs.hook debian/xfsprogs/usr/share/initramfs-tools/hooks/xfs
rm -f debian/xfslibs-dev/usr/lib/$(DEB_HOST_MULTIARCH)/libhandle.la
rm -f debian/xfslibs-dev/usr/lib/$(DEB_HOST_MULTIARCH)/libhandle.a
override_dh_installdocs:
dh_installdocs -XCHANGES
override_dh_installsystemd:
dh_installsystemd -p xfsprogs --no-restart-after-upgrade --no-stop-on-upgrade system-xfs_scrub.slice xfs_scrub_all.timer