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