]> git.pld-linux.org Git - packages/cvs.git/blob - cvs.spec
- updated cvs-acl.patch
[packages/cvs.git] / cvs.spec
1 #
2 # Conditional build:
3 %bcond_without  kerberos5       # disable kerberos5 support
4 %bcond_without  acl             # disable ACL support
5 #
6 Summary:        Concurrent Versioning System
7 Summary(de):    Concurrent-Versioning-System
8 Summary(es):    Control de versiones en modo concurrente
9 Summary(fr):    Un système pour maintenir à jour des fichiers
10 Summary(pl):    Concurrent Versioning System
11 Summary(pt_BR): Controle de versões em modo concorrente
12 Summary(ru):    óÉÓÔÅÍÁ ÕÐÒÁ×ÌÅÎÉÑ ×ÅÒÓÉÑÍÉ
13 Summary(tr):    Sürüm denetim sistemi
14 Summary(uk):    óÉÓÔÅÍÁ ËÅÒÕ×ÁÎÎÑ ×ÅÒÓ¦ÑÍÉ
15 Summary(zh_CN): ²¢·¢µÄ°æ±¾¹ÜÀíϵͳCVS
16 Name:           cvs
17 Version:        1.11.19
18 Release:        2
19 License:        GPL
20 Group:          Development/Version Control
21 # new feature release: https://www.cvshome.org/files/documents/19/610/cvs-1.12.11.tar.bz2
22 Source0:        https://www.cvshome.org/files/documents/19/742/%{name}-%{version}.tar.bz2
23 # Source0-md5:  ac3f9459d0bb5ed9acd6091902267594
24 Source1:        %{name}.inetd
25 # based on:     http://www.t17.ds.pwr.wroc.pl/~misiek/ipv6/cvs-1.11.2-20020513-ipv6.patch.gz
26 Patch0:         %{name}-ipv6.patch
27 Patch1:         %{name}-zlib.patch
28 Patch2:         %{name}-fixed_buffer.patch
29 Patch3:         %{name}-cvspass.patch
30 Patch4:         %{name}-home_etc.patch
31 Patch5:         %{name}-newnline.patch
32 Patch6:         %{name}-no_libnsl.patch
33 Patch7:         %{name}-info.patch
34 Patch8:         %{name}-ssh.patch
35 Patch9:         %{name}-posix.patch
36 # Access Control List Extension: http://cvsacl.sourceforge.net/
37 Patch10:        %{name}-acl.patch
38 URL:            http://www.cvshome.org/
39 BuildRequires:  autoconf >= 2.58
40 BuildRequires:  automake >= 1:1.7.9
41 %{?with_kerberos5:BuildRequires:        heimdal-devel}
42 BuildRequires:  rpmbuild(macros) >= 1.159
43 BuildRequires:  texinfo
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 rc-inetd necesarios para ejecutar CVS
196 en el modo 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 %{?with_acl:%patch10 -p1}
215
216 %build
217 %{__aclocal}
218 %{__autoheader}
219 %{__autoconf}
220 %{__automake}
221 %configure \
222         --enable-server \
223         --enable-client \
224         --enable-rootcommit \
225         --with%{!?with_kerberos5:out}-gssapi \
226         --with-tmpdir=/tmp \
227         --with-editor=/bin/vi
228
229 %{__make}
230
231 %install
232 rm -rf $RPM_BUILD_ROOT
233 install -d $RPM_BUILD_ROOT{/etc/sysconfig/rc-inetd,%{_cvs_root}}
234
235 %{__make} install \
236         DESTDIR=$RPM_BUILD_ROOT
237
238 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs
239
240 rm -f contrib/{.cvsignore,Makefile*,*.pl,*.sh,*.csh}
241 mv -f $RPM_BUILD_ROOT%{_datadir}/cvs/contrib/rcs2log $RPM_BUILD_ROOT%{_bindir}
242
243 %clean
244 rm -rf $RPM_BUILD_ROOT
245
246 %post
247 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
248
249 %postun
250 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
251
252 %pre pserver
253 if [ -n "`/usr/bin/getgid cvs`" ]; then
254         if [ "`/usr/bin/getgid cvs`" != "52" ]; then
255                 echo "Error: group cvs doesn't have gid=52. Correct this before installing cvs." 1>&2
256                 exit 1
257         fi
258 else
259         /usr/sbin/groupadd -f -g 52 cvs 1>&2
260 fi
261 if [ -n "`/bin/id -u cvs 2>/dev/null`" ]; then
262         if [ "`/bin/id -u cvs`" != "52" ]; then
263                 echo "Error: user cvs doesn't have uid=52. Correct this before installing cvs." 1>&2
264                 exit 1
265         fi
266 else
267         /usr/sbin/useradd -g cvs -d %{_cvs_root} -u 52 -s /bin/false cvs 1>&2
268 fi
269
270 %post pserver
271 if [ "$1" = "1" ]; then
272         # Initialise repository
273         %{_bindir}/cvs -d :local:%{_cvs_root} init
274         chown -R cvs:cvs %{_cvs_root}/CVSROOT
275 fi
276 if [ -f /var/lock/subsys/rc-inetd ]; then
277         /etc/rc.d/init.d/rc-inetd reload
278 fi
279
280 %postun pserver
281 if [ "$1" = "0" ]; then
282         %userremove cvs
283         %groupremove cvs
284         if [ -f /var/lock/subsys/rc-inetd ]; then
285                 /etc/rc.d/init.d/rc-inetd reload
286         fi
287 fi
288
289 %triggerpostun -- cvs-pserver < 1.1.13-1
290 echo "Warning: default cvsroot moved to %{_cvs_root}."
291 echo "Check your configration."
292
293 %files
294 %defattr(644,root,root,755)
295 %doc BUGS FAQ MINOR-BUGS NEWS PROJECTS TODO README %{?with_acl:README.cvsacl}
296 %doc ChangeLog doc/*.ps contrib
297 %attr(755,root,root) %{_bindir}/*
298 %{_mandir}/man[158]/*
299 %{_infodir}/cvs*
300
301 %files pserver
302 %defattr(644,root,root,755)
303 %attr(770,root,cvs) %dir %{_cvs_root}
304 %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/rc-inetd/cvs
This page took 0.058496 seconds and 3 git commands to generate.