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