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