2 %define apxs /usr/sbin/apxs
3 Summary: Module to serve XML based content
4 Summary(pl): Modu³ do udostêpniania dokumentów XML
5 Name: apache-mod_%{mod_name}
9 Group: Networking/Daemons
10 Source0: http://dl.sourceforge.net/modxslt/mod_%{mod_name}-%{version}.tar.gz
11 Source1: mod_%{mod_name}.conf
12 Patch0: mod_%{mod_name}-includes.patch
13 Patch1: mod_%{mod_name}-regex.patch
14 Patch2: mod_%{mod_name}-make.patch
15 Patch3: mod_%{mod_name}-module.patch
16 URL: http://modxslt.userworld.com/
17 BuildRequires: %{apxs}
18 BuildRequires: apache-devel
19 BuildRequires: sablotron-devel
20 Requires(post,preun): %{apxs}
23 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
25 %define _pkglibdir %(%{apxs} -q LIBEXECDIR)
26 %define _sysconfdir /etc/httpd
29 mod_xslt is a simple Apache module to serve XML based content. Data is
30 stored in XML files on the server. The user requests the XML file and
31 the translation method via a url such as this:
32 http://localhost/sourcefile.html. The module will parse this URL into
33 a XML source file and an XSL source file. In the example above, the
34 XML file will be sourcefile.xml. The module will open sourcefile.xml
35 and determine its DOCTYPE. Based on the DOCTYPE, the XSL file will be
36 opened. Should the DOCTYPE be "tutorial", the XSL file opened would be
37 tutorial_html.xsl. The content-type returned to the browser is
38 text/html. The translation occurs transparently to the user.
41 mod_xslt jest prostym modu³em Apache do udostêpniania dokumentów XML.
42 Dane s± zapisane w plikach XML na serwerze. U¿ytkownik ¿±da pliku XML
43 i t³maczenia poprzez URL w stylu http://localhost/sourcefile.html.
44 Modu³ zamienia ten URL na pliki ¼ród³owe XML i XSL. W tym przyk³adzie
45 plikiem XML bêdzie sourcefile.xml. Modu³ otworzy plik sourcefile.xml i
46 okre¶li DOCTYPE, na podstawie którego otworzy odpowiedni plik XSL.
47 Je¿eli DOCTYPE jest "tutorial", plikiem XSL bêdzie tutorial_html.xsl.
48 Nastêpnie modu³ dokona przetwarzania pliku XML za pomoc± arkusza XSLT
49 i zwróci przegl±darce powsta³y w ten sposób text/html. Ca³y proces
50 odbywa siê w sposób niewidoczny dla u¿ytkownika.
53 %setup -q -n mod%{mod_name}
60 CFLAGS="%{rpmcflags} -DEAPI"; export CFLAGS
61 %{__make} APXS=%{apxs}
64 rm -rf $RPM_BUILD_ROOT
65 install -d $RPM_BUILD_ROOT{%{_pkglibdir},%{_sysconfdir}}
67 install mod_%{mod_name}.so $RPM_BUILD_ROOT%{_pkglibdir}
68 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/mod_xslt.conf
71 rm -rf $RPM_BUILD_ROOT
74 %{apxs} -e -a -n %{mod_name} %{_pkglibdir}/mod_%{mod_name}.so 1>&2
75 if [ -f /var/lock/subsys/httpd ]; then
76 /etc/rc.d/init.d/httpd restart 1>&2
80 if [ "$1" = "0" ]; then
81 %{apxs} -e -A -n %{mod_name} %{_pkglibdir}/mod_%{mod_name}.so 1>&2
82 if [ -f /var/lock/subsys/httpd ]; then
83 /etc/rc.d/init.d/httpd restart 1>&2
88 %defattr(644,root,root,755)
89 %attr(755,root,root) %{_pkglibdir}/*
90 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mod_%{mod_name}.conf