]> git.pld-linux.org Git - packages/drbd.git/blob - drbd.spec
- use new ver-rel macros
[packages/drbd.git] / drbd.spec
1
2 # conditional build
3 # _without_dist_kernel          without kernel form ditribution
4
5 %define         _kernel24       %(echo %{_kernel_ver} | grep -q '2\.[012]\.' ; echo $?)
6 %define rel     6
7
8 Summary:        drbd is a block device designed to build high availibility clusters
9 Summary(pl):    drbd jest urz±dzeniem blokowym dla klastrów o wysokiej niezawodno¶ci
10 Name:           drbd
11 Version:        0.5.8.1
12 Release:        %{rel}
13 License:        GPL
14 Group:          Base/Kernel
15 Source0:        http://www.complang.tuwien.ac.at/reisner/drbd/download/%{name}-%{version}.tar.gz
16 Patch0:         %{name}-kernel24.patch
17 URL:            http://www.complang.tuwien.ac.at/reisner/drbd/
18 %{!?_without_dist_kernel:BuildRequires: kernel-headers >= 2.2.20}
19 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
20
21 %description
22 drbd is a block device which is designed to build high availability
23 clusters. This is done by mirroring a whole block device via (a
24 dedicated) network. You could see it as a network RAID1.
25
26 %description -l pl
27 drbd jest urz±dzeniem blokowym zaprojektowanym dla klastrów o wysokiej
28 niezawodno¶ci. drbd dzia³a jako mirroring ca³ego urz±dzenia blokowego
29 przez (dedykowan±) sieæ. Mo¿e byæ widoczny jako sieciowy RAID1.
30
31 %description -l pt_BR
32 O DRBD é um dispositivo de bloco que é projetado para construir
33 clusters de Alta Disponibilidade. Isto é feito espelhando um
34 dispositivo de bloco inteiro via rede (dedicada ou não). Pode ser
35 visto como um RAID 1 via rede. Este pacote contém utilitários para
36 gerenciar dispositivos DRBD.
37
38 %package -n drbdsetup
39 Summary:        Setup tool and scripts for DRBD
40 Summary(pl):    Narzêdzie konfiguracyjne i skrypty dla DRBD
41 Summary(pt_BR): Utilitários para gerenciar dispositivos DRBD
42 Group:          Applications/System
43 Prereq:         rc-scripts
44 Prereq:         chkconfig
45
46 %description -n drbdsetup
47 Setup tool and init scripts for DRBD.
48
49 %description -n drbdsetup -l pl
50 Narzêdzie konfiguracyjne i skrypty startowe dla DRBD.
51
52 %package -n kernel-block-drbd
53 Summary:        kernel module with drbd - a block device designed to build high availibility clusters
54 Summary(pl):    Modu³ kernela do drbd - urz±dzenia blokowego dla klastrów o wysokiej niezawodno¶ci
55 Release:        %{rel}@%{_kernel_ver_str}
56 Group:          Base/Kernel
57 Prereq:         /sbin/depmod
58 %{!?_without_dist_kernel:%requires_releq_kernel_up}
59 Requires:       drbdsetup
60
61 %description -n kernel-block-drbd
62 drbd is a block device which is designed to build high availability
63 clusters. This is done by mirroring a whole block device via (a
64 dedicated) network. You could see it as a network RAID1.
65
66 %description -n kernel-block-drbd -l pl
67 drbd jest urz±dzeniem blokowym zaprojektowanym dla klastrów o wysokiej
68 niezawodno¶ci. drbd dzia³a jako mirroring ca³ego urz±dzenia blokowego
69 przez (dedykowan±) sieæ. Mo¿e byæ widoczny jako sieciowy RAID1.
70
71 %package -n kernel-smp-block-drbd
72 Summary:        SMP kernel module with drbd - a block device designed to build high availibility clusters
73 Summary(pl):    Modu³ kernela SMP do drbd - urz±dzenia blokowego dla klastrów o wysokiej niezawodno¶ci
74 Release:        %{rel}@%{_kernel_ver_str}
75 Group:          Base/Kernel
76 Prereq:         /sbin/depmod
77 %{!?_without_dist_kernel:%requires_releq_kernel_smp}
78 Requires:       drbdsetup
79
80 %description -n kernel-smp-block-drbd
81 drbd is a block device which is designed to build high availability
82 clusters. This is done by mirroring a whole block device via (a
83 dedicated) network. You could see it as a network RAID1.
84
85 %description -n kernel-smp-block-drbd -l pl
86 drbd jest urz±dzeniem blokowym zaprojektowanym dla klastrów o wysokiej
87 niezawodno¶ci. drbd dzia³a jako mirroring ca³ego urz±dzenia blokowego
88 przez (dedykowan±) sieæ. Mo¿e byæ widoczny jako sieciowy RAID1.
89
90 %prep
91 %setup -q -n %{name}
92 %if %{_kernel24}
93 %patch -p1
94 %endif
95
96 %build
97
98 # SMP begin
99 %{__make} \
100 %ifarch %{ix86}
101         KAF_i386="%{rpmcflags} -malign-loops=2 -malign-jumps=2 -malign-functions=2 -fomit-frame-pointer" \
102 %else
103 %ifarch %{alpha}
104         KAF_alpha="%{rpmcfalgs} -ffixed8 -mno-fp-regs" \
105 %endif
106 %endif
107         SMPFLAG="-D__SMP__ -D__KERNEL_SMP=1" \
108         KERNVER="%{_kernel_ver}" \
109         INCLUDE="-I%{_kernelsrcdir}/include" \
110         DEBUGFLAGS="%{rpmcflags} %{?debug:-DDBG}"
111
112 mv -f drbd/drbd.o drbd-smp.o
113 # SMP end
114
115 # UP begin
116 %{__make} \
117 %ifarch %{ix86}
118         KAF_i386="%{rpmcflags} -malign-loops=2 -malign-jumps=2 -malign-functions=2 -fomit-frame-pointer" \
119 %else
120 %ifarch %{alpha}
121         KAF_alpha="%{rpmcfalgs} -ffixed8 -mno-fp-regs" \
122 %endif
123 %endif
124         SMPFLAG="" \
125         KERNVER="%{_kernel_ver}" \
126         INCLUDE="-I%{_kernelsrcdir}/include" \
127         DEBUGFLAGS="%{rpmcflags} %{?debug:-DDBG}"
128 # SMP end
129
130 %install
131 rm -rf $RPM_BUILD_ROOT
132 install -d $RPM_BUILD_ROOT{%{_sbindir},%{_mandir}/man{5,8},%{_sysconfdir}} \
133         $RPM_BUILD_ROOT{/etc/rc.d/init.d,/etc/ha.d/resource.d}
134
135 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
136 install drbd/drbd.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/drbd.o
137 install drbd-smp.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/drbd.o
138
139 install user/drbdsetup $RPM_BUILD_ROOT%{_sbindir}
140 install scripts/drbd.conf $RPM_BUILD_ROOT%{_sysconfdir}
141 install scripts/drbd $RPM_BUILD_ROOT/etc/rc.d/init.d
142 ln -sf /etc/rc.d/init.d/drbd $RPM_BUILD_ROOT/etc/ha.d/resource.d/datadisk
143
144 install documentation/drbd.conf.5 $RPM_BUILD_ROOT%{_mandir}/man5
145 install documentation/drbdsetup.8 $RPM_BUILD_ROOT%{_mandir}/man8
146
147 gzip -9nf ChangeLog README TODO
148
149 %clean
150 rm -rf $RPM_BUILD_ROOT
151
152 %post   -n kernel-block-drbd
153 /sbin/depmod -a
154
155 %postun -n kernel-block-drbd
156 /sbin/depmod -a
157
158 %post   -n kernel-smp-block-drbd
159 /sbin/depmod -a
160
161 %postun -n kernel-smp-block-drbd
162 /sbin/depmod -a
163
164 %post -n drbdsetup
165 /sbin/chkconfig --add drbd
166 if [ -f /var/lock/subsys/drbd ]; then
167         /etc/rc.d/init.d/drbd restart >&2
168 else
169         echo "Run \"/etc/rc.d/init.d/drbd start\" to start drbd service." >&2
170 fi
171
172 %preun -n drbdsetup
173 if [ "$1" = "0" ]; then
174         if [ -f /var/lock/subsys/drbd ]; then
175                 /etc/rc.d/init.d/drbd stop
176         fi
177         /sbin/chkconfig --del drbd
178 fi
179
180 %files -n drbdsetup
181 %defattr(644,root,root,755)
182 %attr(755,root,root) %{_sbindir}/drbdsetup
183 %attr(755,root,root) /etc/rc.d/init.d/drbd
184 %attr(755,root,root) %{_sysconfdir}/ha.d/resource.d/datadisk
185 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/drbd.conf
186 %{_mandir}/man[58]/*
187
188 %files -n kernel-block-drbd
189 %defattr(644,root,root,755)
190 %doc *.gz
191 /lib/modules/%{_kernel_ver}/misc/drbd.o
192
193 %files -n kernel-smp-block-drbd
194 %defattr(644,root,root,755)
195 %doc *.gz
196 /lib/modules/%{_kernel_ver}smp/misc/drbd.o
This page took 0.083161 seconds and 3 git commands to generate.