2 # 1) make mod_python3 use it's own set of config directives
3 # 2) test if both flavors can be loaded at the same time
4 # 3) after 1 and 2 are done, drop conflicts
7 %bcond_without python2 # CPython 2.x module
8 %bcond_without python3 # CPython 3.x module
10 %define mod_name python
11 %define apxs /usr/sbin/apxs
12 Summary: An embedded Python interpreter for the Apache Web server
13 Summary(cs.UTF-8): Vestavěný interpret Pythonu pro WWW server Apache
14 Summary(de.UTF-8): Ein eingebetteter Python-Interpreter für den Apache Web-Server
15 Summary(es.UTF-8): Intérprete Python para el servidor Web Apache
16 Summary(fr.UTF-8): Interpréteur Python intégré pour le serveur Web Apache
17 Summary(it.UTF-8): Interprete Python integrato per il server Web Apache
18 Summary(ja.UTF-8): Apache Web サーバー用の組込み Python インタープリタ
19 Summary(pl.UTF-8): Wbudowany interpreter języka Python dla serwera WWW Apache
20 Summary(sv.UTF-8): En inbyggd Python-interpretator för webbservern Apache
21 Name: apache-mod_%{mod_name}
25 Group: Networking/Daemons/HTTP
26 Source0: http://dist.modpython.org/dist/mod_%{mod_name}-%{version}.tgz
27 # Source0-md5: 2e61621e8d030f535f112d8e739161e2
29 Source2: %{name}3.conf
30 Patch0: %{name}-httpd-not-needed.patch
32 Patch2: set-request-response-status.patch
35 URL: http://www.modpython.org/
36 BuildRequires: apache-devel >= 2.0.52-7
37 BuildRequires: apr-devel >= 1:1.0.0
38 BuildRequires: autoconf
39 BuildRequires: automake
40 BuildRequires: flex >= 2.5.31
41 BuildRequires: rpm-pythonprov
42 BuildRequires: rpmbuild(macros) >= 1.671
45 BuildRequires: python-devel >= 2.6
48 BuildRequires: python3
49 BuildRequires: python3-devel >= 3.3
51 Requires(post,preun,postun): systemd-units >= 38
53 Requires: apache(modules-api) = %apache_modules_api
54 Requires: apr >= 1:1.0.0
55 # apache.py uses pdb module
56 Requires: python-devel-tools
57 %requires_eq python-libs
58 Requires: systemd-units >= 38
59 Conflicts: apache-mod_python3
60 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
62 %define apachelibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
63 %define apacheconfdir %(%{apxs} -q SYSCONFDIR 2>/dev/null)/conf.d
66 Mod_python is a module that embeds the Python language interpreter
67 within the server, allowing Apache handlers to be written in Python.
69 Mod_python brings together the versatility of Python and the power of
70 the Apache Web server for a considerable boost in flexibility and
71 performance over the traditional CGI approach.
73 %description -l cs.UTF-8
74 Balíček mod_python obsahuje modul, který umožní serveru Apache přímo
75 interpretovat CGI skripty napsané v jazyce Python. To vede k výraznému
76 zvýšení rychlosti jejich provedení.
78 %description -l de.UTF-8
79 Mod_python ist ein Modul, das den Python-Sprachinterpreter innerhalb
80 des Servers einbettet und es den Apache-Handlern ermöglicht, in Python
81 geschrieben zu werden.
83 Mod_python verbindet die Vielseitigkeit von Python und die
84 Leistungsstärke des Apache Web-Servers, was eine enorme Steigerung der
85 Flexibilität und Leistung gegenüber dem traditionellen CGI-Ansatz
88 %description -l es.UTF-8
89 Mod_python es un módulo que activa el intérprete de Python en el
90 servidor, permitiendo que se escriban gestores para Apache en Python.
92 Mod_python proporciona la versatilidad y el poder del servidor web
93 Apache para acelerar considerablemente la flexibilidad y prestaciones
94 en comparación a una aproximación tradicional con CGI.
96 %description -l fr.UTF-8
97 Mod_python est un module qui intègre l'interpréteur de langage Python
98 dans le serveur, permettant aux gestionnaires Apache d'être écrits en
101 Mod_python conjugue la versatilité de Python et la puissance du
102 serveur Web Apache de façon à augmenter considérablement la
103 flexibilité et la performance par rapport à une approche CGI
106 %description -l it.UTF-8
107 Mod_python è un modulo che integra nel server l'interprete del
108 linguaggio Python, in modo che i programmi di gestione possano essere
111 Mod_python unisce in sé la versatilità di Python e la potenza del
112 server Web Apache, con un conseguente accrescimento di flessibilità e
113 un miglioramento notevole nelle prestazioni rispetto all'approccio
116 %description -l ja.UTF-8
117 Mod_python はサーバー内に Python
118 言語インタープリタを組み込んだモジュール です。これにより、Apache
119 ハンドラを Python で記述できます。 Mod_python は、Python の汎用性と
120 Apache Web サーバーのパワーを組み合わせる ことにより、従来の CGI
121 アプローチから柔軟性とパフォーマンスを大幅に向上させます。
123 %description -l pl.UTF-8
124 mod_python jest modułem osadzającym interpreter języka Python w
125 serwerze WWW Apache, umożliwiając mu obsługę kodu napisanego w
128 mod_python łączy wszechstronność Pythona i moc Apache'a jako serwera
129 WWW, co daje zwiększoną elastyczność i zauważalną poprawę wydajności w
130 stosunku do tradycyjnego rozwiązania opartego na CGI.
132 %description -l sv.UTF-8
133 Mod_python är en modul som bygger in en interpretator för språket
134 Python i servern, och låter Apach-hanterare skrivas i Python.
136 Mod_python sammanför mångsidigheten hos Python och kraften hos
137 webbservern Apache till en avsevärd ökning av flexibiliteten och
138 prestandan jämfört med den traditionella CGI-metoden.
140 %package -n apache-mod_python3
141 Summary: An embedded Python 3 interpreter for the Apache Web server
142 Summary(cs.UTF-8): Vestavěný interpret Pythonu 3 pro WWW server Apache
143 Summary(de.UTF-8): Ein eingebetteter Python3-Interpreter für den Apache Web-Server
144 Summary(es.UTF-8): Intérprete Python 3 para el servidor Web Apache
145 Summary(fr.UTF-8): Interpréteur Python 3 intégré pour le serveur Web Apache
146 Summary(it.UTF-8): Interprete Python 3 integrato per il server Web Apache
147 Summary(ja.UTF-8): Apache Web サーバー用の組込み Python 3 インタープリタ
148 Summary(pl.UTF-8): Wbudowany interpreter języka Python 3 dla serwera WWW Apache
149 Summary(sv.UTF-8): En inbyggd Python3-interpretator för webbservern Apache
150 Group: Networking/Daemons/HTTP
151 Requires(post,preun,postun): systemd-units >= 38
153 Requires: apache(modules-api) = %apache_modules_api
154 Requires: apr >= 1:1.0.0
155 # apache.py uses pdb module
156 Requires: python3-devel-tools
157 %requires_eq python3-libs
158 Requires: systemd-units >= 38
159 Conflicts: apache-mod_python
161 %description -n apache-mod_python3
162 mod_python3 is a module that embeds the Python 3 language interpreter
163 within the server, allowing Apache handlers to be written in Python 3.
165 mod_python3 brings together the versatility of Python 3 and the power
166 of the Apache Web server for a considerable boost in flexibility and
167 performance over the traditional CGI approach.
169 %description -n apache-mod_python3 -l cs.UTF-8
170 Balíček mod_python3 obsahuje modul, který umožní serveru Apache přímo
171 interpretovat CGI skripty napsané v jazyce Python 3. To vede k
172 výraznému zvýšení rychlosti jejich provedení.
174 %description -n apache-mod_python3 -l de.UTF-8
175 mod_python3 ist ein Modul, das den Python3-Sprachinterpreter innerhalb
176 des Servers einbettet und es den Apache-Handlern ermöglicht,
177 in Python 3 geschrieben zu werden.
179 mod_python3 verbindet die Vielseitigkeit von Python 3 und die
180 Leistungsstärke des Apache Web-Servers, was eine enorme Steigerung der
181 Flexibilität und Leistung gegenüber dem traditionellen CGI-Ansatz
184 %description -n apache-mod_python3 -l es.UTF-8
185 mod_python3 es un módulo que activa el intérprete de Python 3 en el
186 servidor, permitiendo que se escriban gestores para Apache en
189 mod_python3 proporciona la versatilidad y el poder del servidor web
190 Apache para acelerar considerablemente la flexibilidad y prestaciones
191 en comparación a una aproximación tradicional con CGI.
193 %description -n apache-mod_python3 -l fr.UTF-8
194 mod_python3 est un module qui intègre l'interpréteur de langage
195 Python 3 dans le serveur, permettant aux gestionnaires Apache d'être
198 mod_python3 conjugue la versatilité de Python 3 et la puissance du
199 serveur Web Apache de façon à augmenter considérablement la
200 flexibilité et la performance par rapport à une approche CGI
203 %description -n apache-mod_python3 -l it.UTF-8
204 mod_python3 è un modulo che integra nel server l'interprete del
205 linguaggio Python 3, in modo che i programmi di gestione possano
206 essere scritti in Python 3.
208 mod_python3 unisce in sé la versatilità di Python 3 e la potenza del
209 server Web Apache, con un conseguente accrescimento di flessibilità e
210 un miglioramento notevole nelle prestazioni rispetto all'approccio
213 %description -n apache-mod_python3 -l ja.UTF-8
214 mod_python3 はサーバー内に Python 3
215 言語インタープリタを組み込んだモジュール です。これにより、Apache
216 ハンドラを Python 3 で記述できます。 mod_python3 は、Python 3
217 の汎用性と Apache Web サーバーのパワーを組み合わせる ことにより、
218 従来の CGI アプローチから柔軟性とパフォーマンスを大幅に向上させます。
220 %description -n apache-mod_python3 -l pl.UTF-8
221 mod_python3 jest modułem osadzającym interpreter języka Python 3 w
222 serwerze WWW Apache, umożliwiając mu obsługę kodu napisanego w
225 mod_python3 łączy wszechstronność Pythona 3 i moc Apache'a jako
226 serwera WWW, co daje zwiększoną elastyczność i zauważalną poprawę
227 wydajności w stosunku do tradycyjnego rozwiązania opartego na CGI.
229 %description -n apache-mod_python3 -l sv.UTF-8
230 mod_python3 är en modul som bygger in en interpretator för språket
231 Python 3 i servern, och låter Apach-hanterare skrivas i Python 3.
233 mod_python3 sammanför mångsidigheten hos Python 3 och kraften hos
234 webbservern Apache till en avsevärd ökning av flexibiliteten och
235 prestandan jämfört med den traditionella CGI-metoden.
238 %setup -q -n mod_%{mod_name}-%{version}
251 --with-apxs=%{apxs} \
252 --with-python=%{__python}
256 install -d apache-mod_python{%{apachelibdir},%{apacheconfdir},%{_bindir}}
258 DESTDIR=`pwd`/apache-mod_python \
259 PY_SITESCRIPTDIR=%{py_sitescriptdir} \
260 PY_SITEDIR=%{py_sitedir}
265 --with-apxs=%{apxs} \
266 --with-python=%{__python3}
270 install -d apache-mod_python3{%{apachelibdir},%{apacheconfdir},%{_bindir}}
272 DESTDIR=`pwd`/apache-mod_python3 \
273 PY_SITESCRIPTDIR=%{py3_sitescriptdir} \
274 PY_SITEDIR=%{py3_sitedir}
275 %{__mv} apache-mod_python3%{_bindir}/mod_python{,3}
276 %{__mv} apache-mod_python3%{apachelibdir}/mod_python{,3}.so
280 rm -rf $RPM_BUILD_ROOT
281 install -d $RPM_BUILD_ROOT{%{apachelibdir},%{apacheconfdir},%{_bindir}}
284 cp -a apache-mod_python/* $RPM_BUILD_ROOT
285 install %{SOURCE1} $RPM_BUILD_ROOT%{apacheconfdir}/60_mod_python.conf
289 cp -a apache-mod_python3/* $RPM_BUILD_ROOT
290 install %{SOURCE2} $RPM_BUILD_ROOT%{apacheconfdir}/60_mod_python3.conf
296 rm -rf $RPM_BUILD_ROOT
299 %service -q httpd restart
300 %systemd_service_restart httpd.service
303 if [ "$1" = "0" ]; then
304 %service -q httpd restart
305 %systemd_service_restart httpd.service
308 %post -n apache-mod_python3
309 %service -q httpd restart
310 %systemd_service_restart httpd.service
312 %postun -n apache-mod_python3
313 if [ "$1" = "0" ]; then
314 %service -q httpd restart
315 %systemd_service_restart httpd.service
320 %defattr(644,root,root,755)
321 %doc doc-html/* README.md COPYRIGHT NEWS CREDITS
323 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{apacheconfdir}/*_mod_%{mod_name}.conf
324 %attr(755,root,root) %{_bindir}/mod_python
325 %attr(755,root,root) %{apachelibdir}/mod_python.so
326 %dir %{py_sitedir}/mod_%{mod_name}
327 %{py_sitedir}/mod_%{mod_name}-*.egg-info
328 %attr(755,root,root) %{py_sitedir}/mod_%{mod_name}/*.so
329 %{py_sitedir}/mod_%{mod_name}/*.py[co]
333 %files -n apache-mod_python3
334 %defattr(644,root,root,755)
335 %doc doc-html/* README.md COPYRIGHT NEWS CREDITS
337 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{apacheconfdir}/*_mod_%{mod_name}3.conf
338 %attr(755,root,root) %{_bindir}/mod_python3
339 %attr(755,root,root) %{apachelibdir}/mod_python3.so
340 %dir %{py3_sitedir}/mod_%{mod_name}
341 %{py3_sitedir}/mod_%{mod_name}-*.egg-info
342 %attr(755,root,root) %{py3_sitedir}/mod_%{mod_name}/*.so
343 %{py3_sitedir}/mod_%{mod_name}/__pycache__
344 %{py3_sitedir}/mod_%{mod_name}/*.py