Whamcloud - gitweb
b_port_step files
[fs/lustre-release.git] / build / lustre.spec.in
1 # lustre.spec
2 %define version @VERSION@
3 %define kversion @LINUXRELEASE@
4 %define linuxdir @LINUX@
5 %define enable_doc @ENABLE_DOC@
6
7 Summary: Lustre Lite File System
8 Name: lustre-lite
9 Version: %{version}
10 Release: @RELEASE@
11 Copyright: GPL
12 Group: Utilities/System
13 Requires: lustre-modules, PyXML
14 Source: ftp://ftp.lustre.com/pub/lustre/lustre-%{version}.tar.gz
15 BuildRoot: /var/tmp/lustre-%{version}-root
16
17 %description
18 The Lustre Lite Cluster File System: kernel drivers for file system,
19 servers and utilities.
20
21 %package -n lustre-modules
22 Summary: Kernel Lustre drivers for Linux %{kversion}
23 Requires: modutils >= 2.4.10
24 Group: Development/Kernel
25
26 %description -n lustre-modules
27 Lustre file System, server and network drivers for Linux %{kversion}.
28
29 %package -n lustre-source
30 Summary: Object-Based Disk storage driver source
31 Group: Development/Kernel
32
33 %description -n lustre-source
34 Lustre Lite Source for further development
35
36 %package -n lustre-doc
37 Summary: Documentation and sample configuration files
38 Group: Documentation
39 # FIXME: BuildArch overrides all the packages in rpm 4.0.4-7x
40 #BuildArch: noarch
41
42 %description -n lustre-doc
43 Documentation and sample configuration files for Lustre
44
45 %package -n lustre-ldap
46 Summary: Configures openldap server for LDAP Lustre config database
47 Group: Configuration
48 Requires: openldap-servers, openldap-clients, python-ldap, 4Suite
49
50 %description -n lustre-ldap
51 Configures openldap server for LDAP Lustre config database
52
53
54 #%package -n liblustre
55 #Summary: Lustre Lib
56 #Group: Development/Kernel
57
58 #%description -n liblustre
59 #Lustre lib binary package.
60
61 %prep
62 %setup -qn lustre-%{version}
63 #%setup -c -n lustre-%{version}-lib
64 %if %{enable_doc}
65   %define disable_doc ''
66 %else
67   %define disable_doc --disable-doc
68 %endif
69
70 %build
71 # if RPM_BUILD_NCPUS unset, set it
72 if [ -z "$RPM_BUILD_NCPUS" ] ; then
73     RPM_BUILD_NCPUS=$(egrep -c "^cpu[0-9]+" /proc/stat || :)
74     if [ $RPM_BUILD_NCPUS -eq 0 ] ; then
75         RPM_BUILD_NCPUS=1
76     fi
77     if [ $RPM_BUILD_NCPUS -gt 8 ] ; then
78         RPM_BUILD_NCPUS=8
79     fi
80 fi
81
82 rm -rf $RPM_BUILD_ROOT
83
84 # Set an explicit path to our Linux tree, if we can.
85 cd $RPM_BUILD_DIR/lustre-%{version}
86 ./configure \
87         --with-linux='%{linuxdir}' \
88         %{disable_doc} --disable-liblustre \
89         --sysconfdir=%{_sysconfdir} \
90         --mandir=%{_mandir}
91 make -j $RPM_BUILD_NCPUS -s
92
93 %install
94 cd $RPM_BUILD_DIR/lustre-%{version}
95 make install DESTDIR=$RPM_BUILD_ROOT
96
97 %ifarch alpha
98 # this hurts me
99   conf_flag=
100   linuxdir=%{linuxdir}
101   test -d $linuxdir && conf_flag=--with-linux=$linuxdir
102   make clean
103   ./configure --enable-rtscts-myrinet $conf_flag %{disable_doc}
104   make
105   cp linux/rtscts/rtscts.o $RPM_BUILD_ROOT/lib/modules/%{kversion}/kernel/net/lustre/rtscts_myrinet.o
106   cp user/myrinet_utils/mcpload $RPM_BUILD_ROOT/usr/sbin/mcpload
107 %endif
108
109 # Create the pristine source directory.
110 cd $RPM_BUILD_DIR/lustre-%{version}
111 mkdir -p $RPM_BUILD_ROOT/usr/src
112 rm -f lustre-source
113 ln -s $RPM_BUILD_ROOT/usr/src lustre-source
114 make distdir distdir=lustre-source/lustre-%{version}
115
116 # ldap database directory
117 mkdir -p $RPM_BUILD_ROOT/var/lib/ldap/lustre
118
119 %files
120 %attr(-, root, root) /sbin/mount.lustre
121 %attr(-, root, root) /usr/sbin/lmc
122 %attr(-, root, root) /usr/sbin/lctl
123 %attr(-, root, root) /usr/sbin/lconf
124 %attr(-, root, root) /usr/sbin/lrun
125 %attr(-, root, root) /usr/sbin/llmount
126 %attr(-, root, root) /usr/sbin/lwizard
127 %attr(-, root, root) /usr/sbin/wiretest
128 %attr(-, root, root) /usr/sbin/lactive
129 %attr(-, root, root) /usr/sbin/llanalyze
130 %attr(-, root, root) /usr/sbin/gmnalnid
131 %attr(-, root, root) /usr/sbin/llstat.pl
132 %attr(-, root, root) /usr/sbin/llobdstat.pl
133 %attr(-, root, root) /usr/sbin/load_ldap.sh
134 %attr(-, root, root) /usr/sbin/acceptor
135 %attr(-, root, root) /usr/sbin/ptlctl
136 %attr(-, root, root) /usr/sbin/debugctl
137 %attr(-, root, root) /usr/sbin/lload
138 %attr(-, root, root) /usr/sbin/obdbarrier
139 %attr(-, root, root) /usr/sbin/obdio
140 %attr(-, root, root) /usr/sbin/routerstat
141 %attr(-, root, root) /usr/sbin/wirecheck
142 %attr(-, root, root) /usr/bin/lfs
143 %attr(-, root, root) /usr/bin/lfind
144 %attr(-, root, root) /usr/bin/lstripe
145 %attr(-, root, root) /usr/bin/mcreate
146 %attr(-, root, root) /usr/bin/munlink
147 %attr(-, root, root) /usr/lib/lustre/python
148 %attr(-, root, root) /usr/share/lustre/examples
149
150 %attr(-, root, root) /etc/init.d/lustre
151 %attr(-, root, root) /etc/init.d/lustrefs
152 %attr(-, root, root) /usr/lib/libptlctl.a
153 %attr(-, root, root) /usr/lib/liblustreapi.a
154 %attr(-, root, root) /usr/include/lustre
155 %attr(-, root, root) /usr/include/portals
156 %attr(-, root, root) /usr/include/linux/lustre_idl.h
157
158 %attr(-, root, root) /usr/share/man/man?/*
159
160 %ifarch alpha
161 %attr(-, root, root) /usr/sbin/mcpload
162 %endif
163
164 %files -n lustre-doc
165 %attr(-, root, root) %doc COPYING FDL
166 %if %{enable_doc}
167 %attr(-, root, root) %doc doc/lustre.pdf doc/lustre-HOWTO.txt
168 %endif
169 #%attr(-, root, root) %doc tests/client-echo.cfg tests/client-mount.cfg
170 #%attr(-, root, root) %doc tests/client-mount2.cfg
171 #%attr(-, root, root) %doc tests/elan-client.cfg tests/elan-server.cfg
172 #%attr(-, root, root) %doc tests/ldlm.cfg tests/lustre.cfg
173 #%attr(-, root, root) %doc tests/mds.cfg tests/net-client.cfg
174 #%attr(-, root, root) %doc tests/net-local.cfg tests/net-server.cfg
175 #%attr(-, root, root) %doc tests/obdecho.cfg tests/obdfilter.cfg
176
177 %files -n lustre-modules
178 %attr(-, root, root) %doc COPYING
179 %attr(-, root, root) /lib/modules/%{kversion}/kernel/fs/lustre
180 #portals modules
181 %attr(-, root, root) /lib/modules/%{kversion}/kernel/net/lustre
182
183 %files -n lustre-source
184 %attr(-, root, root) /usr/src/lustre-%{version}
185
186 #%ifarch i386
187 #%files -n liblustre
188 #%attr(-, root, root) /lib/lustre
189 #%attr(-, root, root) /usr/sbin/lctl
190 #%attr(-, root, root) /usr/sbin/lfind
191 #%attr(-, root, root) /usr/sbin/lstripe
192 #%attr(-, root, root) /usr/sbin/obdio
193 #%attr(-, root, root) /usr/sbin/obdbarrier
194 #%attr(-, root, root) /usr/sbin/obdstat
195 #%attr(-, root, root) /usr/sbin/lload
196 #%attr(-, root, root) /usr/sbin/lconf
197 #%attr(-, root, root) /usr/sbin/lmc
198 #%attr(-, root, root) /usr/sbin/llanalyze
199 #%endif
200
201
202 %files -n lustre-ldap
203 %attr(-, root, root) /etc/openldap/slapd-lustre.conf
204 %attr(-, root, root) /etc/openldap/schema/lustre.schema
205 %attr(-, root, root) /usr/lib/lustre/lustre2ldif.xsl
206 %attr(-, root, root) /usr/lib/lustre/top.ldif
207 #%dir /var/lib/ldap/lustre
208 %attr(700, ldap, ldap) /var/lib/ldap/lustre
209
210 %post
211 /sbin/chkconfig --add lustre
212 /sbin/chkconfig --add lustrefs
213
214 %preun
215 if [ $1 = 0 ]; then
216   /sbin/chkconfig --del lustre
217   /sbin/chkconfig --del lustrefs
218 fi
219
220 %post -n lustre-modules
221 if [ ! -e /dev/obd ]; then
222    mknod /dev/obd c 10 241
223 fi
224 if [ ! -e /dev/portals ]; then
225    mknod /dev/portals c 10 240
226 fi
227 depmod -ae || exit 0
228
229 %postun -n lustre-modules
230 depmod -ae || exit 0
231
232 %clean
233 #rm -rf $RPM_BUILD_ROOT
234
235 # end of file