]> git.pld-linux.org Git - packages/cvs.git/blob - cvs.spec
- rel. 4
[packages/cvs.git] / cvs.spec
1 # TODO:
2 # - http://securitytracker.com/alerts/2004/Aug/1010958.html
3 #
4 # Conditional build:
5 %bcond_without  kerberos5       # disable kerberos5 support
6 #
7 Summary:        Concurrent Versioning System
8 Summary(de):    Concurrent-Versioning-System
9 Summary(es):    Control de versiones en modo concurrente
10 Summary(fr):    Un système pour maintenir à jour des fichiers
11 Summary(pl):    Concurrent Versioning System
12 Summary(pt_BR): Controle de versões em modo concorrente
13 Summary(ru):    óÉÓÔÅÍÁ ÕÐÒÁ×ÌÅÎÉÑ ×ÅÒÓÉÑÍÉ
14 Summary(tr):    Sürüm denetim sistemi
15 Summary(uk):    óÉÓÔÅÍÁ ËÅÒÕ×ÁÎÎÑ ×ÅÒÓ¦ÑÍÉ
16 Summary(zh_CN): ²¢·¢µÄ°æ±¾¹ÜÀíϵͳCVS
17 Name:           cvs
18 Version:        1.11.17
19 Release:        4
20 License:        GPL
21 Group:          Development/Version Control
22 # new feature release: http://ftp.cvshome.org/release/feature/cvs-1.12.5/cvs-1.12.5.tar.bz2
23 Source0:        http://ccvs.cvshome.org/files/documents/19/191/%{name}-%{version}.tar.bz2
24 # Source0-md5:  17cd48888d5571d215a44a7e8d46759c
25 Source1:        %{name}.inetd
26 # based on:     http://www.t17.ds.pwr.wroc.pl/~misiek/ipv6/cvs-1.11.2-20020513-ipv6.patch.gz
27 Patch0:         %{name}-ipv6.patch
28 Patch1:         %{name}-zlib.patch
29 Patch2:         %{name}-fixed_buffer.patch
30 Patch3:         %{name}-cvspass.patch
31 Patch4:         %{name}-home_etc.patch
32 Patch5:         %{name}-newnline.patch
33 Patch6:         %{name}-no_libnsl.patch
34 Patch7:         %{name}-info.patch
35 Patch8:         %{name}-ssh.patch
36 Patch9:         %{name}-posix.patch
37 # Access Control List Extension: http://cvsacl.sourceforge.net/
38 Patch10:        %{name}-acl.patch
39 URL:            http://www.cyclic.com/
40 BuildRequires:  autoconf >= 2.58
41 BuildRequires:  automake >= 1:1.7.9
42 %{?with_kerberos5:BuildRequires:        heimdal-devel}
43 BuildRequires:  rpmbuild(macros) >= 1.159
44 BuildRequires:  zlib-devel
45 Obsoletes:      cvs-nserver-client
46 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47
48 %define         _cvs_root       /var/lib/cvs
49
50 %description
51 CVS means Concurrent Version System; it is a version control system
52 which can record the history of your files (usually, but not always,
53 source code). CVS only stores the differences between versions,
54 instead of every version of every file you've ever created. CVS also
55 keeps a log of who and when made some changes and why they occurred,
56 among other aspects.
57
58 CVS is very helpful for managing releases and controlling the
59 concurrent editing of source files among multiple authors. Instead of
60 providing version control for a collection of files in a single
61 directory, CVS provides version control for a hierarchical collection
62 of directories consisting of revision controlled files. These
63 directories and files can then be combined together to form a software
64 release.
65
66 %description -l de
67 CVS ist ein Frontend für das RCS(1)-Revisionskontrollsystem, das den
68 Begriff der Revisionskontrolle von einer Sammlung von Dateien in einem
69 einzelnen Verzeichnis auf eine ganze Hierarchie ausweitet, bestehend
70 aus revisionskontrollierten Dateien. Diese Verzeichnisse und Dateien
71 lassen sich zu einer Software-Release kombinieren. CVS bietet die
72 Funktionen, die zur Verwaltung von Software-Releases und zur
73 Überwachung der gleichzeitigen Bearbeitung von Quelldateien durch
74 mehrere Software-Entwickler notwendig sind.
75
76 %description -l es
77 CVS significa "Concurrent Version System" (sistema concurrente de
78 control de versiones). Puede guardar la historia de sus ficheros
79 (normalmente, pero no necesariamente, código fuente). CVS sólo guarda
80 las diferencias entre las versiones, en vez de guardar cada una de las
81 versiones de cada fichero que haya creado. CVS también mantiene un
82 registro de quién y cuándo realizó un cambio, el porqué del cambio,
83 etc.
84
85 CVS es muy útil para manejar los releases y controlar la edición
86 concurrente de los ficheros fuente entre varios autores. En vez de
87 proveer control de versiones para una colección de ficheros en un solo
88 directorio, CVS la provee para una colección jerárquica de directorios
89 que consistan de ficheros de revisiones controladas. Esos directorios
90 y ficheros pueden luego ser reunidos para formar un release de
91 software.
92
93 %description -l fr
94 "CVS" signifie "Concurrent Version System". C'est un système de
95 comparaison de versions de fichiers, qui peut garder une trace des
96 changements apportés à des fichiers (le plus souvent, les fichiers des
97 sources d'un programme). CVS conserve seulement les différences, et
98 non l'intégralité d'un fichier récent et d'un fichier plus ancien. A
99 chaque modification d'un fichier, CVS garde (entre autres) le nom de
100 la personne ayant fait la modification, la raison justifiant cette
101 modification, et la date à laquelle celle-ci a eu lieu.
102
103 CVS est très utile pour gérer la mise en commun des modifications
104 apportées par plusieurs personnes travaillant en parallèle sur les
105 mêmes fichiers. Au lieu de garder plusieurs versions des fichiers dans
106 un seul répertoire, CVS crée une série de répertoires, chacun
107 contenant une nouvelle version des fichiers. Ces répertoires et ces
108 fichiers peuvent ensuite être regroupés pour former la version la plus
109 à jour du logiciel. Installez ce package si vous avez besoin
110 d'utiliser un système de contrôle de version.
111
112 %description -l pl
113 CVS jest nak³adk± na rcs (Revision Control System, czyli w wolnym
114 t³umaczeniu system kontroli wersji zasobów), który rozszerza
115 mo¿liwo¶ci rcs'a z narzêdzia do kontroli zbioru plików w pojedynczym
116 katalogu o mo¿liwo¶æ kontroli zbioru hierarchicznie u³o¿onych
117 katalogów z plikami. Z pomoc± CVS w ³atwy sposób mo¿na zarz±dzaæ kodem
118 ¼ród³owym opracowywanym przez nawet bardzo du¿e zespo³y programistów
119 umo¿liwiaj±c ¶ledzenie i kontrolê wszystkich zmian w trakcie pracy nad
120 projektami i wypuszczaniem pe³nych wersji oprogramowania (release).
121
122 %description -l pt_BR
123 CVS é um front end para o rcs(1) - revision control system - que
124 estende a noção de controle de revisão de uma coletânea de arquivo em
125 um único diretório para uma coleção hierárquica de diretórios que
126 contém arquivos controlados por revisão. Esses diretórios e arquivos
127 podem ser combinados juntos para criar uma release de software. CVS
128 oferece as funções necessárias para administrar essas release de
129 software e para controlar a edição concorrente de arquivos fonte por
130 múltiplos programadores.
131
132 %description -l ru
133 CVS (Concurrent Version System) - ÜÔÏ ÓÉÓÔÅÍÁ ÕÐÒÁ×ÌÅÎÉÑ ×ÅÒÓÉÑÍÉ,
134 ËÏÔÏÒÁÑ ÕÍÅÅÔ ÚÁÐÉÓÁÔØ ÉÓÔÏÒÉÀ ×ÁÛÉÈ ÆÁÊÌÏ× (ÏÂÙÞÎÏ, ÎÏ ÎÅ ×ÓÅÇÄÁ, ÜÔÏ
135 ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ). CVS ÓÏÈÒÁÎÑÅÔ ÔÏÌØËÏ ÒÁÚÌÉÞÉÑ ÍÅÖÄÕ ×ÅÒÓÉÑÍÉ ×ÍÅÓÔÏ
136 ËÁÖÄÏÊ ×ÅÒÓÉÉ ËÁÖÄÏÇÏ ÆÁÊÌÁ, ËÏÔÏÒÁÑ ÂÙÌÁ ËÏÇÄÁ-ÌÉÂÏ ÓÏÚÄÁÎÁ. ôÁËÖÅ
137 CVS ÈÒÁÎÉÔ ÐÒÏÔÏËÏÌ ÔÏÇÏ, ËÔÏ, ËÏÇÄÁ É ÚÁÞÅÍ ÞÔÏ-ÌÉÂÏ ÉÚÍÅÎÉÌ.
138
139 CVS ÏÞÅÎØ ÐÏÌÅÚÎÁ ÄÌÑ ÏÒÇÁÎÉÚÁÃÉÉ ÒÅÌÉÚÏ× É ÕÐÒÁ×ÌÅÎÉÑ ÐÁÒÁÌÌÅÌØÎÏÊ
140 ÐÒÁ×ËÏÊ ÉÓÈÏÄÎÙÈ ÆÁÊÌÏ× ÎÅÓËÏÌØËÉÍÉ Á×ÔÏÒÁÍÉ. ÷ÍÅÓÔÏ ÐÒÅÄÏÓÔÁ×ÌÅÎÉÑ
141 ÕÐÒÁ×ÌÅÎÉÑ ×ÅÒÓÉÑÍÉ ÎÁÂÏÒÁ ÆÁÊÌÏ× × ÏÄÎÏÍ ËÁÔÁÌÏÇÅ CVS ÐÒÅÄÏÓÔÁ×ÌÑÅÔ
142 ÕÐÒÁ×ÌÅÎÉÅ ×ÅÒÓÉÑÍÉ ÉÅÒÁÒÈÉÞÅÓËÏÇÏ ÎÁÂÏÒÁ ËÁÔÁÌÏÇÏ×, ÓÏÓÔÏÑÝÉÈ ÉÚ
143 ÆÁÊÌÏ×, ×ÅÒÓÉÑÍÉ ËÏÔÏÒÙÈ ÎÁÄÏ ÕÐÒÁ×ÌÌÑÔØ. üÔÉ ÆÁÊÌÙ É ËÁÔÁÌÏÇÉ ÍÏÇÕÔ
144 ÂÙÔØ ÓÏÂÒÁÎÙ ×ÍÅÓÔÅ ÄÌÑ ÆÏÒÍÉÒÏ×ÁÎÉÑ ÒÅÌÉÚÁ ðï.
145
146 %description -l tr
147 CVS (Concurrent Versioning System), tek bir dizindeki dosya
148 topluluðunun sürüm denetimini, denetimi yapýlmýþ dizinlerin hiyerarþik
149 topluluðuna geniþleten rcs(1) sürüm denetim sisteminin ön yüzüdür. Bu
150 dizin ve dosyalar, bir yazýlým yayýný oluþturma amacýyla biraraya
151 getirilebilir. CVS, bu yazýlým yayýnlarýnýn yönetilmesini ve kaynak
152 dosyalarý bakýmýnýn birden çok yazýlým geliþtiricisi tarafýndan
153 eþzamanlý olarak yapýlmasýný kontrol etmek için gereken iþlevleri
154 saðlar.
155
156 %description -l uk
157 CVS (Concurrent Version System) - ÃÅ ÓÉÓÔÅÍÁ ËÅÒÕ×ÁÎÎÑ ×ÅÒÓ¦ÑÍÉ, ÑËÁ
158 ×ͦ¤ ÚÁÐÉÓÁÔÉ ¦ÓÔÏÒ¦À ×ÁÛÉÈ ÆÁÊ̦נ(ÚÁÚ×ÉÞÁÊ, ÁÌÅ ÎÅ ÚÁ×ÖÄÉ, ÃÅ
159 ×ÉȦÄΦ ÔÅËÓÔÉ). CVS ÚÂÅÒ¦ÇÁ¤ Ô¦ÌØËÉ Ò¦ÚÎÉÃÀ Í¦Ö ×ÅÒÓ¦ÑÍÉ ÚÁͦÓÔØ
160 ËÏÖÎϧ ×ÅÒÓ¦§ ËÏÖÎÏÇÏ ÆÁÊÌÕ, ÑËÁ ÂÕÌÁ ËÏÌÉÓØ ÓÔ×ÏÒÅÎÁ. ôÁËÏÖ CVS
161 ÚÂÅÒ¦ÇÁ¤ ÐÒÏÔÏËÏÌ ÔÏÇÏ, ÈÔÏ, ËÏÌÉ ¦ ÎÁצÝÏ ÝÏÓØ ÚͦÎÉ×.
162
163 CVS ÄÕÖÅ ËÏÒÉÓÎÁ ÄÌÑ ÏÒÇÁΦÚÁæÀ ÒÅ̦ڦנÔÁ ËÅÒÕ×ÁÎÎÑ ÐÁÒÁÌÅÌØÎÏÀ
164 ÐÒÁ×ËÏÀ ×ÉÚ¦ÄÎÉÈ ÆÁÊ̦נ˦ÌØËÏÍÁ Á×ÔÏÒÁÍÉ. úÁͦÓÔØ ÎÁÄÁÎÎÑ ÍÏÖÌÉ×ÏÓÔ¦
165 ËÅÒÕ×ÁÎÎÑ ×ÅÒÓ¦ÑÍÉ ÎÁÂÏÒÕ ÆÁÊ̦ננÏÄÎÏÍÕ ËÁÔÁÌÏÚ¦, CVS ÎÁÄÁ¤
166 ÍÏÖÌÉצÓÔØ ËÅÒÕ×ÁÎÎÑ ¦¤ÒÁÒȦÞÎÉÍ ÎÁÂÏÒÏÍ ËÁÔÁÌÏǦ×, ÝÏ ÓËÌÁÄÁÀÔØÓÑ Ú
167 ÆÁÊ̦×, ×ÅÒÓ¦ÑÍÉ ËÏÔÒÉÈ ÔÒÅÂÁ ËÅÒÕ×ÁÔÉ. ã¦ ÆÁÊÌÉ ÔÁ ËÁÔÁÌÏÇÉ ÍÏÖÕÔØ
168 ÂÕÔÉ Ú¦ÂÒÁΦ ÒÁÚÏÍ ÄÌÑ ÆÏÒÍÕ×ÁÎÎÑ ÒÅ̦ÚÕ ðú.
169
170 %package pserver
171 Summary:        rc-inetd config files to run CVS pserver
172 Summary(es):    Ficheros de configuración de rc-inetd para un servidor CVS pserver
173 Summary(pl):    Pliki konfiguracyjne rc-inetd do postawienia pservera CVS
174 Group:          Development/Version Control
175 PreReq:         %{name} = %{version}-%{release}
176 PreReq:         rc-inetd
177 Requires(pre):  /usr/bin/getgid
178 Requires(pre):  /bin/id
179 Requires(pre):  /usr/sbin/groupadd
180 Requires(pre):  /usr/sbin/useradd
181 Requires(post): fileutils
182 Requires(postun):       /usr/sbin/userdel
183 Requires(postun):       /usr/sbin/groupdel
184 Provides:       group(cvs)
185 Provides:       user(cvs)
186 Obsoletes:      cvs-nserver-common
187 Obsoletes:      cvs-nserver-nserver
188 Obsoletes:      cvs-nserver-pserver
189
190 %description pserver
191 Config files for rc-inetd that are necessary to run CVS in pserver
192 mode.
193
194 %description pserver -l es
195 Los ficheros de configuración necesarios para ejecutar CVS en el modo
196 de pserver.
197
198 %description pserver -l pl
199 Pliki konfiguracyjne rc-inetd niezbêdne do uruchomienia CVSa w trybie
200 pserver.
201
202 %prep
203 %setup -q
204 %patch0 -p1
205 %patch1 -p1
206 %patch2 -p1
207 %patch3 -p1
208 %patch4 -p1
209 %patch5 -p1
210 %patch6 -p1
211 %patch7 -p1
212 %patch8 -p1
213 %patch9 -p1
214 %patch10 -p1
215
216 %build
217 %{__aclocal}
218 %{__autoheader}
219 %{__autoconf}
220 %{__automake}
221 %configure \
222         --enable-server \
223         --enable-client \
224         --with%{!?with_kerberos5:out}-gssapi \
225         --with-tmpdir=/tmp \
226         --with-editor=/bin/vi
227
228 %{__make}
229
230 %install
231 rm -rf $RPM_BUILD_ROOT
232 install -d $RPM_BUILD_ROOT{/etc/sysconfig/rc-inetd,%{_cvs_root}}
233
234 %{__make} install \
235         DESTDIR=$RPM_BUILD_ROOT
236
237 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs
238
239 rm -f contrib/{.cvsignore,Makefile*,*.pl,*.sh,*.csh}
240 mv -f $RPM_BUILD_ROOT%{_datadir}/cvs/contrib/rcs2log $RPM_BUILD_ROOT%{_bindir}
241
242 %clean
243 rm -rf $RPM_BUILD_ROOT
244
245 %post
246 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
247
248 %postun
249 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
250
251 %pre pserver
252 if [ -n "`/usr/bin/getgid cvs`" ]; then
253         if [ "`/usr/bin/getgid cvs`" != "52" ]; then
254                 echo "Error: group cvs doesn't have gid=52. Correct this before installing cvs." 1>&2
255                 exit 1
256         fi
257 else
258         /usr/sbin/groupadd -f -g 52 cvs 1>&2
259 fi
260 if [ -n "`/bin/id -u cvs 2>/dev/null`" ]; then
261         if [ "`/bin/id -u cvs`" != "52" ]; then
262                 echo "Error: user cvs doesn't have uid=52. Correct this before installing cvs." 1>&2
263                 exit 1
264         fi
265 else
266         /usr/sbin/useradd -g cvs -d %{_cvs_root} -u 52 -s /bin/false cvs 1>&2
267 fi
268
269 %post pserver
270 if [ "$1" = "1" ]; then
271         # Initialise repository
272         %{_bindir}/cvs -d :local:%{_cvs_root} init
273         chown -R cvs:cvs %{_cvs_root}/CVSROOT
274 fi
275 if [ -f /var/lock/subsys/rc-inetd ]; then
276         /etc/rc.d/init.d/rc-inetd reload
277 fi
278
279 %postun pserver
280 if [ "$1" = "0" ]; then
281         %userremove cvs
282         %groupremove cvs
283         if [ -f /var/lock/subsys/rc-inetd ]; then
284                 /etc/rc.d/init.d/rc-inetd reload
285         fi
286 fi
287
288 %triggerpostun -- cvs-pserver < 1.1.13-1
289 echo "Warning: default cvsroot moved to %{_cvs_root}."
290 echo "Check your configration."
291
292 %files
293 %defattr(644,root,root,755)
294 %doc BUGS FAQ MINOR-BUGS NEWS PROJECTS TODO README README.cvsacl ChangeLog doc/*.ps contrib
295 %attr(755,root,root) %{_bindir}/*
296 %{_mandir}/man[158]/*
297 %{_infodir}/cvs*
298
299 %files pserver
300 %defattr(644,root,root,755)
301 %attr(770,root,cvs) %dir %{_cvs_root}
302 %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/rc-inetd/cvs
This page took 0.117853 seconds and 3 git commands to generate.