X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=cvs-nserver.spec;h=a055bcfb4176bd8490f32ae83a658975a94dac42;hb=bfb8fe664cc2941e479bc254452a6481fa2894e9;hp=3bdbacbed4f3ce95329b79fd747efe05ad14415b;hpb=b3f10eead7c5c29b2c025837ac41a93fbb282fb9;p=packages%2Fcvs-nserver.git diff --git a/cvs-nserver.spec b/cvs-nserver.spec index 3bdbacb..a055bcf 100644 --- a/cvs-nserver.spec +++ b/cvs-nserver.spec @@ -1,15 +1,15 @@ -# # TODO: -# - trigger for upgrade from old cvs - after that package stays without any +# - trigger for upgrade from old cvs - after that package stays without any # users and nserver-common is not installed... +# - cvschkpw causes sig11 when run without CVSSERVER variable set. Summary: Concurrent Versions System - nserver -Summary(de): Concurrent-Versioning-System - nserver -Summary(fr): Un système pour maintenir à jour des fichiers - nserver -Summary(pl): Concurrent Versions System - nserver -Summary(tr): Sürüm denetim sistemi - nserver +Summary(de.UTF-8): Concurrent-Versioning-System - nserver +Summary(fr.UTF-8): Un système pour maintenir à jour des fichiers - nserver +Summary(pl.UTF-8): Concurrent Versions System - nserver +Summary(tr.UTF-8): Sürüm denetim sistemi - nserver Name: cvs-nserver Version: 1.11.1.52 -Release: 16 +Release: 28 License: GPL Group: Development/Version Control Source0: http://dl.sourceforge.net/cvs-nserver/%{name}-%{version}.tar.gz @@ -35,11 +35,15 @@ Patch15: %{name}-CAN-2004-0396.patch Patch16: %{name}-CAN-2004-0414.patch Patch17: %{name}-CAN-2004-0416-0417-0418.patch Patch18: %{name}-dblshutdown.patch +Patch19: %{name}-krb5.patch +Patch20: %{name}-cvspasswd-mode.patch +Patch21: %{name}-getline.patch URL: http://cvs-nserver.sourceforge.net/ BuildRequires: autoconf BuildRequires: automake +BuildRequires: heimdal-devel BuildRequires: openssl-devel >= 0.9.7d -BuildRequires: rpmbuild(macros) >= 1.159 +BuildRequires: rpmbuild(macros) >= 1.268 BuildRequires: texinfo BuildRequires: zlib-devel BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) @@ -57,80 +61,81 @@ and to control the concurrent editing of source files among multiple authors. CVS allows triggers to enable/log/control various operations and works well over a wide area network. -%description -l de -CVS ist ein Frontend für das RCS(1)-Revisionskontrollsystem, das den +%description -l de.UTF-8 +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 +Überwachung der gleichzeitigen Bearbeitung von Quelldateien durch mehrere Software- Entwickler notwendig sind. -%description -l fr -"CVS" signifie "Concurrent Version System". C'est un système de +%description -l fr.UTF-8 +"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 +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. +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 +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 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 tr +système de contrôle de version. + +%description -l pl.UTF-8 +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 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 tr.UTF-8 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. +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. %package client Summary: Concurrent Versions System - client -Summary(pl): Concurrent Versions System - klient +Summary(pl.UTF-8): Concurrent Versions System - klient Group: Development/Version Control -Provides: cvs = %{version} -Obsoletes: cvs +Provides: cvs-client = %{version} +Obsoletes: cvs-client Obsoletes: cvs-npclient +Conflicts: cvs %description client CVS client. -%description client -l pl +%description client -l pl.UTF-8 Klient CVS. %package common Summary: Concurrent Versions System - common files -Summary(pl): Concurrent Versions System - wspólne pliki +Summary(pl.UTF-8): Concurrent Versions System - wspólne pliki Group: Development/Version Control +Requires(postun): /usr/sbin/groupdel +Requires(postun): /usr/sbin/userdel Requires(pre): /bin/id Requires(pre): /usr/bin/getgid Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd Requires(pre): cvs-nserver-client Requires(pre): fileutils -Requires(postun): /usr/sbin/groupdel -Requires(postun): /usr/sbin/userdel Requires: %{name}-client = %{version}-%{release} Provides: group(cvs) Provides: group(cvsadmin) @@ -141,36 +146,36 @@ Obsoletes: cvs-nserver %description common CVS - common server files. -%description common -l pl -Wspólne pliki serwerów CVS. +%description common -l pl.UTF-8 +Wspólne pliki serwerów CVS. %package pserver Summary: Concurrent Versions System - pserver -Summary(pl): Concurrent Versions System - pserver +Summary(pl.UTF-8): Concurrent Versions System - pserver Group: Development/Version Control -PreReq: rc-inetd Requires: %{name}-common = %{version}-%{release} +Requires: rc-inetd Obsoletes: cvs-npserver Obsoletes: cvs-pserver %description pserver CVS server - pserver files. -%description pserver -l pl +%description pserver -l pl.UTF-8 Serwer CVS - pliki pservera. %package nserver Summary: Concurrent Versions System - nserver -Summary(pl): Concurrent Versions System - nserver +Summary(pl.UTF-8): Concurrent Versions System - nserver Group: Development/Version Control -PreReq: rc-inetd Requires: %{name}-common = %{version}-%{release} +Requires: rc-inetd Obsoletes: cvs-nserver %description nserver CVS server - nserver files. -%description nserver -l pl +%description nserver -l pl.UTF-8 Serwer CVS - pliki nservera. %prep @@ -194,6 +199,9 @@ Serwer CVS - pliki nservera. %patch16 -p1 %patch17 -p1 %patch18 -p1 +%patch19 -p1 +%patch20 -p1 +%patch21 -p1 %build %{__aclocal} @@ -205,14 +213,15 @@ Serwer CVS - pliki nservera. --enable-server \ --enable-setuid \ --with-openssl \ - --without-gssapi -%{__make} + --with-gssapi + +%{__make} -j1 %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{/etc/sysconfig/rc-inetd,%{_cvsroot},/var/lock/cvs} -%{__make} install \ +%{__make} -j1 install \ DESTDIR=$RPM_BUILD_ROOT install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs-nserver @@ -225,7 +234,7 @@ if [ -f /etc/sysconfig/cvs ]; then . /etc/sysconfig/cvs fi -CVSPASSWD=%{_bindir}/cvspasswd \ +CVSPASSWD=%{_bindir}/cvspasswd CVSSERVER=pserver \ exec %{_bindir}/cvs-pserver \$REPOSITORY -- \ %{_bindir}/cvschkpw %{_bindir}/cvs pserver EOF @@ -237,7 +246,7 @@ if [ -f /etc/sysconfig/cvs ]; then . /etc/sysconfig/cvs fi -CVSPASSWD=%{_bindir}/cvspasswd \ +CVSPASSWD=%{_bindir}/cvspasswd CVSSERVER=nserver \ exec %{_bindir}/cvs-nserver \$REPOSITORY -- \ %{_bindir}/cvschkpw %{_bindir}/cvs nserver EOF @@ -257,49 +266,18 @@ mv -f $RPM_BUILD_ROOT%{_datadir}/cvs-nserver/contrib/rcs2log \ %clean rm -rf $RPM_BUILD_ROOT -%post client -[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1 +%post client -p /sbin/postshell +-/usr/sbin/fix-info-dir -c %{_infodir} -%postun client -[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1 +%postun client -p /sbin/postshell +-/usr/sbin/fix-info-dir -c %{_infodir} %pre common -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-nserver." 1>&2 - exit 1 - fi -else - echo "Adding group cvs GID=52." - /usr/sbin/groupadd -g 52 -r cvs -fi -if [ -n "`/usr/bin/getgid cvsadmin`" ]; then - if [ "`/usr/bin/getgid cvsadmin`" != "53" ]; then - echo "Error: group cvsadmin doesn't have gid=53. Correct this before installing cvs-nserver." 1>&2 - exit 1 - fi -else - echo "Adding group cvsadmin GID=53." - /usr/sbin/groupadd -g 53 -r cvsadmin -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-nserver." 1>&2 - exit 1 - fi -else - echo "Adding user cvs UID=52." - /usr/sbin/useradd -u 52 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvs cvs 1>&2 -fi -if [ -n "`id -u cvsadmin 2>/dev/null`" ]; then - if [ "`id -u cvsadmin`" != "53" ]; then - echo "Error: user cvsadmin doesn't have uid=53. Correct this before installing cvs-nserver." 1>&2 - exit 1 - fi -else - echo "Adding user cvsadmin UID=53." - /usr/sbin/useradd -u 53 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvsadmin -G cvs cvsadmin 1>&2 -fi +%groupadd -P %{name}-common -g 52 -r cvs +%groupadd -P %{name}-common -g 53 -r cvsadmin +%useradd -P %{name}-common -u 52 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvs cvs +%useradd -P %{name}-common -u 53 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvsadmin -G cvs cvsadmin + if [ "$1" = 1 ]; then echo "Initializing repository..." %{_bindir}/cvs -d :local:%{_cvsroot} init @@ -315,24 +293,16 @@ if [ "$1" = "0" ]; then fi %post pserver -if [ -f /var/lock/subsys/rc-inetd ]; then - /etc/rc.d/init.d/rc-inetd reload -fi +%service -q rc-inetd reload %postun pserver -if [ -f /var/lock/subsys/rc-inetd ]; then - /etc/rc.d/init.d/rc-inetd reload -fi +%service -q rc-inetd reload %post nserver -if [ -f /var/lock/subsys/rc-inetd ]; then - /etc/rc.d/init.d/rc-inetd reload -fi +%service -q rc-inetd reload %postun nserver -if [ -f /var/lock/subsys/rc-inetd ]; then - /etc/rc.d/init.d/rc-inetd reload -fi +%service -q rc-inetd reload %files client %defattr(644,root,root,755) @@ -346,7 +316,7 @@ fi %files common %defattr(644,root,root,755) -%attr(640,root,cvs) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/cvs +%attr(640,root,cvs) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/cvs %attr(4754,cvsadmin,cvs) %{_bindir}/cvspasswd %attr(755,root,root) %{_bindir}/cvschkpw %attr(755,root,root) %{_bindir}/rcs2log @@ -359,13 +329,13 @@ fi %files pserver %defattr(644,root,root,755) -%config(noreplace) %verify(not size mtime md5) /etc/sysconfig/rc-inetd/cvs-pserver +%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/cvs-pserver %attr(755,root,root) %{_bindir}/cvs-pserver* %{_mandir}/man8/cvs-pserver.8* %files nserver %defattr(644,root,root,755) %doc NEWS.nserver FAQ.nserver -%config(noreplace) %verify(not size mtime md5) /etc/sysconfig/rc-inetd/cvs-nserver +%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/cvs-nserver %attr(755,root,root) %{_bindir}/cvs-nserver* %{_mandir}/man8/cvs-nserver.8*