]> git.pld-linux.org Git - packages/cvsweb.git/blob - cvsweb.spec
- drop obsolete and outdated manual inclusion of rpm macros
[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.UTF-8):      Wizualny (WWW) interfejs do przeglądania repozytorium CVS
4 Name:           cvsweb
5 Version:        3.0.6
6 Release:        8
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:  0e1eec962b1db00e01b295fff84b6e89
12 Source1:        %{name}-apache.conf
13 URL:            http://www.freebsd.org/projects/cvsweb.html
14 Patch0:         %{name}-config.patch
15 Patch1:         %{name}-emptyscript.patch
16 Patch2:         cveurl.patch
17 Patch3:         cvsnt.patch
18 BuildRequires:  rpmbuild(macros) >= 1.268
19 Requires:       diffutils
20 # for %{_prefix}/lib/cgi-bin
21 Requires:       filesystem >= 3.0-11
22 # for /etc/mime.types
23 Requires:       mailcap
24 Requires:       rcs
25 Requires:       webapps
26 Requires:       webserver(access)
27 Conflicts:      apache-base < 2.2.0-8
28 Conflicts:      apache1 < 1.3.34-6
29 BuildArch:      noarch
30 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31
32 %define         _webapps        /etc/webapps
33 %define         _webapp         %{name}
34 %define         _sysconfdir     %{_webapps}/%{_webapp}
35 %define         _appdir         %{_datadir}/%{name}
36 %define         _cgibindir      %{_prefix}/lib/cgi-bin
37 %define         _enscriptdir    %{_datadir}/enscript/hl
38
39 %description
40 CVSweb is a WWW interface for CVS repositories with which you can
41 browse a file hierarchy on your browser to view each file's revision
42 history in a very handy manner. CVSweb was originally written by Bill
43 Fenner for the FreeBSD Project. FreeBSD-CVSweb, formerly known as
44 knu-CVSweb, is an enhanced version of CVSweb based on Henner Zeller's
45 CVSweb, which is an extended version of the original CVSweb. This
46 version contains numerous cleanups, bug-fixes, security enhancements
47 and feature improvements.
48
49 %description -l pl.UTF-8
50 CVSweb jest interfejsem WWW dla repozytoriów CVS dzięki któremu można
51 przeglądać ich zawartość w przeglądarce WWW widząc pełną historię
52 zmian i numerów rewizji dla każdego z plików. CVSWeb został stworzony
53 przez Billa Fennera dla projektu FreeBSD. FreeBSD-CVSweb dawniej znany
54 jako knu-CVSweb jest rozszerzoną wersją opartą na wersji Hennera
55 Zellera, która z kolei była oparta na oryginalnej wersji. Kod obecnej
56 wersji został uporządkowany i oczyszczony, usuniętych zostało również
57 wiele błędów. Wprowadzono także dużo poprawek bezpieczeństwa oraz
58 rozbudowano funkcjonalność.
59
60 %package -n enscript-%{name}
61 Summary:        Enscript language files for CVSweb
62 Summary(pl.UTF-8):      Pliki języka Enscript dla CVSweba
63 Group:          Applications/Publishing
64 Requires:       enscript >= 1.6.4-1.2
65
66 %description -n enscript-%{name}
67 Enscript language files for CVSweb.
68
69 %description -n enscript-%{name} -l pl.UTF-8
70 Pliki języka Enscript dla CVSweba.
71
72 %prep
73 %setup -q
74 %patch0 -p1
75 %patch1 -p1
76 %patch2 -p1
77 %patch3 -p1
78
79 cp -a cvsweb.conf* samples
80
81 # remove backups
82 find '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v
83
84 %install
85 rm -rf $RPM_BUILD_ROOT
86 install -d $RPM_BUILD_ROOT{%{_appdir}/{css,icons},%{_cgibindir},%{_enscriptdir},%{_sysconfdir}}
87
88 install %{name}.cgi     $RPM_BUILD_ROOT%{_cgibindir}
89 install css/*           $RPM_BUILD_ROOT%{_appdir}/css
90 install enscript/*      $RPM_BUILD_ROOT%{_enscriptdir}
91 install icons/*         $RPM_BUILD_ROOT%{_appdir}/icons
92
93 install %{name}.conf    $RPM_BUILD_ROOT%{_sysconfdir}
94 echo '# vim:syn=perl' >> $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
95 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
96 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
97
98 %clean
99 rm -rf $RPM_BUILD_ROOT
100
101 %post
102 if [ "$1" = 1 ]; then
103 %banner %{name} -e <<'EOF'
104 You might want to install optionally 'cvsgraph' program.
105 EOF
106 fi
107
108 %triggerin -- apache1 < 1.3.37-3, apache1-base
109 %webapp_register apache %{_webapp}
110
111 %triggerun -- apache1 < 1.3.37-3, apache1-base
112 %webapp_unregister apache %{_webapp}
113
114 %triggerin -- apache < 2.2.0, apache-base
115 %webapp_register httpd %{_webapp}
116
117 %triggerun -- apache < 2.2.0, apache-base
118 %webapp_unregister httpd %{_webapp}
119
120 %triggerpostun -- %{name} < 1:3.0.6-0.2
121 # rescue app config
122 if [ -f /etc/%{name}/cvsweb.conf.rpmsave ]; then
123         mv -f %{_sysconfdir}/cvsweb.conf{,.rpmnew}
124         mv -f /etc/%{name}/cvsweb.conf.rpmsave %{_sysconfdir}/cvsweb.conf
125 fi
126
127 # migrate from old config location (only apache2, as there was no apache1 support)
128 if [ -f /etc/httpd/%{name}.conf.rpmsave ]; then
129         cp -f %{_sysconfdir}/httpd.conf{,.rpmnew}
130         mv -f /etc/httpd/%{name}.conf.rpmsave %{_sysconfdir}/httpd.conf
131         httpd_reload=1
132 fi
133
134 # migrate from apache-config macros
135 if [ -f /etc/%{name}/apache.conf.rpmsave ]; then
136         if [ -d /etc/apache/webapps.d ]; then
137                 cp -f %{_sysconfdir}/apache.conf{,.rpmnew}
138                 cp -f /etc/%{name}/apache.conf.rpmsave %{_sysconfdir}/apache.conf
139         fi
140
141         if [ -d /etc/httpd/webapps.d ]; then
142                 cp -f %{_sysconfdir}/httpd.conf{,.rpmnew}
143                 cp -f /etc/%{name}/apache.conf.rpmsave %{_sysconfdir}/httpd.conf
144         fi
145         rm -f /etc/%{name}/apache.conf.rpmsave
146 fi
147
148 if [ -L /etc/apache/conf.d/09_%{name}.conf ]; then
149         rm -f /etc/apache/conf.d/09_%{name}.conf
150         apache_reload=1
151 fi
152 if [ -L /etc/apache/conf.d/79_%{name}.conf ]; then
153         rm -f /etc/apache/conf.d/79_%{name}.conf
154         apache_reload=1
155 fi
156 if [ -L /etc/httpd/httpd.conf/09_%{name}.conf ]; then
157         rm -f /etc/httpd/httpd.conf/09_%{name}.conf
158         httpd_reload=1
159 fi
160
161 if [ "$apache_reload" ]; then
162         /usr/sbin/webapp register apache %{_webapp}
163         %service -q apache reload
164 fi
165 if [ "$httpd_reload" ]; then
166         /usr/sbin/webapp register httpd %{_webapp}
167         %service -q httpd reload
168 fi
169
170 %files
171 %defattr(644,root,root,755)
172 %doc ChangeLog INSTALL NEWS README TODO samples
173 %dir %attr(750,root,http) %{_sysconfdir}
174 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{_sysconfdir}/%{name}.conf
175 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{_sysconfdir}/apache.conf
176 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{_sysconfdir}/httpd.conf
177 %attr(755,root,root) %{_cgibindir}/cvsweb.cgi
178 %{_appdir}
179
180 %files -n enscript-%{name}
181 %defattr(644,root,root,755)
182 %{_enscriptdir}/*
This page took 0.084482 seconds and 3 git commands to generate.