3 %bcond_without dist_kernel # allow non-distribution kernel
4 %bcond_without kernel # build kernel modules
5 %bcond_with up # don't build UP module
6 %bcond_without smp # don't build SMP module
7 %bcond_without userspace # don't build userspace programs
8 %bcond_with verbose # verbose build (V=1)
11 %undefine with_dist_kernel
14 # just don't want to build it :)
19 %define __kernel_ver 2.6.16.46-0.12
20 %define __kernel_rpmvr %{__kernel_ver}
22 %define releq_kernel_smp kernel-smp = 0:%{__kernel_ver}
23 %define releq_kernel_up kernel-up = 0:%{__kernel_ver}
25 %define brand sles10sp1
28 Summary: EMC PowerPath - multi-path with fail-over and load-sharing over SCSI
29 Summary(pl.UTF-8): EMC PowerPath - multi-path z fail-over i dzieleniem obciążenia po SCSI
33 License: Proprietary (not distributable)
35 URL: https://powerlink.emc.com/
37 Source0: %{name}.LINUX-%{version}-022.%{brand}.i386.rpm
38 # NoSource0-md5: 9e687044c65d2ee368b71c339e639522
42 Source1: %{name}.LINUX-%{version}-022.%{brand}.x86_64.rpm
43 # NoSource1-md5: cbe183e0a7f4beef04873529313a7325
46 Source2: PowerPath.init
47 Requires(post,preun): /sbin/chkconfig
48 Obsoletes: EMCpower.LINUX
49 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
51 %define _sysconfdir /something/bogus
52 %define _sbindir /sbin
55 Multi-path software providing fail-over and load-sharing for SCSI
58 %description -l pl.UTF-8
59 Oprogramowanie do multi-path z opcją fail-over i dzieleniem obciążenia
64 %package -n kernel-block-emc
65 Summary: Linux driver for emc
66 Summary(pl.UTF-8): Sterownik dla Linuksa do emc
67 Release: %{_rel}@%{_kernel_ver_str}
69 Requires(post,postun): /sbin/depmod
70 %if %{with dist_kernel}
71 %requires_releq_kernel_up
72 Requires(postun): %releq_kernel_up
75 %description -n kernel-block-emc
76 This is driver for emc for Linux.
78 This package contains Linux module.
80 %description -n kernel-block-emc -l pl.UTF-8
81 Sterownik dla Linuksa do emc.
83 Ten pakiet zawiera moduł jądra Linuksa.
85 %package -n kernel-smp-block-emc
86 Summary: Linux SMP driver for emc
87 Summary(pl.UTF-8): Sterownik dla Linuksa SMP do emc
88 Release: %{_rel}@%{_kernel_ver_str}
90 Requires(post,postun): /sbin/depmod
91 %if %{with dist_kernel}
92 %requires_releq_kernel_smp
93 Requires(postun): %releq_kernel_smp
96 %description -n kernel-smp-block-emc
97 This is driver for emc for Linux.
99 This package contains Linux SMP module.
101 %description -n kernel-smp-block-emc -l pl.UTF-8
102 Sterownik dla Linuksa do emc.
104 Ten pakiet zawiera moduł jądra Linuksa SMP.
109 rpm2cpio %{SOURCE0} | cpio -dimu
112 rpm2cpio %{SOURCE1} | cpio -dimu
114 mv etc/opt/emcpower/EMCpower.LINUX-%{version}/* .
115 echo 'options emcp managedclass=symm,clariion,hitachi,invista,hpxp,ess,hphsx' >> modprobe.conf.pp
118 rm -rf $RPM_BUILD_ROOT
119 %if %{with userspace}
120 install -d $RPM_BUILD_ROOT{/etc/emc/ppme,%{_libdir},%{_sbindir},%{_mandir}/man1,/etc/modprobe.d,%{_datadir}/locale,/etc/rc.d/init.d}
123 install -d $RPM_BUILD_ROOT{/etc/udev/rules.d,/lib/udev}
124 install udev-pp.rules $RPM_BUILD_ROOT/etc/udev/rules.d
125 install pp_udev.sh $RPM_BUILD_ROOT/lib/udev/pp_udev.sh
127 cp -a man/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
128 cp -a i18n/catalog/* $RPM_BUILD_ROOT%{_datadir}/locale
129 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/PowerPath
130 install bin/lib/* $RPM_BUILD_ROOT%{_libdir}
131 install bin/cmds/* $RPM_BUILD_ROOT%{_sbindir}
132 cp -a bin/.drivers_* $RPM_BUILD_ROOT/etc/emc
136 cat PowerPath.lang >> EMCpower.lang
138 # hardcoded paths. oh sigh
139 install -d $RPM_BUILD_ROOT/etc/opt/emcpower/.tmp
140 mv $RPM_BUILD_ROOT{%{_sbindir},/etc/opt/emcpower}/emcpmgr
141 mv $RPM_BUILD_ROOT{%{_sbindir},/etc/opt/emcpower}/powercf
142 touch $RPM_BUILD_ROOT/etc/opt/emcpower/.__emcp_db_global_lock
143 touch $RPM_BUILD_ROOT/etc/opt/emcpower/.__emcp_db_lock
145 install -d $RPM_BUILD_ROOT/opt/emcpower
146 install -d $RPM_BUILD_ROOT/etc/emcpower
147 touch $RPM_BUILD_ROOT/etc/emc/mpaa.{excluded,lams}
152 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/drivers/block
153 install -D modprobe.conf.pp $RPM_BUILD_ROOT/etc/modprobe.d/%{_kernel_ver}/%{name}.conf
156 install bin/driver/%{brand}default_x8664/*.ko $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}-smp/kernel/drivers/block
160 %if %{with smp} && %{with dist_kernel}
161 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}-smp/kernel/drivers/block
162 install -D modprobe.conf.pp $RPM_BUILD_ROOT/etc/modprobe.d/%{_kernel_ver}-smp/%{name}.conf
164 install bin/driver/%{brand}smp_x8664/*.ko $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}-smp/kernel/drivers/block
169 rm -rf $RPM_BUILD_ROOT
172 /sbin/chkconfig --add PowerPath
175 if [ "$1" = "0" ]; then
176 /sbin/chkconfig --del PowerPath
179 %post -n kernel-block-emc
180 %depmod %{_kernel_ver}
182 %postun -n kernel-block-emc
183 %depmod %{_kernel_ver}
185 %post -n kernel-smp-block-emc
186 %depmod %{_kernel_ver}-smp
188 %postun -n kernel-smp-block-emc
189 %depmod %{_kernel_ver}-smp
193 %files -n kernel-block-emc
194 %defattr(644,root,root,755)
195 /etc/modprobe.d/%{_kernel_ver}/%{name}.conf
196 /lib/modules/%{_kernel_ver}/kernel/drivers/block/*.ko*
199 %if %{with smp} && %{with dist_kernel}
200 %files -n kernel-smp-block-emc
201 %defattr(644,root,root,755)
202 /etc/modprobe.d/%{_kernel_ver}-smp/%{name}.conf
203 /lib/modules/%{_kernel_ver}-smp/kernel/drivers/block/*.ko*
207 %if %{with userspace}
208 %files -f EMCpower.lang
209 %defattr(644,root,root,755)
210 /etc/udev/rules.d/*.rules
211 %attr(755,root,root) /lib/udev/pp_udev.sh
216 %ghost /etc/emc/mpaa.excluded
217 %ghost /etc/emc/mpaa.lams
218 %attr(754,root,root) /etc/rc.d/init.d/PowerPath
219 %attr(755,root,root) %{_sbindir}/emcpadm
220 %attr(755,root,root) %{_sbindir}/emcpdiscover
221 %attr(755,root,root) %{_sbindir}/emcppurge
222 %attr(755,root,root) %{_sbindir}/emcpreg
223 %attr(755,root,root) %{_sbindir}/powermt
224 %attr(755,root,root) %{_sbindir}/powerprotect
225 %attr(755,root,root) %{_sbindir}/powermig
226 %attr(755,root,root) %{_sbindir}/pp_inq
227 %attr(755,root,root) %{_libdir}/libemcp.so
228 %attr(755,root,root) %{_libdir}/libemcp_core.so
229 %attr(755,root,root) %{_libdir}/libemcp_lam.so
230 %attr(755,root,root) %{_libdir}/libemcp_lic_rtl.so
231 %attr(755,root,root) %{_libdir}/libemcp_mp_rtl.so
232 %attr(755,root,root) %{_libdir}/libemcpmp.so
233 %attr(755,root,root) %{_libdir}/libpn.so
234 %{_mandir}/man1/emcpadm.1*
235 %{_mandir}/man1/emcpreg.1*
236 %{_mandir}/man1/emcpupgrade.1*
237 %{_mandir}/man1/powerformat.1*
238 %{_mandir}/man1/powermig.1*
239 %{_mandir}/man1/powermt.1*
240 %{_mandir}/man1/powerprotect.1*
242 # hardcoded paths. oh sigh
243 %dir /etc/opt/emcpower
244 %attr(755,root,root) /etc/opt/emcpower/emcpmgr
245 %attr(755,root,root) /etc/opt/emcpower/powercf
246 %ghost /etc/opt/emcpower/.__emcp_db_global_lock
247 %ghost /etc/opt/emcpower/.__emcp_db_lock