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