# lustre.spec %define version @VERSION@ %define kversion @LINUXRELEASE@ %define linuxdir @LINUX@ %define enable_doc @ENABLE_DOC@ Summary: Lustre Lite File System Name: lustre-lite Version: %{version} Release: @RELEASE@ Copyright: GPL Group: Utilities/System Requires: lustre-modules, PyXML Source: ftp://ftp.lustre.com/pub/lustre/lustre-%{version}.tar.gz BuildRoot: /var/tmp/lustre-%{version}-root %description The Lustre Lite Cluster File System: kernel drivers for file system, servers and utilities. %package -n lustre-modules Summary: Kernel Lustre drivers for Linux %{kversion} Requires: modutils >= 2.4.10 Group: Development/Kernel %description -n lustre-modules Lustre file System, server and network drivers for Linux %{kversion}. %package -n lustre-source Summary: Object-Based Disk storage driver source Group: Development/Kernel %description -n lustre-source Lustre Lite Source for further development %package -n lustre-doc Summary: Documentation and sample configuration files Group: Documentation # FIXME: BuildArch overrides all the packages in rpm 4.0.4-7x #BuildArch: noarch %description -n lustre-doc Documentation and sample configuration files for Lustre %package -n lustre-ldap Summary: Configures openldap server for LDAP Lustre config database Group: Configuration Requires: openldap-servers, openldap-clients, python-ldap, 4Suite %description -n lustre-ldap Configures openldap server for LDAP Lustre config database #%package -n liblustre #Summary: Lustre Lib #Group: Development/Kernel #%description -n liblustre #Lustre lib binary package. %prep %setup -qn lustre-%{version} #%setup -c -n lustre-%{version}-lib %if %{enable_doc} %define disable_doc '' %else %define disable_doc --disable-doc %endif %build # if RPM_BUILD_NCPUS unset, set it if [ -z "$RPM_BUILD_NCPUS" ] ; then RPM_BUILD_NCPUS=$(egrep -c "^cpu[0-9]+" /proc/stat || :) if [ $RPM_BUILD_NCPUS -eq 0 ] ; then RPM_BUILD_NCPUS=1 fi if [ $RPM_BUILD_NCPUS -gt 8 ] ; then RPM_BUILD_NCPUS=8 fi fi rm -rf $RPM_BUILD_ROOT # Set an explicit path to our Linux tree, if we can. cd $RPM_BUILD_DIR/lustre-%{version} ./configure \ --with-linux='%{linuxdir}' \ --with-linux-obj='@LINUX_OBJ@' \ %{disable_doc} --disable-liblustre \ --sysconfdir=%{_sysconfdir} \ --mandir=%{_mandir} make -j $RPM_BUILD_NCPUS -s %install cd $RPM_BUILD_DIR/lustre-%{version} make install DESTDIR=$RPM_BUILD_ROOT %ifarch alpha # this hurts me conf_flag= linuxdir=%{linuxdir} test -d $linuxdir && conf_flag=--with-linux=$linuxdir make clean ./configure --enable-rtscts-myrinet $conf_flag %{disable_doc} make cp linux/rtscts/rtscts.o $RPM_BUILD_ROOT/lib/modules/%{kversion}/kernel/net/lustre/rtscts_myrinet.o cp user/myrinet_utils/mcpload $RPM_BUILD_ROOT/usr/sbin/mcpload %endif # Create the pristine source directory. cd $RPM_BUILD_DIR/lustre-%{version} mkdir -p $RPM_BUILD_ROOT/usr/src rm -f lustre-source ln -s $RPM_BUILD_ROOT/usr/src lustre-source make distdir distdir=lustre-source/lustre-%{version} # ldap database directory mkdir -p $RPM_BUILD_ROOT/var/lib/ldap/lustre %files %attr(-, root, root) /sbin/mount.lustre %attr(-, root, root) /usr/sbin/lmc %attr(-, root, root) /usr/sbin/lctl %attr(-, root, root) /usr/sbin/lconf %attr(-, root, root) /usr/sbin/lrun %attr(-, root, root) /usr/sbin/llmount %attr(-, root, root) /usr/sbin/lwizard %attr(-, root, root) /usr/sbin/wiretest %attr(-, root, root) /usr/sbin/lactive %attr(-, root, root) /usr/sbin/llanalyze %attr(-, root, root) /usr/sbin/gmnalnid %attr(-, root, root) /usr/sbin/llstat.pl %attr(-, root, root) /usr/sbin/llobdstat.pl %attr(-, root, root) /usr/sbin/load_ldap.sh %attr(-, root, root) /usr/sbin/acceptor %attr(-, root, root) /usr/sbin/ptlctl %attr(-, root, root) /usr/sbin/debugctl %attr(-, root, root) /usr/sbin/lload %attr(-, root, root) /usr/sbin/obdbarrier %attr(-, root, root) /usr/sbin/obdio %attr(-, root, root) /usr/sbin/routerstat %attr(-, root, root) /usr/sbin/wirecheck %attr(-, root, root) /usr/bin/lfs %attr(-, root, root) /usr/bin/lfind %attr(-, root, root) /usr/bin/lstripe %attr(-, root, root) /usr/bin/mcreate %attr(-, root, root) /usr/bin/munlink %attr(-, root, root) /usr/lib/lustre/python %attr(-, root, root) /usr/share/lustre/examples %attr(-, root, root) /etc/init.d/lustre %attr(-, root, root) /etc/init.d/lustrefs %attr(-, root, root) /usr/lib/libptlctl.a %attr(-, root, root) /usr/lib/liblustreapi.a %attr(-, root, root) /usr/include/lustre %attr(-, root, root) /usr/include/portals %attr(-, root, root) /usr/include/linux/lustre_idl.h %attr(-, root, root) /usr/share/man/man?/* %ifarch alpha %attr(-, root, root) /usr/sbin/mcpload %endif %files -n lustre-doc %attr(-, root, root) %doc COPYING FDL %if %{enable_doc} %attr(-, root, root) %doc doc/lustre.pdf doc/lustre-HOWTO.txt %endif #%attr(-, root, root) %doc tests/client-echo.cfg tests/client-mount.cfg #%attr(-, root, root) %doc tests/client-mount2.cfg #%attr(-, root, root) %doc tests/elan-client.cfg tests/elan-server.cfg #%attr(-, root, root) %doc tests/ldlm.cfg tests/lustre.cfg #%attr(-, root, root) %doc tests/mds.cfg tests/net-client.cfg #%attr(-, root, root) %doc tests/net-local.cfg tests/net-server.cfg #%attr(-, root, root) %doc tests/obdecho.cfg tests/obdfilter.cfg %files -n lustre-modules %attr(-, root, root) %doc COPYING %attr(-, root, root) /lib/modules/%{kversion}/kernel/fs/lustre #portals modules %attr(-, root, root) /lib/modules/%{kversion}/kernel/net/lustre %files -n lustre-source %attr(-, root, root) /usr/src/lustre-%{version} #%ifarch i386 #%files -n liblustre #%attr(-, root, root) /lib/lustre #%attr(-, root, root) /usr/sbin/lctl #%attr(-, root, root) /usr/sbin/lfind #%attr(-, root, root) /usr/sbin/lstripe #%attr(-, root, root) /usr/sbin/obdio #%attr(-, root, root) /usr/sbin/obdbarrier #%attr(-, root, root) /usr/sbin/obdstat #%attr(-, root, root) /usr/sbin/lload #%attr(-, root, root) /usr/sbin/lconf #%attr(-, root, root) /usr/sbin/lmc #%attr(-, root, root) /usr/sbin/llanalyze #%endif %files -n lustre-ldap %attr(-, root, root) /etc/openldap/slapd-lustre.conf %attr(-, root, root) /etc/openldap/schema/lustre.schema %attr(-, root, root) /usr/share/lustre/lustre2ldif.xsl %attr(-, root, root) /usr/share/lustre/top.ldif #%dir /var/lib/ldap/lustre %attr(700, ldap, ldap) /var/lib/ldap/lustre %post /sbin/chkconfig --add lustre /sbin/chkconfig --add lustrefs %preun if [ $1 = 0 ]; then /sbin/chkconfig --del lustre /sbin/chkconfig --del lustrefs fi %post -n lustre-modules if [ ! -e /dev/obd ]; then mknod /dev/obd c 10 241 fi if [ ! -e /dev/portals ]; then mknod /dev/portals c 10 240 fi depmod -ae || exit 0 %postun -n lustre-modules depmod -ae || exit 0 %clean #rm -rf $RPM_BUILD_ROOT # end of file