]> git.pld-linux.org Git - packages/cvs-nserver.git/blob - cvs-nserver.spec
- standarized SF source URL
[packages/cvs-nserver.git] / cvs-nserver.spec
1 Summary:        Concurrent Versions System - nserver
2 Summary(de):    Concurrent-Versioning-System - nserver
3 Summary(fr):    Un système pour maintenir à jour des fichiers - nserver
4 Summary(pl):    Concurrent Versions System - nserver
5 Summary(tr):    Sürüm denetim sistemi - nserver
6 Name:           cvs-nserver
7 Version:        1.11.1.52
8 Release:        1
9 License:        GPL
10 Group:          Development/Version Control
11 Source0:        http://dl.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
12 Source1:        %{name}.inetd
13 Source2:        cvs-pserver.inetd
14 Patch0:         %{name}-cvspasswd.patch
15 Patch1:         %{name}-info.patch
16 Patch2:         %{name}-am_ac.patch
17 Patch3:         %{name}-cvspass.patch
18 Patch4:         %{name}-home_etc.patch
19 Patch5:         %{name}-ssl-link.patch
20 BuildRequires:  autoconf
21 BuildRequires:  automake
22 BuildRequires:  openssl-devel >= 0.9.7
23 BuildRequires:  texinfo
24 BuildRequires:  zlib-devel
25 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
26
27 %define         _cvsroot        /home/services/cvsroot
28
29 %description
30 CVS is a version control system, which allows you to keep old versions
31 of files (usually source code), keep a log of who, when, and why
32 changes occurred, etc., like RCS or SCCS. Unlike the simpler systems,
33 CVS does not just operate on one file at a time or one directory at a
34 time, but operates on hierarchical collections of directories
35 consisting of version controlled files. CVS helps to manage releases
36 and to control the concurrent editing of source files among multiple
37 authors. CVS allows triggers to enable/log/control various operations
38 and works well over a wide area network.
39
40 %description -l de
41 CVS ist ein Frontend für das RCS(1)-Revisionskontrollsystem, das den
42 Begriff der Revisionskontrolle von einer Sammlung von Dateien in einem
43 einzelnen Verzeichnis auf eine ganze Hierarchie ausweitet, bestehend
44 aus revisionskontrollierten Dateien. Diese Verzeichnisse und Dateien
45 lassen sich zu einer Software-Release kombinieren. CVS bietet die
46 Funktionen, die zur Verwaltung von Software-Releases und zur
47 Überwachung der gleichzeitigen Bearbeitung von Quelldateien durch
48 mehrere Software- Entwickler notwendig sind.
49
50 %description -l fr
51 "CVS" signifie "Concurrent Version System". C'est un système de
52 comparaison de versions de fichiers, qui peut garder une trace des
53 changements apportés à des fichiers (le plus souvent, les fichiers des
54 sources d'un programme). CVS conserve seulement les différences, et
55 non l'intégralité d'un fichier récent et d'un fichier plus ancien. A
56 chaque modification d'un fichier, CVS garde (entre autres) le nom de
57 la personne ayant fait la modification, la raison justifiant cette
58 modification, et la date à laquelle celle-ci a eu lieu. CVS est très
59 utile pour gérer la mise en commun des modifications apportées par
60 plusieurs personnes travaillant en parallèle sur les mêmes fichiers.
61 Au lieu de garder plusieurs versions des fichiers dans un seul
62 répertoire, CVS crée une série de répertoires, chacun contenant une
63 nouvelle version des fichiers. Ces répertoires et ces fichiers peuvent
64 ensuite être regroupés pour former la version la plus à jour du
65 logiciel. Installez ce package si vous avez besoin d'utiliser un
66 système de contrôle de version.
67
68 %description -l pl
69 CVS jest nak³adk± na rcs (Revision Control System, czyli w wolnym
70 t³umaczeniu system kontroli wersji zasobów), który rozszerza
71 mo¿liwo¶ci rcs'a z narzêdzia do kontroli zbioru plików w pojedynczym
72 katalogu o mo¿liwo¶æ kontroli zbioru hierarchicznie u³o¿onych
73 katalogów z plikami. Z pomoc± CVS w ³atwy sposób mo¿na zarz±dzaæ kodem
74 ¼ród³owym opracowywanym przez nawet bardzo du¿e zespó³y programistów
75 umo¿liwiaj±c ¶ledzenie i kontrolê wszystkich zmian w trakcie pracy nad
76 projektami i wypuszczaniem pe³nych wersji oprogramowania (release).
77
78 %description -l tr
79 CVS (Concurrent Versioning System), tek bir dizindeki dosya
80 topluluðunun sürüm denetimini, denetimi yapýlmýþ dizinlerin hiyerarþik
81 topluluðuna geniþleten rcs(1) sürüm denetim sisteminin ön yüzüdür. Bu
82 dizin ve dosyalar, bir yazýlým yayýný oluþturma amacýyla biraraya
83 getirilebilir. CVS, bu yazýlým yayýnlarýnýn yönetilmesini ve kaynak
84 dosyalarý bakýmýnýn birden çok yazýlým geliþtiricisi tarafýndan
85 eþzamanlý olarak yapýlmasýný kontrol etmek için gereken iþlevleri
86 saðlar.
87
88 %package client
89 Summary:        Concurrent Versions System - client
90 Summary(pl):    Concurrent Versions System - klient
91 Group:          Development/Version Control
92 Obsoletes:      cvs-npclient
93 Obsoletes:      cvs
94 Provides:       cvs
95
96 %description client
97 CVS client.
98
99 %description client -l pl
100 Klient CVS.
101
102 %package common
103 Summary:        Concurrent Versions System - common files
104 Summary(pl):    Concurrent Versions System - wspólne pliki
105 Group:          Development/Version Control
106 Requires(pre):  /usr/bin/getgid
107 Requires(pre):  /bin/id
108 Requires(pre):  /usr/sbin/groupadd
109 Requires(pre):  /usr/sbin/useradd
110 Requires(pre):  cvs-nserver-client
111 Requires(pre):  fileutils
112 Requires(postun):       /usr/sbin/userdel
113 Requires(postun):       /usr/sbin/groupdel
114 Requires:       cvs-nserver-client
115 Obsoletes:      cvs-nserver
116 Obsoletes:      cvs
117
118 %description common
119 CVS - common server files.
120
121 %description common -l pl
122 Wspólne pliki serwerów CVS.
123
124 %package pserver
125 Summary:        Concurrent Versions System - pserver
126 Summary(pl):    Concurrent Versions System - pserver
127 Group:          Development/Version Control
128 PreReq:         rc-inetd
129 Requires:       cvs-nserver-common
130 Obsoletes:      cvs-npserver
131 Obsoletes:      css-pserver
132
133 %description pserver
134 CVS server - pserver files.
135
136 %description pserver -l pl
137 Serwer CVS - pliki pservera.
138
139 %package nserver
140 Summary:        Concurrent Versions System - nserver
141 Summary(pl):    Concurrent Versions System - nserver
142 Group:          Development/Version Control
143 PreReq:         rc-inetd
144 Requires:       cvs-nserver-common
145 Obsoletes:      cvs-nserver
146
147 %description nserver
148 CVS server - nserver files.
149
150 %description nserver -l pl
151 Serwer CVS - pliki nservera.
152
153 %prep
154 %setup -q
155 %patch0 -p1
156 %patch1 -p1
157 %patch2 -p1
158 %patch3 -p1
159 %patch4 -p1
160 %patch5 -p1
161
162 %build
163 %{__aclocal}
164 %{__autoconf}
165 %{__automake}
166 %configure \
167         --enable-encryption \
168         --enable-client \
169         --enable-server \
170         --enable-setuid \
171         --with-openssl \
172         --without-gssapi
173 %{__make}
174
175 %install
176 rm -rf $RPM_BUILD_ROOT
177 install -d $RPM_BUILD_ROOT/{etc/sysconfig/rc-inetd,%{_cvsroot}}
178
179 %{__make} DESTDIR=$RPM_BUILD_ROOT install
180
181 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs-nserver
182 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs-pserver
183
184 cat << EOF >$RPM_BUILD_ROOT%{_bindir}/cvs-pserver-script
185 #!/bin/sh
186 CVSPASSWD=%{_bindir}/cvspasswd \
187 exec %{_bindir}/cvs-pserver %{_cvsroot} -- \
188 %{_bindir}/cvschkpw %{_bindir}/cvs pserver
189 EOF
190
191 cat << EOF >$RPM_BUILD_ROOT%{_bindir}/cvs-nserver-script
192 #!/bin/sh
193 CVSPASSWD=%{_bindir}/cvspasswd \
194 exec %{_bindir}/cvs-nserver %{_cvsroot} -- \
195 %{_bindir}/cvschkpw %{_bindir}/cvs nserver
196 EOF
197
198 mv -f   $RPM_BUILD_ROOT%{_datadir}/cvs-nserver/contrib/rcs2log \
199         $RPM_BUILD_ROOT%{_bindir}
200
201 %clean
202 rm -rf $RPM_BUILD_ROOT
203
204 %post -n cvs-nserver-client
205 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
206
207 %postun -n cvs-nserver-client
208 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
209
210 %pre -n cvs-nserver-common
211 if [ -n "`getgid cvs`" ]; then
212         if [ "`getgid cvs`" != "52" ]; then
213                 echo "Error: group cvs doesn't have gid=52. Correct this before installing cvs-nserver." 1>&2
214                 exit 1
215         fi
216 else
217         echo "Adding group cvs GID=52."
218         /usr/sbin/groupadd -g 52 -r -f cvs
219 fi
220 if [ -n "`getgid cvsadmin`" ]; then
221         if [ "`getgid cvsadmin`" != "53" ]; then
222                 echo "Error: group cvsadmin doesn't have gid=53. Correct this before installing cvs-nserver." 1>&2
223                 exit 1
224         fi
225 else
226         echo "Adding group cvsadmin GID=53."
227         /usr/sbin/groupadd -g 53 -r -f cvsadmin
228 fi
229 if [ -n "`id -u cvs 2>/dev/null`" ]; then
230         if [ "`id -u cvs`" != "52" ]; then
231                 echo "Error: user cvs doesn't have uid=52. Correct this before installing cvs-nserver." 1>&2
232                 exit 1
233         fi
234 else
235         echo "Adding user cvs UID=52."
236         /usr/sbin/useradd -u 52 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvs cvs 1>&2
237 fi
238 if [ -n "`id -u cvsadmin 2>/dev/null`" ]; then
239         if [ "`id -u cvsadmin`" != "53" ]; then
240                 echo "Error: user cvsadmin doesn't have uid=53. Correct this before installing cvs-nserver." 1>&2
241                 exit 1
242         fi
243 else
244         echo "Adding user cvsadmin UID=53."
245         /usr/sbin/useradd -u 53 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvsadmin -G cvs cvsadmin 1>&2
246 fi
247 if [ "$1" = 1 ]; then
248         echo "Initializing repository..."
249         %{_bindir}/cvs -d :local:%{_cvsroot} init
250         chown -R cvsadmin.cvsadmin %{_cvsroot}/CVSROOT
251 fi
252
253 %postun -n cvs-nserver-common
254 if [ "$1" = "0" ]; then
255         echo "Removing user cvs."
256         /usr/sbin/userdel cvs
257         echo "Removing user cvsadmin."
258         /usr/sbin/userdel cvsadmin
259         echo "Removing group cvs."
260         /usr/sbin/groupdel cvs
261         echo "Removing group cvsadmin."
262         /usr/sbin/groupdel cvsadmin
263 fi
264
265 %post -n cvs-nserver-pserver
266 if [ -f /var/lock/subsys/rc-inetd ]; then
267         /etc/rc.d/init.d/rc-inetd reload
268 fi
269
270 %postun -n cvs-nserver-pserver
271 if [ -f /var/lock/subsys/rc-inetd ]; then
272         /etc/rc.d/init.d/rc-inetd reload
273 fi
274
275 %post -n cvs-nserver-nserver
276 if [ -f /var/lock/subsys/rc-inetd ]; then
277         /etc/rc.d/init.d/rc-inetd reload
278 fi
279
280 %postun -n cvs-nserver-nserver
281 if [ -f /var/lock/subsys/rc-inetd ]; then
282         /etc/rc.d/init.d/rc-inetd reload
283 fi
284
285 %files -n cvs-nserver-client
286 %defattr(644,root,root,755)
287 %doc AUTHORS BUGS ChangeLog FAQ FAQ.nserver NEWS NEWS.nserver PROJECTS
288 %doc README README.checkpassword TODO
289 %attr(755,root,root) %{_bindir}/cvs
290 %attr(755,root,root) %{_bindir}/cvsbug
291 %{_infodir}/cvs*
292 %{_mandir}/man[15]/cvs.*
293 %{_mandir}/man8/cvsbug.8*
294
295 %files -n cvs-nserver-common
296 %defattr(644,root,root,755)
297 %attr(4754,cvsadmin,cvs) %{_bindir}/cvspasswd
298 %attr(755,root,root) %{_bindir}/cvschkpw
299 %attr(755,root,root) %{_bindir}/rcs2log
300 %dir %{_datadir}/cvs-nserver/contrib/*
301 %attr(770,cvsadmin,cvs) %dir %{_cvsroot}
302 %{_mandir}/man8/cvs-server.8*
303
304 %files -n cvs-nserver-pserver
305 %defattr(644,root,root,755)
306 %attr(755,root,root) %{_bindir}/cvs-pserver*
307 /etc/sysconfig/rc-inetd/cvs-pserver
308 %{_mandir}/man8/cvs-pserver.8*
309
310 %files -n cvs-nserver-nserver
311 %defattr(644,root,root,755)
312 %attr(755,root,root) %{_bindir}/cvs-nserver*
313 %doc NEWS.nserver FAQ.nserver
314 /etc/sysconfig/rc-inetd/cvs-nserver
315 %{_mandir}/man8/cvs-nserver.8*
This page took 0.082907 seconds and 3 git commands to generate.