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