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