]> git.pld-linux.org Git - packages/cvsweb.git/blob - cvsweb.spec
- merged 3.0.5 from DEVEL
[packages/cvsweb.git] / cvsweb.spec
1 %include        /usr/lib/rpm/macros.perl
2 Summary:        Visual (www) interface to explore a cvs repository
3 Summary(pl):    Wizualny (WWW) interfejs do przegl±dania repozytorium cvs
4 Name:           cvsweb
5 Version:        3.0.5
6 Release:        0.15
7 Epoch:          1
8 License:        BSD
9 Group:          Development/Tools
10 Source0:        http://people.FreeBSD.org/~scop/cvsweb/%{name}-%{version}.tar.gz
11 # Source0-md5:  572dbb2d66ad6487c0a3536f93023086
12 URL:            http://www.freebsd.org/projects/cvsweb.html
13 Patch0:         %{name}-config.patch
14 BuildRequires:  rpmbuild(macros) >= 1.223
15 # for %{_libdir}/cgi-bin
16 Requires:       FHS >= 2.3-8
17 Requires:       rcs
18 # for /etc/mime.types
19 Requires:       mailcap
20 Requires:       webserver
21 # because of wrong module load order
22 Conflicts:      apache1 < 1.3.33-6.3
23 BuildArch:      noarch
24 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
25
26 %define         _sysconfdir     /etc/%{name}
27 %define         _appdir         %{_datadir}/%{name}
28 %define         _cgibindir      %{_libdir}/cgi-bin
29
30 %description
31 CVSweb is a WWW interface for CVS repositories with which you can
32 browse a file hierarchy on your browser to view each file's revision
33 history in a very handy manner. CVSweb was originally written by Bill
34 Fenner for the FreeBSD Project. FreeBSD-CVSweb, formerly known as
35 knu-CVSweb, is an enhanced version of CVSweb based on Henner Zeller's
36 CVSweb, which is an extended version of the original CVSweb. This
37 version contains numerous cleanups, bug-fixes, security enhancements
38 and feature improvements.
39
40 %description -l pl
41 CVSweb jest interfejsem WWW dla repozytoriów CVS dziêki któremu mo¿na
42 przegl±daæ ich zawarto¶æ w przegl±darce WWW widz±c pe³n± historiê
43 zmian i numerów rewizji dla ka¿dego z plików. CVSWeb zosta³ stworzony
44 przez Billa Fennera dla projektu FreeBSD. FreeBSD-CVSweb dawniej znany
45 jako knu-CVSweb jest rozszerzon± wersj± opart± na wersji Hennera
46 Zellera, która z kolei by³a oparta na oryginalnej wersji. Kod obecnej
47 wersji zosta³ uporz±dkowany i oczysczony, usuniêtych zosta³o równie¿
48 wiele b³êdów. Wprowadzono tak¿e du¿o poprawek bezpieczeñstwa oraz
49 rozbudowano funkcjonalno¶æ.
50
51 %prep
52 %setup -q
53 %patch0 -p1
54
55 install cvsweb.conf* samples
56
57 # remove backups
58 find '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v
59
60 %install
61 rm -rf $RPM_BUILD_ROOT
62
63 install -d $RPM_BUILD_ROOT{%{_appdir}/{css,enscript,icons},%{_cgibindir},%{_sysconfdir}}
64
65 install %{name}.cgi     $RPM_BUILD_ROOT%{_cgibindir}
66 install css/*           $RPM_BUILD_ROOT%{_appdir}/css
67 install enscript/*      $RPM_BUILD_ROOT%{_appdir}/enscript
68 install icons/*         $RPM_BUILD_ROOT%{_appdir}/icons
69
70 install %{name}.conf    $RPM_BUILD_ROOT%{_sysconfdir}
71 echo '# vim:syn=perl' >> $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
72
73 cat <<EOF > $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
74 Alias /%{name}/ %{_appdir}/
75 ScriptAlias /cgi-bin/%{name}.cgi %{_cgibindir}/%{name}.cgi
76
77 <Location /cgi-bin/cvsweb.cgi>
78    # See also $charset in cvsweb.conf.
79    #AddDefaultCharset UTF-8
80
81    # mod_perl >= 1.99:
82    <IfModule mod_perl.c>
83            SetHandler perl-script
84            PerlResponseHandler ModPerl::Registry
85            PerlOptions +ParseHeaders
86            Options ExecCGI
87    </IfModule>
88 </Location>
89
90 # vim: filetype=apache ts=4 sw=4 et
91 EOF
92
93 %post
94 if [ "$1" = 1 ]; then
95 %banner %{name} -e <<'EOF'
96 You might want to install optionally 'cvsgraph' program.
97 EOF
98 fi
99
100 %clean
101 rm -rf $RPM_BUILD_ROOT
102
103 # 09_ instead of 99_ is for ScriptAlias /cgi-bin/cvsweb.cgi ...
104 %triggerin -- apache1 >= 1.3.33-2
105 %apache_config_install -v 1 -c %{_sysconfdir}/apache.conf -n 09
106
107 %triggerun -- apache1 >= 1.3.33-2
108 %apache_config_uninstall -v 1 -n 09
109
110 %triggerin -- apache >= 2.0.0
111 %apache_config_install -v 2 -c %{_sysconfdir}/apache.conf -n 09
112
113 %triggerun -- apache >= 2.0.0
114 %apache_config_uninstall -v 2 -n 09
115
116 %triggerpostun -- %{name} < 1:3.0.5-0.11
117 # migrate from old config location (only apache2, as there was no apache1 support)
118 if [ -f /etc/httpd/%{name}.conf.rpmsave ]; then
119         cp -f %{_sysconfdir}/apache.conf{,.rpmnew}
120         mv -f /etc/httpd/%{name}.conf.rpmsave %{_sysconfdir}/apache.conf
121         if [ -f /var/lock/subsys/httpd ]; then
122                 /etc/rc.d/init.d/httpd restart 1>&2
123         fi
124 fi
125
126 # place new config location, as trigger puts config only on first install, do it here.
127 # apache1
128 if [ -d /etc/apache/conf.d ]; then
129         ln -sf %{_sysconfdir}/apache.conf /etc/apache/conf.d/09_%{name}.conf
130         if [ -f /var/lock/subsys/apache ]; then
131                 /etc/rc.d/init.d/apache restart 1>&2
132         fi
133 fi
134 # apache2
135 if [ -d /etc/httpd/httpd.conf ]; then
136         ln -sf %{_sysconfdir}/apache.conf /etc/httpd/httpd.conf/09_%{name}.conf
137         if [ -f /var/lock/subsys/httpd ]; then
138                 /etc/rc.d/init.d/httpd restart 1>&2
139         fi
140 fi
141
142 %files
143 %defattr(644,root,root,755)
144 %doc ChangeLog INSTALL NEWS README TODO samples
145 %dir %attr(750,root,http) %{_sysconfdir}
146 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{_sysconfdir}/%{name}.conf
147 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{_sysconfdir}/apache.conf
148 %attr(755,root,root) %{_cgibindir}/cvsweb.cgi
149 %{_datadir}/%{name}
This page took 0.058341 seconds and 3 git commands to generate.