SPECS: cvsweb.spec - merged 3.0.5 from DEVEL

glen glen at pld-linux.org
Sat Jun 18 17:18:00 CEST 2005


Author: glen                         Date: Sat Jun 18 15:18:00 2005 GMT
Module: SPECS                         Tag: HEAD
---- Log message:
- merged 3.0.5 from DEVEL

---- Files affected:
SPECS:
   cvsweb.spec (1.27 -> 1.28) 

---- Diffs:

================================================================
Index: SPECS/cvsweb.spec
diff -u SPECS/cvsweb.spec:1.27 SPECS/cvsweb.spec:1.28
--- SPECS/cvsweb.spec:1.27	Sat Apr  2 02:24:20 2005
+++ SPECS/cvsweb.spec	Sat Jun 18 17:17:55 2005
@@ -1,69 +1,153 @@
 # $Revision$, $Date$
+%include	/usr/lib/rpm/macros.perl
 Summary:	Visual (www) interface to explore a cvs repository
 Summary(pl):	Wizualny (WWW) interfejs do przeglądania repozytorium cvs
 Name:		cvsweb
-Version:	1.112
-Release:	7.3
+Version:	3.0.5
+Release:	0.15
 Epoch:		1
-License:	BSD-like
+License:	BSD
 Group:		Development/Tools
-URL:		http://stud.fh-heilbronn.de/~zeller/cgi/cvsweb.cgi/
-Source0:	http://stud.fh-heilbronn.de/~zeller/download/%{name}-%{version}.tar.gz
-# Source0-md5:	30ff2783ff8e01bf72193902decd0c73
+Source0:	http://people.FreeBSD.org/~scop/cvsweb/%{name}-%{version}.tar.gz
+# Source0-md5:	572dbb2d66ad6487c0a3536f93023086
+URL:		http://www.freebsd.org/projects/cvsweb.html
 Patch0:		%{name}-config.patch
-Patch1:		%{name}-fix_perl_options.patch
-Patch2:		%{name}-fixes.patch
-Requires:	perl(IPC::Open2)
-Requires:	perl(Time::Local)
+BuildRequires:	rpmbuild(macros) >= 1.223
+# for %{_libdir}/cgi-bin
+Requires:	FHS >= 2.3-8
 Requires:	rcs
+# for /etc/mime.types
+Requires:	mailcap
 Requires:	webserver
-BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+# because of wrong module load order
+Conflicts:	apache1 < 1.3.33-6.3
 BuildArch:	noarch
+BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%description
-cvsweb is a visual (www) interface to explore a cvs repository. This
-is an enhanced cvsweb developed by Henner Zeller. Enhancements include
-recognition and display of popular mime-types, visual, color-coded,
-side by side diffs of changes and the ability sort the file display
-and to hide old files from view. One living example of the enhanced
-cvsweb is the KDE cvsweb.
+%define		_sysconfdir	/etc/%{name}
+%define		_appdir		%{_datadir}/%{name}
+%define		_cgibindir	%{_libdir}/cgi-bin
 
-cvsweb requires the server to have cvs and a cvs repository worth
-exploring.
+%description
+CVSweb is a WWW interface for CVS repositories with which you can
+browse a file hierarchy on your browser to view each file's revision
+history in a very handy manner. CVSweb was originally written by Bill
+Fenner for the FreeBSD Project. FreeBSD-CVSweb, formerly known as
+knu-CVSweb, is an enhanced version of CVSweb based on Henner Zeller's
+CVSweb, which is an extended version of the original CVSweb. This
+version contains numerous cleanups, bug-fixes, security enhancements
+and feature improvements.
 
 %description -l pl
-cvsweb jest wizualnym interfejsem do eksploracji repozytorium cvs.
-Jest to ulepszona wersja programu cvsweb Hennera Zellera. Do ulepszeń
-zaliczyć można rozpoznawanie i wyświetlanie popularnych typów MIME;
-wizualnych, kolorowych, umieszczonych obok siebie różnic między
-plikami oraz zdolność sortowania widoku plików oraz ukrywania starych
-plików. Żywym przykładem ulepszonego cvsweba jest cvsweb projektu KDE.
-
-cvsweb wymaga, by na serwerze był zainstalowany CVS oraz repozytorium
-CVS warte eksploracji.
+CVSweb jest interfejsem WWW dla repozytoriów CVS dzięki któremu można
+przeglądać ich zawartość w przeglądarce WWW widząc pełną historię
+zmian i numerów rewizji dla każdego z plików. CVSWeb został stworzony
+przez Billa Fennera dla projektu FreeBSD. FreeBSD-CVSweb dawniej znany
+jako knu-CVSweb jest rozszerzoną wersją opartą na wersji Hennera
+Zellera, która z kolei była oparta na oryginalnej wersji. Kod obecnej
+wersji został uporządkowany i oczysczony, usuniętych zostało również
+wiele błędów. Wprowadzono także dużo poprawek bezpieczeństwa oraz
+rozbudowano funkcjonalność.
 
 %prep
-%setup -q -n %{name}
+%setup -q
 %patch0 -p1
-%patch1 -p1
-%patch2 -p1
+
+install cvsweb.conf* samples
+
+# remove backups
+find '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/{/home/services/httpd/cgi-bin,%{_sysconfdir}}
 
-install cvsweb.cgi $RPM_BUILD_ROOT/home/services/httpd/cgi-bin
-install cvsweb.conf $RPM_BUILD_ROOT%{_sysconfdir}
+install -d $RPM_BUILD_ROOT{%{_appdir}/{css,enscript,icons},%{_cgibindir},%{_sysconfdir}}
+
+install %{name}.cgi	$RPM_BUILD_ROOT%{_cgibindir}
+install css/*		$RPM_BUILD_ROOT%{_appdir}/css
+install enscript/*	$RPM_BUILD_ROOT%{_appdir}/enscript
+install icons/*		$RPM_BUILD_ROOT%{_appdir}/icons
+
+install %{name}.conf	$RPM_BUILD_ROOT%{_sysconfdir}
+echo '# vim:syn=perl' >> $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
+
+cat <<EOF > $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
+Alias /%{name}/ %{_appdir}/
+ScriptAlias /cgi-bin/%{name}.cgi %{_cgibindir}/%{name}.cgi
+
+<Location /cgi-bin/cvsweb.cgi>
+   # See also $charset in cvsweb.conf.
+   #AddDefaultCharset UTF-8
+
+   # mod_perl >= 1.99:
+   <IfModule mod_perl.c>
+	   SetHandler perl-script
+	   PerlResponseHandler ModPerl::Registry
+	   PerlOptions +ParseHeaders
+	   Options ExecCGI
+   </IfModule>
+</Location>
+
+# vim: filetype=apache ts=4 sw=4 et
+EOF
+
+%post
+if [ "$1" = 1 ]; then
+%banner %{name} -e <<'EOF'
+You might want to install optionally 'cvsgraph' program.
+EOF
+fi
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+# 09_ instead of 99_ is for ScriptAlias /cgi-bin/cvsweb.cgi ...
+%triggerin -- apache1 >= 1.3.33-2
+%apache_config_install -v 1 -c %{_sysconfdir}/apache.conf -n 09
+
+%triggerun -- apache1 >= 1.3.33-2
+%apache_config_uninstall -v 1 -n 09
+
+%triggerin -- apache >= 2.0.0
+%apache_config_install -v 2 -c %{_sysconfdir}/apache.conf -n 09
+
+%triggerun -- apache >= 2.0.0
+%apache_config_uninstall -v 2 -n 09
+
+%triggerpostun -- %{name} < 1:3.0.5-0.11
+# migrate from old config location (only apache2, as there was no apache1 support)
+if [ -f /etc/httpd/%{name}.conf.rpmsave ]; then
+	cp -f %{_sysconfdir}/apache.conf{,.rpmnew}
+	mv -f /etc/httpd/%{name}.conf.rpmsave %{_sysconfdir}/apache.conf
+	if [ -f /var/lock/subsys/httpd ]; then
+		/etc/rc.d/init.d/httpd restart 1>&2
+	fi
+fi
+
+# place new config location, as trigger puts config only on first install, do it here.
+# apache1
+if [ -d /etc/apache/conf.d ]; then
+	ln -sf %{_sysconfdir}/apache.conf /etc/apache/conf.d/09_%{name}.conf
+	if [ -f /var/lock/subsys/apache ]; then
+		/etc/rc.d/init.d/apache restart 1>&2
+	fi
+fi
+# apache2
+if [ -d /etc/httpd/httpd.conf ]; then
+	ln -sf %{_sysconfdir}/apache.conf /etc/httpd/httpd.conf/09_%{name}.conf
+	if [ -f /var/lock/subsys/httpd ]; then
+		/etc/rc.d/init.d/httpd restart 1>&2
+	fi
+fi
+
 %files
 %defattr(644,root,root,755)
-%doc INSTALL README TODO
-%doc icons
-%attr(755,root,root) /home/services/httpd/cgi-bin/cvsweb.cgi
-%config(noreplace) %{_sysconfdir}/cvsweb.conf
+%doc ChangeLog INSTALL NEWS README TODO samples
+%dir %attr(750,root,http) %{_sysconfdir}
+%config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{_sysconfdir}/%{name}.conf
+%config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{_sysconfdir}/apache.conf
+%attr(755,root,root) %{_cgibindir}/cvsweb.cgi
+%{_datadir}/%{name}
 
 %define date	%(echo `LC_ALL="C" date +"%a %b %d %Y"`)
 %changelog
@@ -71,88 +155,45 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
-Revision 1.27  2005/04/02 00:24:20  glen
-- checkout fix; uri fixes; config update
-
-Revision 1.26  2005/01/29 15:32:07  hawk
-- added missing perl requires
-
-Revision 1.25  2004/08/19 16:11:48  averne
-- back to /home/services
-- rel 6
-
-Revision 1.24  2004/08/19 04:56:24  averne
-- rel 5
-
-Revision 1.23  2004/08/18 11:17:31  domelu
-- rel. 4 to rebuild
-
-Revision 1.22  2004/02/04 15:46:54  averne
-- /home/services -> /srv
-- rel 3
-
-Revision 1.21  2003/12/14 21:22:24  twittner
-- removed (by cvsweb-fix_perl_options.patch) -T option from perl
-  invokation. With -T doesn't work at all.
-- Release 2. STBR for Ac
-
-Revision 1.20  2003/06/21 12:34:55  misi3k
-- updated to 1.112
-
-Revision 1.19  2003/05/26 16:24:51  malekith
-- massive attack: adding Source-md5
-
-Revision 1.18  2003/05/25 05:46:33  misi3k
-- massive attack s/pld.org.pl/pld-linux.org/
-
-Revision 1.17  2002/12/07 12:24:29  orzech
-- /home/httpd -> /home/services/httpd
-
-Revision 1.16  2002/10/10 13:04:39  marcus
-- use new %doc
-
-Revision 1.15  2002/09/08 07:29:11  mkochano
-- Release 2.
-- Closed bracket.
-
-Revision 1.14  2002/08/31 07:45:29  mkochano
-- Release 2.
-- Moved config fles out of httpd directory as it is not readable for CGI
-  scripts.
-
-Revision 1.13  2002/04/25 16:08:49  arturs
-- fixed a small typo
-
-Revision 1.12  2002/03/27 12:05:07  roman
-- s/BSD type/BSD-like in License
-
-Revision 1.11  2002/02/22 23:28:46  kloczek
-- removed all Group fields translations (our rpm now can handle translating
-  Group field using gettext).
-
-Revision 1.10  2002/01/18 02:12:39  kloczek
-- perl -pi -e "s/pld-list\@pld.org.pl/feedback\@pld.org.pl/"
-
-Revision 1.9  2001/11/13 12:57:59  qboosh
-- adapterized
+Revision 1.28  2005/06/18 15:17:55  glen
+- merged 3.0.5 from DEVEL
 
-Revision 1.8  2001/07/27 09:40:19  migo
-- added Summary(pl)
-- typo in description
+Revision 1.21.2.10  2005/06/18 15:11:36  glen
+- optional cvsgraph
 
-Revision 1.7  2001/01/29 15:19:56  kloczek
-- Requires: webserver
+Revision 1.21.2.9  2005/06/18 14:58:58  glen
+- added possible mod_perl configuration
 
-Revision 1.6  2001/01/29 15:04:48  zagrodzki
-- updated to 1.93
-- many fixes (attr on cvsweb.cgi, location of httpd conf. files, etc.)
+Revision 1.21.2.8  2005/06/18 14:36:57  glen
+- configs moved to /etc/cvsweb
+- apache configs are triggered
+
+Revision 1.21.2.7  2005/06/18 12:52:34  glen
+- changelog truncated to 3.0.1 -- it's different sources
+
+Revision 1.21.2.6  2005/06/18 12:12:27  glen
+- unpackage backup files
+
+Revision 1.21.2.5  2005/01/29 15:46:06  hawk
+- updated to 3.0.5, release 0.1
+- included macros.perl for perl autodeps, removed unecessary R's
+- rewritten descriptions, based on description from CVSweb home page
+
+Revision 1.21.2.4  2004/11/23 06:39:50  twittner
+- upgrade to 3.0.4 , rel. 0.1
+- moved cvsweb.cgi to %{_libdir}/cvsweb.cgi
+  cvsweb.cgi in new location and other cgi programs located
+  in /home/services/httpd/cgi-bin should work after upgrade
+  with the same URL but only with apache-2.x.xx current
+  configuration layout.
+- restart working webserver(s) during upgrade (not only
+  apache).
 
-Revision 1.5  2000/05/18 17:35:47  kloczek
-- spec adapterized.
+Revision 1.21.2.3  2004/09/18 22:12:55  twittner
+- 3.0.2
 
-* Tue Nov  9 1999 Peter Hanecak <hanecak at megaloman.sk>
-- updated to 1.79
+Revision 1.21.2.2  2004/08/18 23:23:06  ankry
+- spaces -> tabs
 
-* Tue Oct 12 1999 Peter Hanecak <hanecak at megaloman.sk>
-- initial spec (based on Ryan Weaver's <ryanw at infohwy.com> gtksee spec
-  because i like the style of it)
+Revision 1.21.2.1  2004/08/18 23:09:37  twittner
+- 3.0.1
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/SPECS/cvsweb.spec?r1=1.27&r2=1.28&f=u




More information about the pld-cvs-commit mailing list