Whamcloud - gitweb
LU-12899 build: rhel8 not install kernel-rpm-macros
[fs/lustre-release.git] / debian / rules
index 902d4ab..33f7878 100755 (executable)
@@ -63,12 +63,12 @@ UPVERSION=$(shell echo $(VERSION) | sed -e 's/-[^-]*$$//')
 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?=$(KVER)
 KSRC?=$(LINUX_OBJ)
 KSRC_TREE?=$(LINUX)
-IB_OPTIONS?=""
+EXTRA_OPTIONS?=$(IB_OPTIONS)
 
 # Packages provided for both client and server builds
 IOKIT_PKG=lustre-iokit
@@ -81,10 +81,14 @@ SOURCE_PKG=lustre-source
 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
 
@@ -138,7 +142,7 @@ autogen-stamp: patch-stamp
 # modules, whereas the modules build omits the utilities, to create two
 # neatly separated debian files.
 #
-# Note: KERNEL_SRC, KERNEL_CFG, ZFS_SRC and SPL_SRC need to be set from the
+# 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
@@ -154,8 +158,22 @@ configure-stamp: autogen-stamp debian/control.main debian/control.modules.in
        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 --disable-modules"; \
+               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}"; \
@@ -168,14 +186,23 @@ configure-stamp: autogen-stamp debian/control.main debian/control.modules.in
        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; \
        echo "Final value of EXTRAFLAGS: $${EXTRAFLAGS}"; \
        ( cd $(BUILDDIR) && \
                $(SRCDIR)/configure --disable-dependency-tracking \
                        --with-linux=$${KERNEL_SRC} \
-                       --with-linux-config=$${KERNEL_CFG} \
+                       --with-linux-obj=$${KERNEL_OBJ} \
                        --disable-snmp \
                        --enable-quota \
                        $${EXTRAFLAGS} \
+                       $(EXTRA_OPTIONS) \
        ); \
        touch $@
 
@@ -202,7 +229,8 @@ build-stamp: patch-stamp configure-stamp
 # 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)
+            binary-$(IOKIT_PKG) binary-$(TESTS_PKG) \
+            $(RESOURCE_TARGET)
 
 binary-indep: binary-$(SOURCE_PKG) $(DKMS_TARGET)
 
@@ -232,6 +260,24 @@ 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
@@ -426,6 +472,9 @@ kdist_config: prep-deb-files patch-stamp
                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; \
        echo "Final value of EXTRAFLAGS: $${EXTRAFLAGS}"; \
        ./configure --with-linux=$(KSRC_TREE) \
                --with-linux-obj=$(KSRC) \
@@ -435,9 +484,9 @@ kdist_config: prep-deb-files patch-stamp
                --disable-snmp \
                --disable-tests \
                --enable-quota \
-               --with-kmp-moddir=updates \
+               --with-kmp-moddir=updates/kernel \
                $${EXTRAFLAGS} \
-               $(IB_OPTIONS)
+               $(EXTRA_OPTIONS)
 
 
 kdist_configure: kdist_config