]> git.pld-linux.org Git - packages/rt.git/blob - rt.spec
89cb0f03d74d227c27f3fc9fd2cbe118a2eddd8b
[packages/rt.git] / rt.spec
1 # TODO:
2 # - check file permissions
3 # - check files in /usr/share/rt3/
4 # - check Requires (meta-packages for configurations with mod_perl/fcgi,
5 #   apache[12]/standalone server...?)
6 # - separate standalone server
7 #
8 %define perl_ver                                5.8.3
9 %define perl_apache_session_ver                 1.53
10 %define perl_cgi_ver                            3.38
11 %define perl_class_returnvalue_ver              0.40
12 %define perl_css_squish_ver                     0.06
13 %define perl_dbd_mysql                          2.1018
14 %define perl_dbi_ver                            1.37
15 %define perl_dbix_searchbuilder_ver             1.59
16 %define perl_devel_stacktrace_ver               1.19
17 %define perl_digest_md5_ver                     2.27
18 %define perl_file_spec_ver                      0.8
19 %define perl_html_mason_ver                     3:1.43
20 %define perl_html_rewriteattributes_ver         0.04
21 %define perl_html_scrubber_ver                  0.08
22 %define perl_http_server_simple_mason_ver       0.09
23 %define perl_http_server_simple_ver             0.34
24 %define perl_locale_maketext_lexicon_ver        0.32
25 %define perl_locale_maketext_ver                1.06
26 %define perl_log_dispatch_ver                   2.0
27 %define perl_mailtools_ver                      1.57
28 %define perl_mime_tools_ver                     5.425
29 %define perl_module_versions_report_ver         1.05
30 %define perl_cgi_psgi                           0.12
31 %define perl_storable_ver                       2.08
32 %define perl_text_quoted_ver                    2.02
33 %define perl_text_wikiformat_ver                0.76
34 %define perl_tree_simple_ver                    1.18
35 %define perl_text_template_ver                  1.45
36 %define perl_xml_rss_ver                        1.05
37 #
38 %bcond_with     testdeps        # used for checking dependencies
39 #
40 %include        /usr/lib/rpm/macros.perl
41 Summary:        Request Tracker
42 Summary(pl.UTF-8):      Request Tracker - system do śledzenia zleceń
43 Name:           rt
44 Version:        4.0.1
45 Release:        0.1
46 License:        GPL v2
47 Group:          Applications
48 Source0:        http://download.bestpractical.com/pub/rt/release/%{name}-%{version}.tar.gz
49 # Source0-md5:  bde89fbdadf7b709fb13f32638848b9d
50 Source1:        %{name}-apache_dir.conf
51 Source2:        %{name}-apache_vhost.conf
52 Source3:        %{name}-apache.conf
53 Patch0:         %{name}-layout.patch
54 Patch1:         %{name}-config.patch
55 URL:            http://www.bestpractical.com/rt/
56 BuildRequires:  autoconf
57 BuildRequires:  automake
58 %if %{with testdeps}
59 BuildRequires:  perl-Apache-DBI
60 BuildRequires:  perl-Apache-Session >= %{perl_apache_session_ver}
61 BuildRequires:  perl-CGI >= %{perl_cgi_ver}
62 BuildRequires:  perl-CGI-Emulate-PSGI
63 BuildRequires:  perl-CGI-PSGI >= %{perl_cgi_psgi}
64 BuildRequires:  perl-CGI-SpeedyCGI
65 BuildRequires:  perl-CSS-Squish >= %{perl_css_squish_ver}
66 BuildRequires:  perl-Cache-Cache
67 BuildRequires:  perl-Calendar-Simple
68 BuildRequires:  perl-Class-ISA
69 BuildRequires:  perl-Class-ReturnValue >= %{perl_class_returnvalue_ver}
70 BuildRequires:  perl-Convert-Color
71 BuildRequires:  perl-DBD-mysql >= %{perl_dbd_mysql}
72 BuildRequires:  perl-DBI >= %{perl_dbi_ver}
73 BuildRequires:  perl-DBIx-DataSource >= 0.02
74 BuildRequires:  perl-DBIx-SearchBuilder >= %{perl_dbix_searchbuilder_ver}
75 BuildRequires:  perl-Data-ICal
76 BuildRequires:  perl-Devel-GlobalDestruction
77 BuildRequires:  perl-Devel-StackTrace >= %{perl_devel_stacktrace_ver}
78 BuildRequires:  perl-Digest-MD5 >= %{perl_digest_md5_ver}
79 BuildRequires:  perl-Email-Address
80 BuildRequires:  perl-Exception-Class
81 BuildRequires:  perl-FCGI
82 BuildRequires:  perl-FCGI-ProcManager
83 BuildRequires:  perl-File-ShareDir
84 BuildRequires:  perl-File-Spec >= %{perl_file_spec_ver}
85 BuildRequires:  perl-File-Temp
86 BuildRequires:  perl-FreezeThaw
87 BuildRequires:  perl-GD
88 BuildRequires:  perl-GD-Graph
89 BuildRequires:  perl-GD-TextUtil
90 BuildRequires:  perl-GnuPG-Interface
91 BuildRequires:  perl-HTML-Mason >= %{perl_html_mason_ver}
92 BuildRequires:  perl-HTML-Mason-PSGIHandler
93 BuildRequires:  perl-HTML-Parser
94 BuildRequires:  perl-HTML-Quoted
95 BuildRequires:  perl-HTML-RewriteAttributes >= %{perl_html_rewriteattributes_ver}
96 BuildRequires:  perl-HTML-Scrubber >= %{perl_html_scrubber_ver}
97 BuildRequires:  perl-HTML-Tree
98 BuildRequires:  perl-HTTP-Server-Simple >= %{perl_http_server_simple_ver}
99 BuildRequires:  perl-HTTP-Server-Simple-Mason >= %{perl_http_server_simple_mason_ver}
100 BuildRequires:  perl-IPC-Run3
101 BuildRequires:  perl-JSON
102 BuildRequires:  perl-JavaScript-Minifier
103 BuildRequires:  perl-Locale-Maketext >= %{perl_locale_maketext_ver}
104 BuildRequires:  perl-Locale-Maketext-Fuzzy
105 BuildRequires:  perl-Locale-Maketext-Lexicon >= %{perl_locale_maketext_lexicon_ver}
106 BuildRequires:  perl-Log-Dispatch >= %{perl_log_dispatch_ver}
107 BuildRequires:  perl-MIME-Types
108 BuildRequires:  perl-MIME-tools >= %{perl_mime_tools_ver}
109 BuildRequires:  perl-MLDBM
110 BuildRequires:  perl-MailTools >= %{perl_mailtools_ver}
111 BuildRequires:  perl-Module-Versions-Report >= %{perl_module_versions_report_ver}
112 BuildRequires:  perl-Net-CIDR
113 BuildRequires:  perl-Net-Server >= 0.34
114 BuildRequires:  perl-PSGI
115 BuildRequires:  perl-Params-Validate >= 0.02
116 BuildRequires:  perl-PerlIO-eol
117 BuildRequires:  perl-Plack
118 BuildRequires:  perl-Regexp-Common
119 BuildRequires:  perl-Regexp-Common-net-CIDR
120 BuildRequires:  perl-Regexp-IPv6
121 BuildRequires:  perl-Starlet
122 BuildRequires:  perl-Storable >= %{perl_storable_ver}
123 BuildRequires:  perl-Term-ReadKey
124 BuildRequires:  perl-Test-Inline
125 BuildRequires:  perl-Text-Autoformat
126 BuildRequires:  perl-Text-Password-Pronounceable
127 BuildRequires:  perl-Text-Quoted >= %{perl_text_quoted_ver}
128 BuildRequires:  perl-Text-Template >= %{perl_text_template_ver}
129 BuildRequires:  perl-Text-WikiFormat >= %{perl_text_wikiformat_ver}
130 BuildRequires:  perl-Text-Wrapper
131 BuildRequires:  perl-Tie-IxHash
132 BuildRequires:  perl-Time-HiRes
133 BuildRequires:  perl-Time-modules
134 BuildRequires:  perl-TimeDate
135 BuildRequires:  perl-Tree-Simple >= %{perl_tree_simple_ver}
136 BuildRequires:  perl-UNIVERSAL-require
137 BuildRequires:  perl-WWW-Mechanize
138 BuildRequires:  perl-XML-RSS >= %{perl_xml_rss_ver}
139 BuildRequires:  perl-libnet
140 %endif
141 BuildRequires:  perl-base >= %{perl_ver}
142 BuildRequires:  rpm-perlprov
143 Requires:       apache-base >= 2.2.0
144 Requires:       apache-mod_authz_host >= 2.2.0
145 Requires:       apache-mod_perl >= 2.0
146 Requires:       fonts-TTF-Google-Droid
147 Requires:       perl-Apache-DBI
148 Requires:       perl-Apache-Session >= %{perl_apache_session_ver}
149 Requires:       perl-CGI >= %{perl_cgi_ver}
150 Requires:       perl-CGI-Emulate-PSGI
151 Requires:       perl-CGI-PSGI >= %{perl_cgi_psgi}
152 Requires:       perl-CSS-Squish >= %{perl_css_squish_ver}
153 Requires:       perl-Calendar-Simple
154 Requires:       perl-Class-ISA
155 Requires:       perl-Class-ReturnValue >= %{perl_class_returnvalue_ver}
156 Requires:       perl-Convert-Color
157 Requires:       perl-DBD-mysql >= %{perl_dbd_mysql}
158 Requires:       perl-DBI >= %{perl_dbi_ver}
159 Requires:       perl-DBIx-SearchBuilder >= %{perl_dbix_searchbuilder_ver}
160 Requires:       perl-Data-ICal
161 Requires:       perl-Devel-GlobalDestruction
162 Requires:       perl-Devel-StackTrace >= %{perl_devel_stacktrace_ver}
163 Requires:       perl-Digest-MD5 >= %{perl_digest_md5_ver}
164 Requires:       perl-Encode >= 2.38
165 Requires:       perl-FCGI-ProcManager
166 Requires:       perl-File-Spec >= %{perl_file_spec_ver}
167 Requires:       perl-GD-Graph
168 Requires:       perl-GnuPG-Interface
169 Requires:       perl-HTML-Mason >= %{perl_html_mason_ver}
170 Requires:       perl-HTML-Quoted
171 Requires:       perl-HTML-RewriteAttributes >= %{perl_html_rewriteattributes_ver}
172 Requires:       perl-HTML-Scrubber >= %{perl_html_scrubber_ver}
173 Requires:       perl-HTTP-Server-Simple >= %{perl_http_server_simple_ver}
174 Requires:       perl-HTTP-Server-Simple-Mason >= %{perl_http_server_simple_mason_ver}
175 Requires:       perl-IPC-Run3
176 Requires:       perl-JSON
177 Requires:       perl-JavaScript-Minifier
178 Requires:       perl-Locale-Maketext >= %{perl_locale_maketext_ver}
179 Requires:       perl-Locale-Maketext-Fuzzy
180 Requires:       perl-Locale-Maketext-Lexicon >= %{perl_locale_maketext_lexicon_ver}
181 Requires:       perl-Log-Dispatch >= %{perl_log_dispatch_ver}
182 Requires:       perl-MIME-tools >= %{perl_mime_tools_ver}
183 Requires:       perl-MailTools >= %{perl_mailtools_ver}
184 Requires:       perl-HTML-Mason-PSGIHandler
185 Requires:       perl-Module-Versions-Report >= %{perl_module_versions_report_ver}
186 Requires:       perl-Moose
187 Requires:       perl-Net-CIDR
188 Requires:       perl-PSGI
189 Requires:       perl-PerlIO-eol
190 Requires:       perl-Plack
191 Requires:       perl-Regexp-Common-net-CIDR
192 Requires:       perl-Regexp-IPv6
193 Requires:       perl-Starlet
194 Requires:       perl-Storable >= %{perl_storable_ver}
195 Requires:       perl-Text-Password-Pronounceable
196 Requires:       perl-Text-Quoted >= %{perl_text_quoted_ver}
197 Requires:       perl-Text-WikiFormat >= %{perl_text_wikiformat_ver}
198 Requires:       perl-Tree-Simple >= %{perl_tree_simple_ver}
199 Requires:       perl-XML-RSS >= %{perl_xml_rss_ver}
200 Requires:       perl-base >= %{perl_ver}
201 Requires:       webapps
202 Suggests:       perl-FCGI
203 BuildArch:      noarch
204 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
205
206 %define         _noautoreq      'perl().*' 'perl(RT.*)' 'perl(Encode::compat)' 'perl(CGI::Fast)' 'perl(Exception::Class::Base)'
207 # workarounds for bug in perl.req ("perl()") and ,,famous'' rpm's feature (RT::*)
208
209 %define         _webapps        /etc/webapps
210 %define         _webapp         %{name}
211 %define         _webappsdir     %{_webapps}/%{_webapp}
212 %define         _sysconfdir     /etc/rt3
213 %define         _libdir         %{perl_vendorlib}
214 %define         htmldir         %{_datadir}/rt3/html
215 %define         masonstatedir   %{_localstatedir}/cache/mason_data
216 %define         masonsessiondir %{_localstatedir}/cache/session_data
217
218 %description
219 RT is an enterprise-grade ticketing system which enables a group of
220 people to intelligently and efficiently manage tasks, issues, and
221 requests submitted by a community of users.
222
223 %description -l pl.UTF-8
224 RT to profesjonalnej klasy system biletowy pozwalający grupie ludzi
225 inteligentnie i wydajnie zarządzać zadaniami, problemami i zleceniami
226 składanymi przez użytkowników.
227
228 %package cli
229 Summary:        Command-line interface to RT
230 Summary(pl.UTF-8):      Interfejs linii poleceń dla RT
231 Group:          Applications
232
233 %description cli
234 This package contains /usr/bin/rt, a command-line interface to RT 3.
235
236 It allows you to interact with an RT server over HTTP, and offers an
237 interface to RT's functionality that is better-suited to automation
238 and integration with other tools.
239
240 %description cli -l pl.UTF-8
241 Ten pakiet zawiera /usr/bin/rt - interfejs linii poleceń do RT 3.
242
243 Umożliwia on współdziałanie z serwerem RT po HTTP i oferuje interfejs
244 do funkcjonalności RT bardziej dopasowany do automatyki i intergracji
245 z innymi narzędziami.
246
247 %prep
248 %setup -q
249 %patch0 -p0
250 %patch1 -p1
251
252 mv aclocal.m4 acinclude.m4
253
254 sed -i -e 's#libdir:.*#libdir:  %{_libdir}#g' config.layout
255
256 %build
257 %{__aclocal} -I m4
258 %{__autoconf}
259 USER=$(id -un) \
260 %configure \
261         --enable-layout=PLDFHS \
262         htmldir=%{htmldir} \
263         exp_htmldir=%{htmldir} \
264         masonstatedir=%{masonstatedir} \
265         masonsessiondir=%{masonstatedir} \
266         --with-apachectl=%{_sbindir}/apachectl \
267         --with-my-user-group \
268         --with-db-type=mysql \
269         --with-web-handler=fastcgi,modperl2
270
271 %{?with_testdeps:%{__make} testdeps}
272 %{__make}
273
274 %install
275 rm -rf $RPM_BUILD_ROOT
276 install -d $RPM_BUILD_ROOT{/etc/cron.daily,%{_libdir}} \
277         $RPM_BUILD_ROOT%{masonstatedir} \
278         $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \
279         $RPM_BUILD_ROOT%{_webappsdir}
280
281 # this is make install minus fixperms
282 %{__make} config-install dirs files-install instruct \
283         DESTDIR=$RPM_BUILD_ROOT
284
285 install %{SOURCE1} %{SOURCE2} $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
286 install %{SOURCE3} $RPM_BUILD_ROOT%{_webappsdir}/httpd.conf
287
288 ln -s %{_sbindir}/rt-clean-sessions $RPM_BUILD_ROOT/etc/cron.daily/rt-clean-sessions
289
290 # unneeded in installed copy
291 rm $RPM_BUILD_ROOT%{_sbindir}/rt-test-dependencies
292
293 # we use fonts-TTF-Google-Droid
294 rm -r $RPM_BUILD_ROOT%{_datadir}/fonts/TTF
295
296 # *.in, tests
297 find $RPM_BUILD_ROOT -type f -name \*.in -exec rm '{}' \;
298
299 %triggerin -- apache < 2.2.0, apache-base
300 %webapp_register httpd %{_webapp}
301
302 %triggerun -- apache < 2.2.0, apache-base
303 %webapp_unregister httpd %{_webapp}
304
305 %clean
306 rm -rf $RPM_BUILD_ROOT
307
308 %files
309 %defattr(644,root,root,755)
310 %doc README* docs
311
312 %dir %{_sysconfdir}
313 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/[a-z]*
314 # this is local config
315 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/RT_SiteConfig.pm
316 # this is generic config that SHOULDN'T BE TOUCHED. Change settings in your local (site) config.
317 %attr(640,root,http) %config %{_sysconfdir}/RT_Config.pm
318
319 %dir %attr(750,root,http) %{_webappsdir}
320 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappsdir}/httpd.conf
321 %attr(755,root,root) /etc/cron.daily/rt-clean-sessions
322 %attr(755,root,root) %{_bindir}/rt-*
323 %attr(755,root,root) %{_sbindir}/standalone_httpd
324 %attr(755,root,root) %{_sbindir}/rt-*
325 %dir %{_datadir}/rt
326 %{_datadir}/rt/html
327 %{_datadir}/rt/po
328 %{_libdir}/*
329 %dir %attr(770,root,http) %{masonstatedir}
330 %{_examplesdir}/%{name}-%{version}
331
332 %files cli
333 %defattr(644,root,root,755)
334 %attr(755,root,root) %{_bindir}/rt
This page took 0.073475 seconds and 2 git commands to generate.