# as an alternative to this implementation we could simply "make -C $kdir kernelversion"
%{!?kversion: %global kversion %(files="include/generated/utsrelease.h include/linux/utsrelease.h include/linux/version.h"; for f in $files; do if test -r %{kobjdir}/$f && grep UTS_RELEASE %{kobjdir}/$f >/dev/null; then sed -ne '/^#define UTS_RELEASE/s/.*"\\(.*\\)"$/\\1/p' %{kobjdir}/$f; break; fi; done)}
-%define buildid %(if [ -n "@BUILDID@" ]; then echo "_@BUILDID@"; fi)
-
%if 0%{?build_src_rpm}
%{!?myrelease: %global myrelease 1}
%else
- %{!?downstream_release: %global downstream_release "@DOWNSTREAM_RELEASE@"}
- %{!?myrelease: %global myrelease %(if [ -n "%downstream_release" ]; then echo -n "%{downstream_release}_"; fi; echo %kversion | tr '-' '_')}
+ %{!?myrelease: %global myrelease %(echo %kversion | tr '-' '_')}
# for those uses that don't want the -smp/-bigsmp (or the .arch) on the end
# of %kversion
%define krequires %(echo %{kversion} | sed -e 's/\.x86_64$//' -e 's/\.i[3456]86$//' -e 's/-smp$//' -e 's/-bigsmp$//' -e 's/[-.]ppc64$//' -e 's/\.aarch64$//' -e 's/-default$//')
%endif
-# always append the buildid, even when the caller defines %release
-%define fullrelease %{myrelease}%{buildid}
+%define fullrelease %{myrelease}
# in order to get kernel symset and/or kernel module dependencies into
# the RPM, in order to support weak-modules, the internal dependency gen-
%endif
%endif
-%if %{defined cross_path} && %{defined post_script}
-%define rpm_post_base %(dirname %{cross_path})/%{lustre_name}
-%endif
-
-# SUSE don't support .debug_info section from cross compiler:
-# /usr/lib/rpm/debugedit: Unhandled relocation 10 in .debug_info section
-%if %{defined cross_path} && 0%{?suse_version}
-%global __debug_install_post %{nil}
-%global __debug_package %{nil}
-%global debug_package %{nil}
-%endif
-
Summary: Lustre File System
Name: %{lustre_name}
Version: %{version}
Provides: lustre-lite = %{version}, lustre-lite-utils = %{version}
Requires: %{name}-modules = %{version}
BuildRequires: libtool
-%if %{with manpages}
-BuildRequires: python-docutils
-%endif
%if %{with servers}
Requires: lustre-osd
Requires: lustre-osd-mount
Provides: lustre-client = %{version}-%{fullrelease}
%endif
-%if %{defined cross_requires}
-Requires: %{cross_requires}
-AutoReqProv: no
-%else
# GSS requires this: BuildRequires: pkgconfig, libgssapi-devel >= 0.10
%if %{_vendor}=="redhat" || %{_vendor}=="fedora"
#suse don't support selinux
BuildRequires: libselinux-devel
Requires: libselinux
%endif
-%endif
%description
Userspace tools and files for the Lustre file system.
%if %{with lustre_modules}
%package modules
Summary: Kernel Lustre modules for Linux %{kversion}
-%if %{defined cross_requires}
-Requires: %{cross_requires}
-AutoReqProv: no
-%else
# for SLES11, we need nothing here
%if %{_vendor}=="redhat" || %{_vendor}=="fedora"
%if %{defined krequires}
BuildRequires: libyaml-devel
%endif
%endif
-%endif
Group: Development/Kernel
%description modules
%endif
%endif # with lustre_modules
-%package source
-Summary: Object-Based Disk storage driver source
-Group: Development/Kernel
-
-%description source
-Lustre sources for further development
-
# Since the RPMs we ship are to be used on both SLES and RHEL, we
# can't include any dependency information (since the package names
# are different on the two platforms).
echo '%{_sysconfdir}/init.d/lustre' >>lustre.files
%endif
echo '%{_sysconfdir}/init.d/lnet' >>lustre.files
+echo '%{_sysconfdir}/init.d/lsvcgss' >>lustre.files
%endif
-# Create the pristine source directory.
-cd $RPM_BUILD_DIR/lustre-%{version}
-mkdir -p $RPM_BUILD_ROOT%{_prefix}/src
-rm -f lustre-source
-ln -s $RPM_BUILD_ROOT%{_prefix}/src lustre-source
-make distdir distdir=lustre-source/lustre-%{version}
-chmod -R go-w lustre-source/lustre-%{version}
# fc18 needs 'x' permission for library files
find $RPM_BUILD_ROOT -name \*.so -type f -exec chmod +x {} \;
find $RPM_BUILD_ROOT%{_libdir}/@PACKAGE@ \
-name \*.la -type f -exec rm -f {} \;
+%if %{with lustre_modules}
+# mark modules executable for find-debuginfo.sh
+find $RPM_BUILD_ROOT/lib/modules -name \*.ko -type f -exec chmod u+x {} \;
+%endif
+
%if %{with lustre_tests}
echo '%{_libdir}/lustre/tests/*' >>lustre-tests.files
echo '%{_bindir}/mcreate' >>lustre-tests.files
echo '%{_sbindir}/wirecheck' >>lustre-tests.files
echo '%{_sbindir}/wiretest' >>lustre-tests.files
%if %{with lustre_modules}
-echo '%{?rootdir}/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/llog_test.ko' >>lustre-tests.files
-%endif
-%endif
-
-%if %{defined cross_path}
-%if %{defined rpm_post_base}
-POST_SCRIPT=$RPM_BUILD_DIR/lustre-%{version}/%{post_script}
-if [ -f $POST_SCRIPT ]; then
- cp -f $POST_SCRIPT $RPM_BUILD_ROOT/%{rpm_post_base}.sh
- echo '%attr(0555, root, root) %{rpm_post_base}.sh' >>lustre.files
- cp -f $POST_SCRIPT $RPM_BUILD_ROOT/%{rpm_post_base}-modules.sh
-%if %{with ldiskfs}
- cp -f $POST_SCRIPT $RPM_BUILD_ROOT/%{rpm_post_base}-osd-ldiskfs.sh
-%if %{with lustre_utils}
- cp -f $POST_SCRIPT $RPM_BUILD_ROOT/%{rpm_post_base}-mount-osd-ldiskfs.sh
-%endif
-%endif
-%if %{with zfs}
- cp -f $POST_SCRIPT $RPM_BUILD_ROOT/%{rpm_post_base}-osd-zfs.sh
-%if %{with lustre_utils}
- cp -f $POST_SCRIPT $RPM_BUILD_ROOT/%{rpm_post_base}-mount-osd-zfs.sh
-%endif
-%endif
-%if %{with lustre_tests}
- cp -f $POST_SCRIPT $RPM_BUILD_ROOT/%{rpm_post_base}-tests.sh
- echo '%attr(0555, root, root) %{rpm_post_base}-tests.sh' >>lustre-tests.files
-%endif
-fi
-%endif
-%else
-%if %{with lustre_modules}
-# mark modules executable for find-debuginfo.sh
-find $RPM_BUILD_ROOT%{?rootdir}/lib/modules/%{kversion}/%{kmoddir} \
- -name \*.ko -type f -exec chmod u+x {} \;
+echo '/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/llog_test.ko' >>lustre-tests.files
%endif
%endif
%{_bindir}/lfs
%{_bindir}/lfs_migrate
-%{?rootdir}/sbin/mount.lustre
+/sbin/mount.lustre
%{_libdir}/libptlctl.a
%{_libdir}/libcfsutil.a
%{_libdir}/liblustreapi.a
%if %{with lustre_modules}
%files modules
%defattr(-,root,root)
-%{?rootdir}/lib/modules/%{kversion}/%{kmoddir}/*
+/lib/modules/%{kversion}/%{kmoddir}/*
%if %{with lustre_tests}
-%exclude %{?rootdir}/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/llog_test.ko
+%exclude /lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/llog_test.ko
%endif
%if %{with ldiskfs}
-%exclude %{?rootdir}/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/ldiskfs.ko
-%exclude %{?rootdir}/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/osd_ldiskfs.ko
+%exclude /lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/ldiskfs.ko
+%exclude /lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/osd_ldiskfs.ko
%endif
%if %{with zfs}
-%exclude %{?rootdir}/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/osd_zfs.ko
-%endif
-%if %{defined rpm_post_base}
-%attr(0555, root, root) %{rpm_post_base}-modules.sh
+%exclude /lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/osd_zfs.ko
%endif
%doc COPYING
%doc ChangeLog-lustre
%if %{with ldiskfs}
%files osd-ldiskfs
%defattr(-,root,root)
-%{?rootdir}/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/ldiskfs.ko
-%{?rootdir}/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/osd_ldiskfs.ko
-%if %{defined rpm_post_base}
-%attr(0555, root, root) %{rpm_post_base}-osd-ldiskfs.sh
-%endif
+/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/ldiskfs.ko
+/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/osd_ldiskfs.ko
%if %{with lustre_utils}
%files osd-ldiskfs-mount
%defattr(-,root,root)
%{_libdir}/@PACKAGE@/mount_osd_ldiskfs.so
-%if %{defined rpm_post_base}
-%attr(0555, root, root) %{rpm_post_base}-mount-osd-ldiskfs.sh
-%endif
%endif
%endif
%if %{with zfs}
%files osd-zfs
%defattr(-,root,root)
-%{?rootdir}/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/osd_zfs.ko
+/lib/modules/%{kversion}/%{kmoddir}/kernel/fs/@PACKAGE@/osd_zfs.ko
%{_sbindir}/zfsobj2fid
-%if %{defined rpm_post_base}
-%attr(0555, root, root) %{rpm_post_base}-osd-zfs.sh
-%endif
%if %{with lustre_utils}
%files osd-zfs-mount
%defattr(-,root,root)
%{_libdir}/@PACKAGE@/mount_osd_zfs.so
-%if %{defined rpm_post_base}
-%attr(0555, root, root) %{rpm_post_base}-mount-osd-zfs.sh
-%endif
%endif
%endif
%endif # with lustre_modules
-%files source
-%defattr(-,root,root)
-%{_prefix}/src/lustre-%{version}
-
# uncomment these lines to enable deps packages
# %files deps-sles
# %files deps-rhel
%doc lustre-iokit/stats-collect/README.iokit-lstats
%endif
-%if %{defined rpm_post_base}
-%post
-if [ -x %{rpm_post_base}.sh ]; then
- %{rpm_post_base}.sh %{cross_path} create
-fi
-
-%preun
-if [ -x %{rpm_post_base}.sh ]; then
- %{rpm_post_base}.sh %{cross_path} remove
-fi
-%endif
-
%if %{with lustre_modules}
%post modules
-%if %{defined rpm_post_base}
-if [ -x %{rpm_post_base}-modules.sh ]; then
- %{rpm_post_base}-modules.sh %{cross_path} create
-fi
-%else
if [ -f /boot/System.map-%{kversion} ]; then
depmod -ae -F /boot/System.map-%{kversion} %{kversion} || exit 0
else
into /etc/modprobe.d/unsupported_modules"
fi
-%endif
%if %{with ldiskfs}
%post osd-ldiskfs
-%if %{defined rpm_post_base}
-if [ -x %{rpm_post_base}-osd-ldiskfs.sh ]; then
- %{rpm_post_base}-osd-ldiskfs.sh %{cross_path} create
-fi
-%else
if [ -f /boot/System.map-%{kversion} ]; then
depmod -ae -F /boot/System.map-%{kversion} %{kversion} || exit 0
else
into /etc/modprobe.d/unsupported_modules"
fi
%endif
-%if %{with lustre_utils} && %{defined rpm_post_base}
-%post osd-ldiskfs-mount
-if [ -x %{rpm_post_base}-mount-osd-ldiskfs.sh ]; then
- %{rpm_post_base}-mount-osd-ldiskfs.sh %{cross_path} create
-fi
-%endif
-%endif
%if %{with zfs}
%post osd-zfs
-%if %{defined rpm_post_base}
-if [ -x %{rpm_post_base}-osd-zfs.sh ]; then
- %{rpm_post_base}-osd-zfs.sh %{cross_path} create
-fi
-%else
if [ -f /boot/System.map-%{kversion} ]; then
depmod -ae -F /boot/System.map-%{kversion} %{kversion} || exit 0
else
into /etc/modprobe.d/unsupported_modules"
fi
%endif
-%if %{with lustre_utils} && %{defined rpm_post_base}
-%post osd-zfs-mount
-if [ -x %{rpm_post_base}-mount-osd-zfs.sh ]; then
- %{rpm_post_base}-mount-osd-zfs.sh %{cross_path} create
-fi
-%endif
-%endif
%preun modules
-%if %{defined rpm_post_base}
-if [ -x %{rpm_post_base}-modules.sh ]; then
- %{rpm_post_base}-modules.sh %{cross_path} remove
-fi
-%else
MODULES_RPM_NAME=$(rpm -q %{name}-modules | grep "%{version}-%{release}")
rpm -ql $MODULES_RPM_NAME | grep '\.ko$' > /var/run/%{name}-modules || true
-%endif
%if %{with ldiskfs}
%preun osd-ldiskfs
-%if %{defined rpm_post_base}
-if [ -x %{rpm_post_base}-osd-ldiskfs.sh ]; then
- %{rpm_post_base}-osd-ldiskfs.sh %{cross_path} remove
-fi
-%else
OSD_LDISKFS_RPM_NAME=$(rpm -q %{name}-osd-ldiskfs | grep "%{version}-%{release}")
rpm -ql $OSD_LDISKFS_RPM_NAME | grep '\.ko$' > /var/run/%{name}-osd-ldiskfs || true
%endif
-%if %{with lustre_utils} && %{defined rpm_post_base}
-%preun osd-ldiskfs-mount
-if [ -x %{rpm_post_base}-mount-osd-ldiskfs.sh ]; then
- %{rpm_post_base}-mount-osd-ldiskfs.sh %{cross_path} remove
-fi
-%endif
-%endif
%if %{with zfs}
%preun osd-zfs
-%if %{defined rpm_post_base}
-if [ -x %{rpm_post_base}-osd-zfs.sh ]; then
- %{rpm_post_base}-osd-zfs.sh %{cross_path} remove
-fi
-%else
OSD_ZFS_RPM_NAME=$(rpm -q %{name}-osd-zfs | grep "%{version}-%{release}")
rpm -ql $OSD_ZFS_RPM_NAME | grep '\.ko$' > /var/run/%{name}-osd-zfs || true
%endif
-%if %{with lustre_utils} && %{defined rpm_post_base}
-%preun osd-zfs-mount
-if [ -x %{rpm_post_base}-mount-osd-zfs.sh ]; then
- %{rpm_post_base}-mount-osd-zfs.sh %{cross_path} remove
-fi
-%endif
-%endif
-%if %{undefined cross_path}
%postun modules
if [ -f /boot/System.map-%{kversion} ]; then
depmod -ae -F /boot/System.map-%{kversion} %{kversion} || exit 0
fi
rm /var/run/%{name}-osd-zfs
%endif
-%endif
%endif # with lustre_modules
%if %{with lustre_tests}
-%if %{defined rpm_post_base}
-%post tests
-if [ -x %{rpm_post_base}-tests.sh ]; then
- %{rpm_post_base}-tests.sh %{cross_path} create
-fi
-
-%preun tests
-if [ -x %{rpm_post_base}-tests.sh ]; then
- %{rpm_post_base}-tests.sh %{cross_path} remove
-fi
-%else
%if %{with lustre_modules}
%post tests
if [ -f /boot/System.map-%{kversion} ]; then
fi
%endif
%endif
-%endif
%clean
rm -rf $RPM_BUILD_ROOT