X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=debian%2Frules;h=262ea47c2fab20e7832b7ef3b1969f29cd016556;hp=0a80989db3b8595da7da7e64aaa2f974d13a93f7;hb=2e07619477;hpb=e9b9900a90cef377ff2992096523575ada55b8c6 diff --git a/debian/rules b/debian/rules index 0a80989..262ea47 100755 --- a/debian/rules +++ b/debian/rules @@ -13,9 +13,19 @@ DEB_BUILD_GNU_SYSTEM = $(shell dpkg-architecture -qDEB_BUILD_GNU_SYSTEM) DEB_BUILD_GNU_CPU = $(shell dpkg-architecture -qDEB_BUILD_GNU_CPU) + # whether to use module-assistant to build the kernel modules or not USE_MA = true +# Whether to build the DKMS packages +BUILD_DKMS ?= false + +ifeq ($(BUILD_DKMS),true) + DKMS_TARGET = binary-$(DKMS_PKG) +else + DKMS_TARGET = +endif + CFLAGS = -Wall -g ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 @@ -28,11 +38,15 @@ endif #CC?=gcc-3.3 #export CC -# This is the debhelper compatability version to use. -export DH_COMPAT=5 +# This is the debhelper compatibility version to use. +export DH_COMPAT=9 # Module-assistant stuff -PACKAGE=lustre-client-modules +ifneq (,$(findstring server,$(DEB_BUILD_PROFILES))) + PACKAGE=lustre-server-modules +else + PACKAGE=lustre-client-modules +endif MA_DIR ?= /usr/share/modass -include $(MA_DIR)/include/generic.make -include $(MA_DIR)/include/common-rules.make @@ -40,32 +54,43 @@ MA_DIR ?= /usr/share/modass ARCH=$(shell dpkg --print-architecture) TOP_DIR:=$(shell pwd) -# the lustre build process. This is $(KERNEL_VERSION) +# This is the Lustre version VERSION=$(shell sed -n -e '1s/.*(\(.*\)) .*/\1/p' debian/changelog) -#SUPPORTED_KERNELS=2.6.27 -SUPPORTED_KERNELS=2.6.18 2.6.20 2.6.22 -UPVERSION=$(shell echo $VERSION | sed -e 's/-[^-]*$$//') -#KERNEL_VERSION=2.6.27 -# the kernel version to build all of this with -#KVER=2.6.27-11-generic -# if the above is not set, default to whatever kernel is booted -KVER?=$$(uname -r) -KERNEL_TREE=/lib/modules/$(KVER)/build +UPVERSION=$(shell echo $(VERSION) | sed -e 's/-[^-]*$$//') + +# KVER is set to LINUXRELEASE being by autoconf which is either +# $(uname -r) or the version of the source specified by the user +KVER?=$(LINUXRELEASE) + # KVERS, KSRC are the kernel version and source to use when building lustre -# Will be the default when building lustre-utils, etc but whatever module-assistant +# Will be the default when building lustre-{server,client}-utils, etc but whatever module-assistant # supplied when building modules -KVERS?=$(KERNEL_VERSION) -#KSRC?=$(KERNEL_TREE) -KSRC=$(KERNEL_TREE) +KVERS?=$(KVER) +KSRC?=$(LINUX_OBJ) +KSRC_TREE?=$(LINUX) +EXTRA_OPTIONS?=$(IB_OPTIONS) -# Packages -PATCH_PKG=linux-patch-lustre -UTILS_PKG=lustre-utils +# Packages provided for both client and server builds +IOKIT_PKG=lustre-iokit TESTS_PKG=lustre-tests DEV_PKG=lustre-dev -LIB_PKG=liblustre SOURCE_PKG=lustre-source -MODS_PKG=lustre-client-modules + +# Packages that are only built for server OR client builds +# The difference is that server build contain more modules & utils +ifneq (,$(findstring server,$(DEB_BUILD_PROFILES))) + UTILS_PKG=lustre-server-utils + MODS_PKG=lustre-server-modules + RESOURCE_PKG=lustre-resource-agents + RESOURCE_TARGET=binary-$(RESOURCE_PKG) + DKMS_PKG= +else + UTILS_PKG=lustre-client-utils + MODS_PKG=lustre-client-modules + RESOURCE_TARGET= + RESOURCE_PKG= + DKMS_PKG=lustre-client-modules-dkms +endif #Build dir #BUILDDIR=debian/build @@ -89,40 +114,101 @@ autogen-stamp: patch-stamp # needed autogen.sh scripts # see https://bugzilla.lustre.org/attachment.cgi?id=27156 # for an example) - if grep -e "^--- .*\/autoconf" -e ".*\/configure\.ac" -e ".*\/configure\.in" debian/patches/*; then \ + if grep -e "^--- .*\/autoconf\/" \ + -e "^--- .*\/autoMakefile\.am" \ + -e "^--- .*\/Makefile\.am" \ + -e "^--- .*\/configure\.ac" \ + -e "^--- .*\/configure\.in" \ + debian/patches/*; then \ if [ ! -f build/autogen.sh ]; then \ echo "You have patches which require autogen.sh to be run, but it doesn't exist"; \ echo "Please see https://bugzilla.lustre.org/attachment.cgi?id=27156"; \ exit 1; \ fi; \ cp /usr/share/misc/config.sub config.sub; \ - cp /usr/share/misc/config.sub libsysio/config.sub; \ cp /usr/share/misc/config.sub ldiskfs/config.sub; \ cp /usr/share/misc/config.guess config.guess; \ - cp /usr/share/misc/config.guess libsysio/config.guess; \ cp /usr/share/misc/config.guess ldiskfs/config.guess; \ sh build/autogen.sh; \ fi; \ touch $@ +# This section configures the lustre-utilities packages. +# +# Both client and server builds are quite similar, as the utilities build +# must create the modules too, to produce the "osd_.so" libraries. +# +# The main difference is that the utilities build does not archive the +# modules, whereas the modules build omits the utilities, to create two +# neatly separated debian files. +# +# Note: KERNEL_SRC, KERNEL_OBJ, ZFS_SRC and SPL_SRC need to be set from the +# outside. This is done by "make debs". As such, invoking "debuild" or such +# direct debian build tools will lead to a client-only build. configure: configure-stamp configure-stamp: autogen-stamp debian/control.main debian/control.modules.in dh_testdir # touch files to same date, to avoid auto* find . -type f -print0 | xargs -0 touch -r COPYING; \ if [ "$(BUILDDIR)" != "." ]; then \ - mkdir -p $(BUILDDIR)/build $(BUILDDIR)/lustre/contrib $(BUILDDIR)/libsysio; \ + mkdir -p $(BUILDDIR)/build $(BUILDDIR)/lustre/contrib; \ cp build/Makefile $(BUILDDIR)/build/; \ - cp lustre/contrib/mpich-*.patch $(BUILDDIR)/lustre/contrib/; \ - ln -s ../../../libsysio/include $(BUILDDIR)/libsysio/; \ fi + # Determine flags that are different between server/client module builds + echo "Enabled Build Profiles: $${DEB_BUILD_PROFILES}" + if echo "$${DEB_BUILD_PROFILES}" | grep -q "server"; then \ + export EXTRAFLAGS="--enable-server"; \ + if echo "$${DEB_BUILD_PROFILES}" | grep -q "systemd"; then \ + cp debian/lustre-server-utils.install.in \ + debian/lustre-server-utils.install; \ + else \ + sed /systemd/d debian/lustre-server-utils.install.in \ + > debian/lustre-server-utils.install; \ + fi; \ + else \ + export EXTRAFLAGS="--disable-server"; \ + if echo "$${DEB_BUILD_PROFILES}" | grep -q "systemd"; then \ + cp debian/lustre-client-utils.install.in \ + debian/lustre-client-utils.install; \ + else \ + sed /systemd/d debian/lustre-client-utils.install.in \ + > debian/lustre-client-utils.install; \ + fi; \ + fi; \ + if echo "$${DEB_BUILD_PROFILES}" | grep -q "zfs"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} --with-zfs=$${ZFS_SRC} --with-spl=$${SPL_SRC}"; \ + else \ + export EXTRAFLAGS="$${EXTRAFLAGS} --without-zfs" ; \ + fi; \ + if echo "$${DEB_BUILD_PROFILES}" | grep -q "ldiskfs"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} \ + --enable-ldiskfs --enable-quilt"; \ + else \ + export EXTRAFLAGS="$${EXTRAFLAGS} --disable-ldiskfs"; \ + fi; \ + if echo "$${DEB_BUILD_PROFILES}" | grep -q "o2ib"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} --with-o2ib=$${O2IB_SRC}"; \ + fi; \ + if echo "$${DEB_BUILD_PROFILES}" | grep -qw "gss"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} --enable-gss"; \ + elif echo "$${DEB_BUILD_PROFILES}" | grep -qw "nogss"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} --disable-gss"; \ + fi; \ + if echo "$${DEB_BUILD_PROFILES}" | grep -qw "crypto"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} --enable-crypto"; \ + elif echo "$${DEB_BUILD_PROFILES}" | grep -qw "nocrypto"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} --disable-crypto"; \ + fi; \ + echo "Final value of EXTRAFLAGS: $${EXTRAFLAGS}"; \ ( cd $(BUILDDIR) && \ - $(SRCDIR)/configure --disable-dependency-tracking \ - --disable-modules \ - --disable-snmp \ - --disable-client \ - --enable-quota \ - --disable-server ) + $(SRCDIR)/configure --disable-dependency-tracking \ + --with-linux=$${KERNEL_SRC} \ + --with-linux-obj=$${KERNEL_OBJ} \ + --disable-snmp \ + --enable-quota \ + $${EXTRAFLAGS} \ + $(EXTRA_OPTIONS) \ + ); \ touch $@ build-arch build-indep: build @@ -132,7 +218,7 @@ build-stamp: patch-stamp configure-stamp dh_testdir $(MAKE) -C $(BUILDDIR) $(PMAKEARGS) $(MAKE) -C $(BUILDDIR) DESTDIR=$(TOP_DIR)/debian/tmp install - # jump our lustre-client-modules into the control file if not using m-a + # jump our lustre-[client|server]-modules into the control file if not using m-a if ! $(USE_MA); then \ (cat debian/control.main; sed -e '1,/^$$/d' -e "s/_KVERS_/$(KVER)/g" < debian/control.modules.in) > debian/control; \ for file in debian/*_KVERS_*; do \ @@ -145,51 +231,16 @@ build-stamp: patch-stamp configure-stamp # let's try and operate as close as the user would and not build modules # here (for now) # instead we will build the modules with m-a in the "make debs" target -# binary-arch: binary-$(UTILS_PKG) binary-$(TESTS_PKG) binary-$(DEV_PKG) binary-$(LIB_PKG) binary-$(MODS_PKG) binary-kern-mods -binary-arch: binary-$(UTILS_PKG) binary-$(TESTS_PKG) binary-$(DEV_PKG) binary-$(LIB_PKG) +# binary-arch: binary-$(UTILS_PKG) binary-$(TESTS_PKG) binary-$(DEV_PKG) \ +# binary-$(MODS_PKG) binary-kern-mods +binary-arch: binary-$(UTILS_PKG) binary-$(DEV_PKG) \ + binary-$(IOKIT_PKG) binary-$(TESTS_PKG) \ + $(RESOURCE_TARGET) -binary-indep: binary-$(PATCH_PKG) binary-$(SOURCE_PKG) +binary-indep: binary-$(SOURCE_PKG) $(DKMS_TARGET) binary: binary-indep binary-arch -binary-$(PATCH_PKG): patch-stamp - dh_testdir - dh_testroot - dh_installdirs -p $(PATCH_PKG) - dh_installdocs -p $(PATCH_PKG) -# dh_installkpatches -p $(PATCH_PKG) - dh_install -p $(PATCH_PKG) - - # Install apply script - cp $(TOP_DIR)/debian/linux-patch-lustre.apply $(TOP_DIR)/debian/$(PATCH_PKG)/usr/src/kernel-patches/lustre/scripts/apply - chmod a+x $(TOP_DIR)/debian/$(PATCH_PKG)/usr/src/kernel-patches/lustre/scripts/apply - set -e; for KERNEL in $(SUPPORTED_KERNELS); do \ - mkdir -p $(TOP_DIR)/debian/$(PATCH_PKG)/usr/src/kernel-patches/all/$$KERNEL/apply/; \ - ln -s ../../../lustre/scripts/apply $(TOP_DIR)/debian/$(PATCH_PKG)/usr/src/kernel-patches/all/$$KERNEL/apply/lustre; \ - done - - # Install unpatch script - cp $(TOP_DIR)/debian/linux-patch-lustre.unpatch $(TOP_DIR)/debian/$(PATCH_PKG)/usr/src/kernel-patches/lustre/scripts/unpatch - chmod a+x $(TOP_DIR)/debian/$(PATCH_PKG)/usr/src/kernel-patches/lustre/scripts/unpatch - set -e; for KERNEL in $(SUPPORTED_KERNELS); do \ - mkdir -p $(TOP_DIR)/debian/$(PATCH_PKG)/usr/src/kernel-patches/all/$$KERNEL/unpatch/; \ - ln -s ../../../lustre/scripts/unpatch $(TOP_DIR)/debian/$(PATCH_PKG)/usr/src/kernel-patches/all/$$KERNEL/unpatch/lustre; \ - done - - # Install series - cp lustre/kernel_patches/series/*.series $(TOP_DIR)/debian/$(PATCH_PKG)/usr/src/kernel-patches/lustre/series/ - - # Install patches - cp lustre/kernel_patches/patches/*.patch $(TOP_DIR)/debian/$(PATCH_PKG)/usr/src/kernel-patches/lustre/patches/ - - dh_installchangelogs -p $(PATCH_PKG) lustre/ChangeLog - dh_compress -p $(PATCH_PKG) - dh_installdeb -p $(PATCH_PKG) - dh_fixperms -p $(PATCH_PKG) - dh_gencontrol -p $(PATCH_PKG) - dh_md5sums -p $(PATCH_PKG) - dh_builddeb -p $(PATCH_PKG) - binary-$(UTILS_PKG): build-stamp dh_testdir dh_testroot @@ -197,8 +248,14 @@ binary-$(UTILS_PKG): build-stamp dh_installdocs -p $(UTILS_PKG) dh_installman -p $(UTILS_PKG) dh_install -p $(UTILS_PKG) + rm -rf debian/$(UTILS_PKG)/usr/bin/iokit-* \ + debian/$(UTILS_PKG)/usr/bin/*-survey \ + debian/$(UTILS_PKG)/usr/bin/mcreate \ + debian/$(UTILS_PKG)/usr/bin/munlink \ + debian/$(UTILS_PKG)/usr/bin/statx \ + debian/$(UTILS_PKG)/usr/sbin/wirecheck \ + debian/$(UTILS_PKG)/usr/sbin/wiretest dh_makeshlibs -p $(UTILS_PKG) - dh_shlibdeps -L $(LIB_PKG) -l debian/$(LIB_PKG)/usr/lib dh_installexamples -p $(UTILS_PKG) dh_installchangelogs -p $(UTILS_PKG) lustre/ChangeLog dh_compress -p $(UTILS_PKG) @@ -209,6 +266,45 @@ binary-$(UTILS_PKG): build-stamp dh_md5sums -p $(UTILS_PKG) dh_builddeb -p $(UTILS_PKG) +binary-$(RESOURCE_PKG): build-stamp + dh_testdir + dh_testroot + dh_installdirs -p $(RESOURCE_PKG) + dh_installdocs -p $(RESOURCE_PKG) + dh_installman -p $(RESOURCE_PKG) + dh_install -p $(RESOURCE_PKG) + dh_makeshlibs -p $(RESOURCE_PKG) + dh_installexamples -p $(RESOURCE_PKG) + dh_installchangelogs -p $(RESOURCE_PKG) lustre/ChangeLog + dh_compress -p $(RESOURCE_PKG) + dh_strip -p $(RESOURCE_PKG) + dh_installdeb -p $(RESOURCE_PKG) + dh_fixperms -p $(RESOURCE_PKG) + dh_gencontrol -p $(RESOURCE_PKG) + dh_md5sums -p $(RESOURCE_PKG) + dh_builddeb -p $(RESOURCE_PKG) + +binary-$(IOKIT_PKG): build-stamp + dh_testdir + dh_testroot + dh_installdirs -p $(IOKIT_PKG) + dh_installdocs -p $(IOKIT_PKG) + dh_installman -p $(IOKIT_PKG) + dh_install -p $(IOKIT_PKG) + rm -rf debian/$(IOKIT_PKG)/usr/bin/lustre_req_history \ + debian/$(IOKIT_PKG)/usr/bin/*ll*stat \ + debian/$(IOKIT_PKG)/usr/bin/lfs-* + dh_makeshlibs -p $(IOKIT_PKG) + dh_installexamples -p $(IOKIT_PKG) + dh_installchangelogs -p $(IOKIT_PKG) lustre/ChangeLog + dh_compress -p $(IOKIT_PKG) + dh_strip -p $(IOKIT_PKG) + dh_installdeb -p $(IOKIT_PKG) + dh_fixperms -p $(IOKIT_PKG) + dh_gencontrol -p $(IOKIT_PKG) + dh_md5sums -p $(IOKIT_PKG) + dh_builddeb -p $(IOKIT_PKG) + binary-$(TESTS_PKG): build-stamp dh_testdir dh_testroot @@ -217,7 +313,6 @@ binary-$(TESTS_PKG): build-stamp dh_installman -p $(TESTS_PKG) dh_install -p $(TESTS_PKG) dh_makeshlibs -p $(TESTS_PKG) - dh_shlibdeps -L $(LIB_PKG) -l debian/$(LIB_PKG)/usr/lib dh_installexamples -p $(TESTS_PKG) dh_installchangelogs -p $(TESTS_PKG) lustre/ChangeLog dh_compress -p $(TESTS_PKG) @@ -242,23 +337,6 @@ binary-$(DEV_PKG): build-stamp dh_md5sums -p $(DEV_PKG) dh_builddeb -p $(DEV_PKG) -binary-$(LIB_PKG): build-stamp - dh_testdir - dh_testroot - dh_installdirs -p $(LIB_PKG) - dh_installdocs -p $(LIB_PKG) - dh_install -p $(LIB_PKG) - dh_makeshlibs -p $(LIB_PKG) - dh_shlibdeps -L $(LIB_PKG) -l debian/$(LIB_PKG)/usr/lib - dh_installchangelogs -p $(LIB_PKG) lustre/ChangeLog - dh_compress -p $(LIB_PKG) - dh_installdeb -p $(LIB_PKG) - dh_strip -p $(LIB_PKG) - dh_fixperms -p $(LIB_PKG) - dh_gencontrol -p $(LIB_PKG) - dh_md5sums -p $(LIB_PKG) - dh_builddeb -p $(LIB_PKG) - binary-$(SOURCE_PKG): build-stamp dh_testdir dh_testroot @@ -288,9 +366,35 @@ binary-$(SOURCE_PKG): build-stamp dh_md5sums -p $(SOURCE_PKG) dh_builddeb -p $(SOURCE_PKG) +binary-$(DKMS_PKG): build-stamp + dh_testdir + dh_testroot + # Create /usr/src/lustre-client-modules- + dh_installdirs -p $(DKMS_PKG) usr/src/lustre-client-modules-$(UPVERSION) + # Copy the source + rsync -av --exclude='debian/$(DKMS_PKG)/*' --exclude='.git/' \ + --link-dest=$(PWD) \ + . debian/$(DKMS_PKG)/usr/src/lustre-client-modules-$(UPVERSION) + # Clean it up + $(MAKE) -C debian/$(DKMS_PKG)/usr/src/lustre-client-modules-$(UPVERSION) -f debian/rules clean + + # Put the DKMS configuration file in place + sed -e 's/[@]UPVERSION[@]/$(UPVERSION)/' debian/dkms.conf.in > debian/$(DKMS_PKG)/usr/src/lustre-client-modules-$(UPVERSION)/dkms.conf + dh_install -p $(DKMS_PKG) + dh_installchangelogs -p $(DKMS_PKG) lustre/ChangeLog + dh_installdocs -p $(DKMS_PKG) + dh_compress -p $(DKMS_PKG) + dh_installdeb -p $(DKMS_PKG) + dh_strip -p $(DKMS_PKG) + dh_fixperms -p $(DKMS_PKG) + dh_gencontrol -p $(DKMS_PKG) + dh_md5sums -p $(DKMS_PKG) + dh_builddeb -p $(DKMS_PKG) + # if only we could use m-a for this, but this stupid "compliant.list" # thing fouls that up binary-kern-mods: + # Build client or server modules mkdir -p debian/m-a_root/usr_src/modules ln -s ../../../../ debian/m-a_root/usr_src/modules/lustre m-a -t -u debian/m-a_root/ -d -v -k $(KSRC) build lustre @@ -299,14 +403,13 @@ binary-kern-mods: # an alternative (to module-assistant) method of building the kernel modules binary-$(MODS_PKG): build-stamp if ! $(USE_MA); then \ - cp debian/lustre-client-modules.install debian/lustre-client-modules-$(KVER).install ; \ + cp debian/$(MODS_PKG).install debian/$(MODS_PKG)-$(KVER).install ; \ dh_testdir; \ dh_testroot; \ dh_installdirs -p $(MODS_PKG)-$(KVER); \ dh_installdocs -p $(MODS_PKG)-$(KVER); \ dh_install -p $(MODS_PKG)-$(KVER); \ dh_makeshlibs -p $(MODS_PKG)-$(KVER); \ - dh_shlibdeps -L $(LIB_PKG) -l debian/$(LIB_PKG)/usr/lib; \ dh_installchangelogs -p $(MODS_PKG)-$(KVER) lustre/ChangeLog; \ dh_compress -p $(MODS_PKG)-$(KVER); \ dh_installdeb -p $(MODS_PKG)-$(KVER); \ @@ -317,6 +420,7 @@ binary-$(MODS_PKG): build-stamp dh_builddeb -p $(MODS_PKG)-$(KVER); \ fi + ### ### For module-assistant ### @@ -354,31 +458,60 @@ kdist_config: prep-deb-files patch-stamp #-$(MAKE) -C $(KSRC) prepare scripts # touch files to same date, to avoid auto* find . -type f -print0 | xargs -0 touch -r COPYING \; - # Doesn't seem possible to only build modules... - ./configure --with-linux=$(KSRC) \ - --disable-quilt \ - --disable-dependency-tracking \ - --disable-doc \ - --disable-utils \ - --disable-liblustre \ - --disable-snmp \ - --enable-ldiskfs \ - --disable-zerocopy \ - --disable-tests \ - --enable-quota - -kdist_configure: kdist_config + # Determine flags that are different between server/client module builds + # Note: It doesn't seem possible to *only* build modules. + echo "Enabled Build Profiles: $${DEB_BUILD_PROFILES}" + if echo "$${DEB_BUILD_PROFILES}" | grep -q "server"; then \ + export EXTRAFLAGS="--enable-server"; \ + else \ + export EXTRAFLAGS="--disable-server"; \ + fi; \ + if echo "$${DEB_BUILD_PROFILES}" | grep -q "zfs"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} --with-zfs=$${ZFS_SRC} --with-spl=$${SPL_SRC}"; \ + else \ + export EXTRAFLAGS="$${EXTRAFLAGS} --without-zfs" ; \ + fi; \ + if echo "$${DEB_BUILD_PROFILES}" | grep -q "ldiskfs"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} \ + --enable-ldiskfs --enable-quilt"; \ + else \ + export EXTRAFLAGS="$${EXTRAFLAGS} \ + --disable-ldiskfs --disable-quilt"; \ + fi; \ + if echo "$${DEB_BUILD_PROFILES}" | grep -q "o2ib"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} --with-o2ib=$${O2IB_SRC}"; \ + fi; \ + if echo "$${DEB_BUILD_PROFILES}" | grep -qw "crypto"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} --enable-crypto"; \ + elif echo "$${DEB_BUILD_PROFILES}" | grep -qw "nocrypto"; then \ + export EXTRAFLAGS="$${EXTRAFLAGS} --disable-crypto"; \ + fi; \ + echo "Final value of EXTRAFLAGS: $${EXTRAFLAGS}"; \ + ./configure --with-linux=$(KSRC_TREE) \ + --with-linux-obj=$(KSRC) \ + --disable-dependency-tracking \ + --disable-doc \ + --disable-iokit \ + --disable-snmp \ + --disable-tests \ + --enable-quota \ + --with-kmp-moddir=updates/kernel \ + $${EXTRAFLAGS} \ + $(EXTRA_OPTIONS) + + +kdist_configure: kdist_config # the binary-modules rule is invoked by module-assistant while processing the # kdist* targets. It is called by module-assistant or make-kpkg and *not* # during a normal build binary-modules: prep-deb-files dh_testroot - dh_clean -k + dh_prep $(MAKE) $(PMAKEARGS) $(MAKE) install DESTDIR=$(CURDIR)/debian/$(PKGNAME) # Remove stuff that doesn't belong (no module-only target) - cd $(CURDIR)/debian/$(PKGNAME) && rm -rf usr sbin etc + cd $(CURDIR)/debian/$(PKGNAME) && rm -rf usr/bin usr/sbin usr/lib usr/share usr/include/lustre lib/systemd sbin etc dh_installdocs -p$(PKGNAME) dh_installchangelogs -p$(PKGNAME) dh_installmodules -p $(PKGNAME) @@ -388,15 +521,15 @@ binary-modules: prep-deb-files dh_gencontrol -- -v$(VERSION) dh_md5sums -p $(PKGNAME) dh_builddeb --destdir=$(DEB_DESTDIR) -p $(PKGNAME) - dh_clean -k -p $(PKGNAME) + dh_prep -p $(PKGNAME) clean: dh_testdir dh_testroot dpatch deapply-all -v -$(MAKE) distclean - rm -rf debian/substvars debian/*.bak debian/*~ *~ *-stamp debian/$(PATCH_PKG) - ls -d debian/lustre-client-modules-* | grep -v _KVERS_ | xargs rm -f || true + rm -rf debian/substvars debian/*.bak debian/*~ *~ *-stamp + ls -d debian/lustre-*-modules-* | grep -v _KVERS_ | grep -v dkms | xargs rm -f || true # only remove this if the clean was not called from kdist_clean if [ "$$MA_SOURCE_PKG" = "" ]; then \ rm -rf debian/m-a_root; \