]> git.pld-linux.org Git - packages/drbd.git/blob - drbd.spec
b9316c2aa01e79821e51cbdf771346af5425d954
[packages/drbd.git] / drbd.spec
1
2 # conditional build
3 # _without_dist_kernel          without kernel form ditribution
4
5 %define         _kernel_ver     %(grep UTS_RELEASE %{_kernelsrcdir}/include/linux/version.h 2>/dev/null | cut -d'"' -f2)
6 %define         _kernel_ver_str %(echo %{_kernel_ver} | sed s/-/_/g)
7 %define         _kernel24       %(echo %{_kernel_ver} | grep -q '2\.[012]\.' ; echo $?)
8
9 Summary:        drbd is a block device designed to build high availibility clusters
10 Summary(pl):    drbd jest urz±dzeniem blokowym dla klastrów o wysokiej niezawodno¶ci
11 Name:           drbd
12 Version:        0.5.8.1
13 %define rel     3
14 Release:        %{rel}
15 License:        GPL
16 Group:          Base/Kernel
17 Group(cs):      Základ/Jádro
18 Group(da):      Basal/Kerne
19 Group(de):      Grundsätzlich/Kern
20 Group(es):      Base/Núcleo
21 Group(fr):      Base/Noyau
22 Group(it):      Base/Kernel
23 Group(ja):      ¥Ù¡¼¥¹/¥«¡¼¥Í¥ë
24 Group(no):      Basis/Kjerne
25 Group(pl):      Podstawowe/J±dro
26 Group(pt):      Base/Núcleo
27 Group(ru):      âÁÚÏ×ÙÊ ÎÁÂÏÒ/ñÄÒÏ
28 Group(sv):      Bas/Kärna
29 Source0:        http://www.complang.tuwien.ac.at/reisner/drbd/download/%{name}-%{version}.tar.gz
30 Patch0:         %{name}-kernel24.patch
31 URL:            http://www.complang.tuwien.ac.at/reisner/drbd/
32 %{!?_without_dist_kernel:BuildRequires: kernel-headers >= 2.2.20}
33 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
34
35 %description
36 drbd is a block device which is designed to build high availability
37 clusters. This is done by mirroring a whole block device via (a
38 dedicated) network. You could see it as a network RAID1.
39
40 %description -l pl
41 drbd jest urz±dzeniem blokowym zaprojektowanym dla klastrów o wysokiej
42 niezawodno¶ci. drbd dzia³a jako mirroring ca³ego urz±dzenia blokowego
43 przez (dedykowan±) sieæ. Mo¿e byæ widoczny jako sieciowy RAID1.
44
45 %description -l pt_BR
46 O DRBD é um dispositivo de bloco que é projetado para construir
47 clusters de Alta Disponibilidade. Isto é feito espelhando um
48 dispositivo de bloco inteiro via rede (dedicada ou não). Pode ser
49 visto como um RAID 1 via rede. Este pacote contém utilitários para
50 gerenciar dispositivos DRBD.
51
52 %package -n drbdsetup
53 Summary:        Setup tool and scripts for DRBD
54 Summary(pl):    Narzêdzie konfiguracyjne i skrypty dla DRBD
55 Summary(pt_BR): Utilitários para gerenciar dispositivos DRBD
56 Group:          Applications/System
57 Group(cs):      Aplikace/Systém
58 Group(da):      Programmer/System
59 Group(de):      Applikationen/System
60 Group(es):      Aplicaciones/Sistema
61 Group(fr):      Applications/Système
62 Group(it):      Applicazioni/Sistema
63 Group(ja):      ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó/¥·¥¹¥Æ¥à
64 Group(no):      Applikasjoner/System
65 Group(pl):      Aplikacje/System
66 Group(pt):      Aplicações/Sistema
67 Group(pt_BR):   Aplicações/Sistema
68 Group(ru):      ðÒÉÌÏÖÅÎÉÑ/óÉÓÔÅÍÁ
69 Group(sv):      Tillämpningar/System
70 Prereq:         rc-scripts
71 Prereq:         chkconfig
72
73 %description -n drbdsetup
74 Setup tool and init scripts for DRBD.
75
76 %description -l pl -n drbdsetup
77 Narzêdzie konfiguracyjne i skrypty startowe dla DRBD.
78
79 %package -n kernel-block-drbd
80 Summary:        kernel module with drbd - a block device designed to build high availibility clusters
81 Summary(pl):    Modu³ kernela do drbd - urz±dzenia blokowego dla klastrów o wysokiej niezawodno¶ci
82 Release:        %{rel}@%{_kernel_ver_str}
83 Group:          Base/Kernel
84 Group(cs):      Základ/Jádro
85 Group(da):      Basal/Kerne
86 Group(de):      Grundsätzlich/Kern
87 Group(es):      Base/Núcleo
88 Group(fr):      Base/Noyau
89 Group(it):      Base/Kernel
90 Group(ja):      ¥Ù¡¼¥¹/¥«¡¼¥Í¥ë
91 Group(no):      Basis/Kjerne
92 Group(pl):      Podstawowe/J±dro
93 Group(pt):      Base/Núcleo
94 Group(ru):      âÁÚÏ×ÙÊ ÎÁÂÏÒ/ñÄÒÏ
95 Group(sv):      Bas/Kärna
96 Prereq:         /sbin/depmod
97 Requires:       drbdsetup
98 Conflicts:      kernel-smp-block-drbd
99 %{!?_without_dist_kernel:Conflicts:     kernel-smp}
100 %{!?_without_dist_kernel:Conflicts:     kernel < %{_kernel_ver}}
101 %{!?_without_dist_kernel:Conflicts:     kernel > %{_kernel_ver}}
102
103 %description -n kernel-block-drbd
104 drbd is a block device which is designed to build high availability
105 clusters. This is done by mirroring a whole block device via (a
106 dedicated) network. You could see it as a network RAID1.
107
108 %description -l pl -n kernel-block-drbd
109 drbd jest urz±dzeniem blokowym zaprojektowanym dla klastrów o wysokiej
110 niezawodno¶ci. drbd dzia³a jako mirroring ca³ego urz±dzenia blokowego
111 przez (dedykowan±) sieæ. Mo¿e byæ widoczny jako sieciowy RAID1.
112
113 %package -n kernel-smp-block-drbd
114 Summary:        SMP kernel module with drbd - a block device designed to build high availibility clusters
115 Summary(pl):    Modu³ kernela SMP do drbd - urz±dzenia blokowego dla klastrów o wysokiej niezawodno¶ci
116 Release:        %{rel}@%{_kernel_ver_str}
117 Group:          Base/Kernel
118 Group(cs):      Základ/Jádro
119 Group(da):      Basal/Kerne
120 Group(de):      Grundsätzlich/Kern
121 Group(es):      Base/Núcleo
122 Group(fr):      Base/Noyau
123 Group(it):      Base/Kernel
124 Group(ja):      ¥Ù¡¼¥¹/¥«¡¼¥Í¥ë
125 Group(no):      Basis/Kjerne
126 Group(pl):      Podstawowe/J±dro
127 Group(pt):      Base/Núcleo
128 Group(ru):      âÁÚÏ×ÙÊ ÎÁÂÏÒ/ñÄÒÏ
129 Group(sv):      Bas/Kärna
130 Prereq:         /sbin/depmod
131 Requires:       drbdsetup
132 Conflicts:      kernel-block-drbd
133 %{!?_without_dist_kernel:Conflicts:     kernel-up}
134 %{!?_without_dist_kernel:Conflicts:     kernel < %{_kernel_ver}}
135 %{!?_without_dist_kernel:Conflicts:     kernel > %{_kernel_ver}}
136
137 %description -n kernel-smp-block-drbd
138 drbd is a block device which is designed to build high availability
139 clusters. This is done by mirroring a whole block device via (a
140 dedicated) network. You could see it as a network RAID1.
141
142 %description -l pl -n kernel-smp-block-drbd
143 drbd jest urz±dzeniem blokowym zaprojektowanym dla klastrów o wysokiej
144 niezawodno¶ci. drbd dzia³a jako mirroring ca³ego urz±dzenia blokowego
145 przez (dedykowan±) sieæ. Mo¿e byæ widoczny jako sieciowy RAID1.
146
147 %prep
148 %setup -q -n %{name}
149 %if %{_kernel24}
150 %patch -p1
151 %endif
152
153 %build
154
155 # SMP begin
156 %{__make} \
157 %ifarch %{ix86}
158         KAF_i386="%{rpmcflags} -malign-loops=2 -malign-jumps=2 -malign-functions=2 -fomit-frame-pointer" \
159 %else
160 %ifarch %{alpha}
161         KAF_alpha="%{rpmcfalgs} -ffixed8 -mno-fp-regs" \
162 %endif
163 %endif
164         SMPFLAG="-D__SMP__ -D__KERNEL_SMP=1" \
165         KERNVER="%{_kernel_ver}" \
166         INCLUDE="-I%{_kernelsrcdir}/include" \
167         DEBUGFLAGS="%{rpmcflags} %{?debug:-DDBG}"
168
169 mv drbd/drbd.o drbd-smp.o
170 # SMP end
171
172 # UP begin
173 %{__make} \
174 %ifarch %{ix86}
175         KAF_i386="%{rpmcflags} -malign-loops=2 -malign-jumps=2 -malign-functions=2 -fomit-frame-pointer" \
176 %else
177 %ifarch %{alpha}
178         KAF_alpha="%{rpmcfalgs} -ffixed8 -mno-fp-regs" \
179 %endif
180 %endif
181         SMPFLAG="" \
182         KERNVER="%{_kernel_ver}" \
183         INCLUDE="-I%{_kernelsrcdir}/include" \
184         DEBUGFLAGS="%{rpmcflags} %{?debug:-DDBG}"
185 # SMP end
186
187 %install
188 rm -rf $RPM_BUILD_ROOT
189 install -d $RPM_BUILD_ROOT{%{_sbindir},%{_mandir}/man{5,8},%{_sysconfdir}} \
190         $RPM_BUILD_ROOT{/etc/rc.d/init.d,/etc/ha.d/resource.d}
191
192 %if 0
193 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
194 install drbd/drbd.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/drbd.o
195 install drbd-smp.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/drbd.o
196 %else
197 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/block
198 install drbd/drbd.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/block
199 install drbd-smp.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/block/drbd.o
200 %endif
201
202 install user/drbdsetup $RPM_BUILD_ROOT%{_sbindir}
203 install scripts/drbd.conf $RPM_BUILD_ROOT%{_sysconfdir}
204 install scripts/drbd $RPM_BUILD_ROOT/etc/rc.d/init.d
205 ln -sf /etc/rc.d/init.d/drbd $RPM_BUILD_ROOT/etc/ha.d/resource.d/datadisk
206
207 install documentation/drbd.conf.5 $RPM_BUILD_ROOT%{_mandir}/man5
208 install documentation/drbdsetup.8 $RPM_BUILD_ROOT%{_mandir}/man8
209
210 gzip -9nf ChangeLog README TODO
211
212 %clean
213 rm -rf $RPM_BUILD_ROOT
214
215 %post   -n kernel-block-drbd
216 /sbin/depmod -a
217
218 %postun -n kernel-block-drbd
219 /sbin/depmod -a
220
221 %post   -n kernel-smp-block-drbd
222 /sbin/depmod -a
223
224 %postun -n kernel-smp-block-drbd
225 /sbin/depmod -a
226
227 %post -n drbdsetup
228 /sbin/chkconfig --add drbd
229 if [ -f /var/lock/subsys/drbd ]; then
230         /etc/rc.d/init.d/drbd restart >&2
231 else
232         echo "Run \"/etc/rc.d/init.d/drbd start\" to start drbd service." >&2
233 fi
234
235 %preun -n drbdsetup
236 if [ "$1" = "0" ]; then
237         if [ -f /var/lock/subsys/drbd ]; then
238                 /etc/rc.d/init.d/drbd stop
239         fi
240         /sbin/chkconfig --del drbd
241 fi
242
243 %files -n drbdsetup
244 %defattr(644,root,root,755)
245 %attr(755,root,root) %{_sbindir}/drbdsetup
246 %attr(755,root,root) /etc/rc.d/init.d/drbd
247 %attr(755,root,root) %{_sysconfdir}/ha.d/resource.d/datadisk
248 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/drbd.conf
249 %{_mandir}/man[58]/*
250
251 %files -n kernel-block-drbd
252 %defattr(644,root,root,755)
253 %doc *.gz
254 %if %{_kernel24}
255 /lib/modules/%{_kernel_ver}/block/drbd.o
256 %else
257 /lib/modules/%{_kernel_ver}/block/drbd.o
258 %endif
259
260 %if 1
261 %files -n kernel-smp-block-drbd
262 %defattr(644,root,root,755)
263 %doc *.gz
264 %if %{_kernel24}
265 /lib/modules/%{_kernel_ver}smp/block/drbd.o
266 %else
267 /lib/modules/%{_kernel_ver}smp/block/drbd.o
268 %endif
269 %endif
This page took 0.109975 seconds and 3 git commands to generate.