3 %bcond_without doc # do not build documentation
4 %bcond_without servlet # don't build servlet sample
6 %define ver %(echo %{version} | tr . _)
8 Summary: XSLT processor for Java
9 Summary(pl.UTF-8): Procesor XSLT napisany w Javie
14 Group: Applications/Publishing/XML/Java
15 Source0: http://www.apache.org/dist/xml/xalan-j/source/xalan-j_%{ver}-src.tar.gz
16 # Source0-md5: fc805051f0fe505c7a4b1b5c8db9b9e3
17 Patch0: xalan-j-javadoc-mem.patch
18 URL: http://xml.apache.org/xalan-j/
19 BuildRequires: ant >= 1.5
20 BuildRequires: java(jaxp_parser_impl)
21 %{?with_servlet:BuildRequires: java(servlet)}
22 BuildRequires: java-bcel
23 BuildRequires: java-cup
24 BuildRequires: java-xml-commons-external
27 BuildRequires: jpackage-utils
28 BuildRequires: rpmbuild(macros) >= 1.300
29 Requires: java(jaxp_parser_impl)
30 Provides: java(jaxp_transform_impl)
34 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
37 XSLT processor for Java.
39 %description -l pl.UTF-8
40 Procesor XSLT napisany w Javie.
43 Summary: API documentation for xalan-j, an XSLT processor for Java
44 Summary(pl.UTF-8): Dokumentacja API dla xalan-j, procesora XSLT napisanego w Javie
46 Requires: jpackage-utils
47 Obsoletes: xalan-j-doc
48 Obsoletes: xalan-j-javadoc
51 API documentation for xalan-j, an XSLT processor for Java.
53 %description javadoc -l pl.UTF-8
54 Dokumentacja API dla xalan-j, procesora XSLT napisanego w Javie.
57 Summary: Xalan-j, an XSLT processor for Java examples
58 Summary(pl.UTF-8): Przykłady dla xalan-j, procesora XSLT napisanego w Javie
60 Obsoletes: xalan-j-examples
63 Xalan-j, an XSLT processor for Java examples.
65 %description examples -l pl.UTF-8
66 Przykłady dla xalan-j, procesora XSLT napisanego w Javie.
69 %setup -q -n xalan-j_%{ver}
70 %{__sed} -i -e 's,\r$,,' build.xml
73 find -name '*.jar' ! -name 'xalan2jdoc.jar' ! -name 'stylebook-1.0-b3_xalan-2.jar' | xargs rm -f
75 # copied to xalan.jar (TODO: don't do it and use system ones?)
76 ln -sf %{_javadir}/bcel.jar lib/BCEL.jar
77 ln -sf %{_javadir}/regexp.jar lib/regexp.jar
78 ln -sf %{_javadir}/cup-runtime.jar lib/runtime.jar
81 export JAVA_HOME=%{java_home}
84 required_jars='%{?with_servlet:servlet-api} cup cup-runtime jlex bcel jaxp_parser_impl xml-apis'
85 CLASSPATH=$(build-classpath $required_jars)
87 export ANT_OPTS="-Xmx192m"
89 %ant xsltc.unbundledjar %{?with_servlet:servlet} \
90 %{?with_doc:docs xsltc.docs javadocs samples}
93 rm -rf $RPM_BUILD_ROOT
94 install -d $RPM_BUILD_ROOT{%{_javadir},%{_examplesdir},%{_javadocdir}/%{srcname}-%{version}}
96 cp -p build/serializer.jar $RPM_BUILD_ROOT%{_javadir}/xalan-serializer-%{version}.jar
97 cp -p build/xalan.jar $RPM_BUILD_ROOT%{_javadir}/xalan-%{version}.jar
98 cp -p build/xsltc.jar $RPM_BUILD_ROOT%{_javadir}/xsltc-%{version}.jar
99 ln -sf xalan-serializer-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/xalan-serializer.jar
100 ln -sf xalan-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/xalan.jar
101 ln -sf xalan-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/jaxp_transform_impl.jar
102 ln -sf xsltc-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/xsltc.jar
104 # some expected jar names from JPackage
105 ln -sf xalan-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/xalan-j2.jar
106 ln -sf xalan-serializer-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/xalan-j2-serializer.jar
109 cp -a samples $RPM_BUILD_ROOT%{_examplesdir}/%{srcname}-%{version}
110 cp -a build/docs/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{srcname}-%{version}
114 rm -rf $RPM_BUILD_ROOT
117 %defattr(644,root,root,755)
118 %doc %{?with_doc:build/docs/design build/docs/xsltc}
119 %{_javadir}/jaxp_transform_impl.jar
120 %{_javadir}/xalan-%{version}.jar
121 %{_javadir}/xalan.jar
122 %{_javadir}/xalan-serializer-%{version}.jar
123 %{_javadir}/xalan-serializer.jar
124 %{_javadir}/xsltc-%{version}.jar
125 %{_javadir}/xsltc.jar
126 %{_javadir}/xalan-j2.jar
127 %{_javadir}/xalan-j2-serializer.jar
131 %defattr(644,root,root,755)
132 %doc %{_javadocdir}/%{srcname}-%{version}
135 %defattr(644,root,root,755)
136 %{_examplesdir}/%{srcname}-%{version}