X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=cvs.spec;h=f821e04268d077a2bda299686e763222b09a7a57;hb=b1625782b46f84e315b4ba5f0ea9380b50c153c2;hp=c5cf0ad621245e102b89cc61a70e1e6c9b7a7955;hpb=da8ff8c01b7c6208c28ade1e4d889662700d22ae;p=packages%2Fcvs.git diff --git a/cvs.spec b/cvs.spec index c5cf0ad..f821e04 100644 --- a/cvs.spec +++ b/cvs.spec @@ -1,158 +1,269 @@ Summary: Concurrent Versioning System Summary(de): Concurrent-Versioning-System +Summary(es): Control de versiones en modo concurrente Summary(fr): Un système pour maintenir à jour des fichiers Summary(pl): Concurrent Versioning System +Summary(pt_BR): Controle de versões em modo concorrente +Summary(ru): óÉÓÔÅÍÁ ÕÐÒÁ×ÌÅÎÉÑ ×ÅÒÓÉÑÍÉ Summary(tr): Sürüm denetim sistemi +Summary(uk): óÉÓÔÅÍÁ ËÅÒÕ×ÁÎÎÑ ×ÅÒÓ¦ÑÍÉ +Summary(zh_CN): ²¢·¢µÄ°æ±¾¹ÜÀíϵͳCVS Name: cvs -Version: 1.10.7 -Release: 2 -Copyright: GPL +Version: 1.11.9 +Release: 1 +License: GPL Group: Development/Version Control -Group(pl): Programowanie/Zarzadzanie wersjami -Source0: http://download.cyclic.com/pub/%{name}-%{version}/%{name}-%{version}.tar.gz -Patch0: cvs-tmprace.patch -Patch1: cvs-info.patch -Patch2: cvs-1.10.6-v6-19990629-PLD.patch +# new feature release: http://ftp.cvshome.org/release/feature/cvs-1.12.1/cvs-1.12.1.tar.bz2 +Source0: http://ftp.cvshome.org/release/stable/%{name}-%{version}/%{name}-%{version}.tar.bz2 +# Source0-md5: 0e72f5de87f66c5fcd27d58b53fcbf43 +Source1: %{name}.inetd +# based on: http://www.t17.ds.pwr.wroc.pl/~misiek/ipv6/cvs-1.11.2-20020513-ipv6.patch.gz +Patch0: %{name}-ipv6.patch +Patch1: %{name}-zlib.patch +Patch2: %{name}-fixed_buffer.patch +Patch3: %{name}-cvspass.patch +Patch4: %{name}-home_etc.patch +Patch5: %{name}-newnline.patch +Patch6: %{name}-no_libnsl.patch +Patch7: %{name}-info.patch URL: http://www.cyclic.com/ -Prereq: /usr/sbin/fix-info-dir -Buildroot: /tmp/%{name}-%{version}-root +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: zlib-devel +BuildRequires: heimdal-devel +Obsoletes: cvs-nserver-client +BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%description -CVS means Concurrent Version System; it is a version control system which -can record the history of your files (usually, but not always, source code). -CVS only stores the differences between versions, instead of every version -of every file you've ever created. CVS also keeps a log of who, when and why -changes occurred, among other aspects. - -CVS is very helpful for managing releases and controlling the concurrent -editing of source files among multiple authors. Instead of providing version -control for a collection of files in a single directory, CVS provides -version control for a hierarchical collection of directories consisting of -revision controlled files. - -These directories and files can then be combined together to form a software -release. +%define _cvs_root /home/services/cvsroot -Install the cvs package if you need to use a version control system. +%description +CVS means Concurrent Version System; it is a version control system +which can record the history of your files (usually, but not always, +source code). CVS only stores the differences between versions, +instead of every version of every file you've ever created. CVS also +keeps a log of who, when and why changes occurred, among other +aspects. -%description -l fr -"CVS" signifie "Concurrent Version System". C'est un système de comparaison -de versions de fichiers, qui peut garder une trace des changements apportés -à des fichiers (le plus souvent, les fichiers des sources d'un programme). -CVS conserve seulement les différences, et non l'intégralité d'un fichier -récent et d'un fichier plus ancien. A chaque modification d'un fichier, CVS -garde (entre autres) le nom de la personne ayant fait la modification, la -raison justifiant cette modification, et la date à laquelle celle-ci a eu -lieu. - -CVS est très utile pour gérer la mise en commun des modifications apportées -par plusieurs personnes travaillant en parallèle sur les mêmes fichiers. Au -lieu de garder plusieurs versions des fichiers dans un seul répertoire, CVS -crée une série de répertoires, chacun contenant une nouvelle version des -fichiers. Ces répertoires et ces fichiers peuvent ensuite être regroupés -pour former la version la plus à jour du logiciel. - -Installez ce package si vous avez besoin d'utiliser un système de contrôle -de version. - -Vous pouvez également utiliser rcs en lieu et place de cvs. +CVS is very helpful for managing releases and controlling the +concurrent editing of source files among multiple authors. Instead of +providing version control for a collection of files in a single +directory, CVS provides version control for a hierarchical collection +of directories consisting of revision controlled files. These +directories and files can then be combined together to form a software +release. %description -l de -CVS ist ein Frontend für das RCS(1)-Revisionskontrollsystem, das den Begriff -der Revisionskontrolle von einer Sammlung von Dateien in einem einzelnen -Verzeichnis auf eine ganze Hierarchie ausweitet, bestehend aus -revisionskontrollierten Dateien. Diese Verzeichnisse und Dateien lassen sich -zu einer Software-Release kombinieren. CVS bietet die Funktionen, die zur -Verwaltung von Software-Releases und zur Überwachung der gleichzeitigen -Bearbeitung von Quelldateien durch mehrere Software- Entwickler notwendig -sind. +CVS ist ein Frontend für das RCS(1)-Revisionskontrollsystem, das den +Begriff der Revisionskontrolle von einer Sammlung von Dateien in einem +einzelnen Verzeichnis auf eine ganze Hierarchie ausweitet, bestehend +aus revisionskontrollierten Dateien. Diese Verzeichnisse und Dateien +lassen sich zu einer Software-Release kombinieren. CVS bietet die +Funktionen, die zur Verwaltung von Software-Releases und zur +Überwachung der gleichzeitigen Bearbeitung von Quelldateien durch +mehrere Software- Entwickler notwendig sind. + +%description -l es +CVS es un front end para el rcs(1) - revisión control system - que +extiende la noción de control de revisión de una colectánea de archivo +en un único directorio para una colección jerárquica de directorios +que contiene archivos controlados por revisión. Estos directorios y +archivos pueden ser combinados juntos para crear una release de +software. CVS nos ofrece las funciones necesarias para administrar +esta release de software y para controlar la edición concurrente de +archivos fuente por múltiples programadores. %description -l fr -"CVS" signifie "Concurrent Version System". C'est un système de comparaison -de versions de fichiers, qui peut garder une trace des changements apportés -à des fichiers (le plus souvent, les fichiers des sources d'un programme). -CVS conserve seulement les différences, et non l'intégralité d'un fichier -récent et d'un fichier plus ancien. A chaque modification d'un fichier, CVS -garde (entre autres) le nom de la personne ayant fait la modification, la -raison justifiant cette modification, et la date à laquelle celle-ci a eu -lieu. - -CVS est très utile pour gérer la mise en commun des modifications apportées -par plusieurs personnes travaillant en parallèle sur les mêmes fichiers. Au -lieu de garder plusieurs versions des fichiers dans un seul répertoire, CVS -crée une série de répertoires, chacun contenant une nouvelle version des -fichiers. Ces répertoires et ces fichiers peuvent ensuite être regroupés -pour former la version la plus à jour du logiciel. - -Installez ce package si vous avez besoin d'utiliser un système de contrôle -de version. - -Vous pouvez également utiliser rcs en lieu et place de cvs. +"CVS" signifie "Concurrent Version System". C'est un système de +comparaison de versions de fichiers, qui peut garder une trace des +changements apportés à des fichiers (le plus souvent, les fichiers des +sources d'un programme). CVS conserve seulement les différences, et +non l'intégralité d'un fichier récent et d'un fichier plus ancien. A +chaque modification d'un fichier, CVS garde (entre autres) le nom de +la personne ayant fait la modification, la raison justifiant cette +modification, et la date à laquelle celle-ci a eu lieu. + +CVS est très utile pour gérer la mise en commun des modifications +apportées par plusieurs personnes travaillant en parallèle sur les +mêmes fichiers. Au lieu de garder plusieurs versions des fichiers dans +un seul répertoire, CVS crée une série de répertoires, chacun +contenant une nouvelle version des fichiers. Ces répertoires et ces +fichiers peuvent ensuite être regroupés pour former la version la plus +à jour du logiciel. Installez ce package si vous avez besoin +d'utiliser un système de contrôle de version. %description -l pl CVS jest nak³adk± na rcs (Revision Control System, czyli w wolnym -t³umaczeniu system kontroli wersji zasobów), który rozszerza mo¿liwo¶ci -rcs'a z narzêdzia do kontroli zbioru plików w pojedynczym katalogu o -mo¿liwo¶æ kontroli zbioru hierarhicznie u³o¿onych katalogów z plikami. Z -pomoc± CVS w ³atwy sposób mo¿na zarz±dzaæ kodem ¼ród³owym opracowywanym przez -nawet bardzo du¿e zespó³y programistów umo¿liwiaj±c ¶ledzenie i kontrolê -wszystkich zmian w trakcie pracy nad projektami i wypuszczaniem pe³nych -wersji oprogramowania (release). +t³umaczeniu system kontroli wersji zasobów), który rozszerza +mo¿liwo¶ci rcs'a z narzêdzia do kontroli zbioru plików w pojedynczym +katalogu o mo¿liwo¶æ kontroli zbioru hierarchicznie u³o¿onych +katalogów z plikami. Z pomoc± CVS w ³atwy sposób mo¿na zarz±dzaæ kodem +¼ród³owym opracowywanym przez nawet bardzo du¿e zespo³y programistów +umo¿liwiaj±c ¶ledzenie i kontrolê wszystkich zmian w trakcie pracy nad +projektami i wypuszczaniem pe³nych wersji oprogramowania (release). + +%description -l pt_BR +CVS é um front end para o rcs(1) - revision control system - que +estende a noção de controle de revisão de uma coletânea de arquivo em +um único diretório para uma coleção hierárquica de diretórios que +contém arquivos controlados por revisão. Esses diretórios e arquivos +podem ser combinados juntos para criar uma release de software. CVS +oferece as funções necessárias para administrar essas release de +software e para controlar a edição concorrente de arquivos fonte por +múltiplos programadores. + +%description -l ru +CVS (Concurrent Version System) - ÜÔÏ ÓÉÓÔÅÍÁ ÕÐÒÁ×ÌÅÎÉÑ ×ÅÒÓÉÑÍÉ, +ËÏÔÏÒÁÑ ÕÍÅÅÔ ÚÁÐÉÓÁÔØ ÉÓÔÏÒÉÀ ×ÁÛÉÈ ÆÁÊÌÏ× (ÏÂÙÞÎÏ, ÎÏ ÎÅ ×ÓÅÇÄÁ, ÜÔÏ +ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ). CVS ÓÏÈÒÁÎÑÅÔ ÔÏÌØËÏ ÒÁÚÌÉÞÉÑ ÍÅÖÄÕ ×ÅÒÓÉÑÍÉ ×ÍÅÓÔÏ +ËÁÖÄÏÊ ×ÅÒÓÉÉ ËÁÖÄÏÇÏ ÆÁÊÌÁ, ËÏÔÏÒÁÑ ÂÙÌÁ ËÏÇÄÁ-ÌÉÂÏ ÓÏÚÄÁÎÁ. ôÁËÖÅ +CVS ÈÒÁÎÉÔ ÐÒÏÔÏËÏÌ ÔÏÇÏ, ËÔÏ, ËÏÇÄÁ É ÚÁÞÅÍ ÞÔÏ-ÌÉÂÏ ÉÚÍÅÎÉÌ. + +CVS ÏÞÅÎØ ÐÏÌÅÚÎÁ ÄÌÑ ÏÒÇÁÎÉÚÁÃÉÉ ÒÅÌÉÚÏ× É ÕÐÒÁ×ÌÅÎÉÑ ÐÁÒÁÌÌÅÌØÎÏÊ +ÐÒÁ×ËÏÊ ÉÓÈÏÄÎÙÈ ÆÁÊÌÏ× ÎÅÓËÏÌØËÉÍÉ Á×ÔÏÒÁÍÉ. ÷ÍÅÓÔÏ ÐÒÅÄÏÓÔÁ×ÌÅÎÉÑ +ÕÐÒÁ×ÌÅÎÉÑ ×ÅÒÓÉÑÍÉ ÎÁÂÏÒÁ ÆÁÊÌÏ× × ÏÄÎÏÍ ËÁÔÁÌÏÇÅ CVS ÐÒÅÄÏÓÔÁ×ÌÑÅÔ +ÕÐÒÁ×ÌÅÎÉÅ ×ÅÒÓÉÑÍÉ ÉÅÒÁÒÈÉÞÅÓËÏÇÏ ÎÁÂÏÒÁ ËÁÔÁÌÏÇÏ×, ÓÏÓÔÏÑÝÉÈ ÉÚ +ÆÁÊÌÏ×, ×ÅÒÓÉÑÍÉ ËÏÔÏÒÙÈ ÎÁÄÏ ÕÐÒÁ×ÌÌÑÔØ. üÔÉ ÆÁÊÌÙ É ËÁÔÁÌÏÇÉ ÍÏÇÕÔ +ÂÙÔØ ÓÏÂÒÁÎÙ ×ÍÅÓÔÅ ÄÌÑ ÆÏÒÍÉÒÏ×ÁÎÉÑ ÒÅÌÉÚÁ ðï. %description -l tr -CVS (Concurrent Versioning System), tek bir dizindeki dosya topluluðunun -sürüm denetimini, denetimi yapýlmýþ dizinlerin hiyerarþik topluluðuna -geniþleten rcs(1) sürüm denetim sisteminin ön yüzüdür. Bu dizin ve dosyalar, -bir yazýlým yayýný oluþturma amacýyla biraraya getirilebilir. CVS, bu -yazýlým yayýnlarýnýn yönetilmesini ve kaynak dosyalarý bakýmýnýn birden çok -yazýlým geliþtiricisi tarafýndan eþzamanlý olarak yapýlmasýný kontrol etmek -için gereken iþlevleri saðlar. +CVS (Concurrent Versioning System), tek bir dizindeki dosya +topluluðunun sürüm denetimini, denetimi yapýlmýþ dizinlerin hiyerarþik +topluluðuna geniþleten rcs(1) sürüm denetim sisteminin ön yüzüdür. Bu +dizin ve dosyalar, bir yazýlým yayýný oluþturma amacýyla biraraya +getirilebilir. CVS, bu yazýlým yayýnlarýnýn yönetilmesini ve kaynak +dosyalarý bakýmýnýn birden çok yazýlým geliþtiricisi tarafýndan +eþzamanlý olarak yapýlmasýný kontrol etmek için gereken iþlevleri +saðlar. + +%description -l uk +CVS (Concurrent Version System) - ÃÅ ÓÉÓÔÅÍÁ ËÅÒÕ×ÁÎÎÑ ×ÅÒÓ¦ÑÍÉ, ÑËÁ +×ͦ¤ ÚÁÐÉÓÁÔÉ ¦ÓÔÏÒ¦À ×ÁÛÉÈ ÆÁÊÌ¦× (ÚÁÚ×ÉÞÁÊ, ÁÌÅ ÎÅ ÚÁ×ÖÄÉ, ÃÅ +×ÉȦÄΦ ÔÅËÓÔÉ). CVS ÚÂÅÒ¦ÇÁ¤ Ô¦ÌØËÉ Ò¦ÚÎÉÃÀ Í¦Ö ×ÅÒÓ¦ÑÍÉ ÚÁͦÓÔØ +ËÏÖÎϧ ×ÅÒÓ¦§ ËÏÖÎÏÇÏ ÆÁÊÌÕ, ÑËÁ ÂÕÌÁ ËÏÌÉÓØ ÓÔ×ÏÒÅÎÁ. ôÁËÏÖ CVS +ÚÂÅÒ¦ÇÁ¤ ÐÒÏÔÏËÏÌ ÔÏÇÏ, ÈÔÏ, ËÏÌÉ ¦ ÎÁצÝÏ ÝÏÓØ ÚͦÎÉ×. + +CVS ÄÕÖÅ ËÏÒÉÓÎÁ ÄÌÑ ÏÒÇÁΦÚÁæÀ ÒÅÌ¦Ú¦× ÔÁ ËÅÒÕ×ÁÎÎÑ ÐÁÒÁÌÅÌØÎÏÀ +ÐÒÁ×ËÏÀ ×ÉÚ¦ÄÎÉÈ ÆÁÊÌ¦× Ë¦ÌØËÏÍÁ Á×ÔÏÒÁÍÉ. úÁͦÓÔØ ÎÁÄÁÎÎÑ ÍÏÖÌÉ×ÏÓÔ¦ +ËÅÒÕ×ÁÎÎÑ ×ÅÒÓ¦ÑÍÉ ÎÁÂÏÒÕ ÆÁÊÌ¦× × ÏÄÎÏÍÕ ËÁÔÁÌÏÚ¦, CVS ÎÁÄÁ¤ +ÍÏÖÌÉצÓÔØ ËÅÒÕ×ÁÎÎÑ ¦¤ÒÁÒȦÞÎÉÍ ÎÁÂÏÒÏÍ ËÁÔÁÌÏǦ×, ÝÏ ÓËÌÁÄÁÀÔØÓÑ Ú +ÆÁÊ̦×, ×ÅÒÓ¦ÑÍÉ ËÏÔÒÉÈ ÔÒÅÂÁ ËÅÒÕ×ÁÔÉ. 㦠ÆÁÊÌÉ ÔÁ ËÁÔÁÌÏÇÉ ÍÏÖÕÔØ +ÂÕÔÉ Ú¦ÂÒÁΦ ÒÁÚÏÍ ÄÌÑ ÆÏÒÍÕ×ÁÎÎÑ ÒÅ̦ÚÕ ðú. + +%package pserver +Summary: rc-inetd config files to run CVS pserver +Summary(pl): Pliki konfiguracyjne rc-ineta do postawienia pservera CVS +Group: Development/Version Control +PreReq: %{name} = %{version} +PreReq: rc-inetd +Requires(pre): /usr/bin/getgid +Requires(pre): /bin/id +Requires(pre): /usr/sbin/groupadd +Requires(pre): /usr/sbin/useradd +Requires(post): fileutils +Requires(postun): /usr/sbin/userdel +Requires(postun): /usr/sbin/groupdel +Obsoletes: cvs-nserver-common +Obsoletes: cvs-nserver-nserver +Obsoletes: cvs-nserver-pserver + +%description pserver +Config files for rc-inetd that are necessary to run CVS in pserver +mode. + +%description pserver -l pl +Pliki konfiguracyjne rc-inetd niezbêdne do uruchomienia CVSa w trybie +pserver. %prep %setup -q %patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 +%patch6 -p1 +%patch7 -p1 %build -autoconf -LDFLAGS="-s"; export LDFLAGS +%{__aclocal} +%{__autoheader} +%{__autoconf} +%{__automake} %configure \ - --enable-ipv6 \ --enable-server \ - --enable-client -make + --enable-client \ + --with-gssapi \ + --with-tmpdir=/tmp +%{__make} %install rm -rf $RPM_BUILD_ROOT -make install \ - prefix=$RPM_BUILD_ROOT%{_prefix} \ - bindir=$RPM_BUILD_ROOT%{_bindir} \ - mandir=$RPM_BUILD_ROOT%{_mandir} -make install-info \ - prefix=$RPM_BUILD_ROOT%{_prefix} \ - infodir=$RPM_BUILD_ROOT%{_infodir} +install -d $RPM_BUILD_ROOT{/etc/sysconfig/rc-inetd,%{_cvs_root}} -strip $RPM_BUILD_ROOT%{_bindir}/cvs +%{__make} install \ + DESTDIR=$RPM_BUILD_ROOT -gzip -9nf $RPM_BUILD_ROOT{%{_infodir}/cvs*,%{_mandir}/man{1,5,8}/*} \ - doc/*.ps BUGS FAQ MINOR-BUGS NEWS PROJECTS TODO README ChangeLog +install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs + +rm -f contrib/{.cvsignore,Makefile*,*.pl,*.sh,*.csh} +mv -f $RPM_BUILD_ROOT%{_datadir}/cvs/contrib/rcs2log $RPM_BUILD_ROOT%{_bindir} + +%clean +rm -rf $RPM_BUILD_ROOT %post -/usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1 +[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1 %postun -/usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1 +[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1 -%clean -rm -rf $RPM_BUILD_ROOT +%pre pserver +if [ -n "`/usr/bin/getgid cvs`" ]; then + if [ "`/usr/bin/getgid cvs`" != "52" ]; then + echo "Error: group cvs doesn't have gid=52. Correct this before installing cvs." 1>&2 + exit 1 + fi +else + /usr/sbin/groupadd -f -g 52 cvs 1>&2 +fi +if [ -n "`/bin/id -u cvs 2>/dev/null`" ]; then + if [ "`/bin/id -u cvs`" != "52" ]; then + echo "Error: user cvs doesn't have uid=52. Correct this before installing cvs." 1>&2 + exit 1 + fi +else + /usr/sbin/useradd -g cvs -d %{_cvs_root} -u 52 -s /bin/false cvs 1>&2 +fi + +%post pserver +if [ "$1" = "1" ]; then + # Initialise repository + %{_bindir}/cvs -d :local:%{_cvs_root} init + chown -R cvs:cvs %{_cvs_root}/CVSROOT +fi +if [ -f /var/lock/subsys/rc-inetd ]; then + /etc/rc.d/init.d/rc-inetd reload +fi + +%postun pserver +if [ "$1" = "0" ]; then + # Remove user and group + /usr/sbin/userdel cvs 2>/dev/null + /usr/sbin/groupdel cvs 2>/dev/null + if [ -f /var/lock/subsys/rc-inetd ]; then + /etc/rc.d/init.d/rc-inetd reload + fi +fi %files %defattr(644,root,root,755) -%doc {BUGS,FAQ,MINOR-BUGS,NEWS,PROJECTS,TODO,README,ChangeLog}.gz -%doc doc/*.ps.gz contrib/* - +%doc BUGS FAQ MINOR-BUGS NEWS PROJECTS TODO README ChangeLog doc/*.ps contrib %attr(755,root,root) %{_bindir}/* - %{_mandir}/man[158]/* %{_infodir}/cvs* + +%files pserver +%defattr(644,root,root,755) +%attr(770,root,cvs) %dir %{_cvs_root} +%config(noreplace) %verify(not size mtime md5) /etc/sysconfig/rc-inetd/cvs