%bcond_without hsqldb %global base_name jaxme Name: ws-jaxme Version: 0.5.2 Release: 1 Epoch: 0 Summary: Open source implementation of JAXB License: ASL 2.0 URL: http://ws.apache.org/ Source0: http://archive.apache.org/dist/ws/jaxme/source/%{name}-%{version}-src.tar.gz Source2: https://repo1.maven.org/maven2/org/apache/ws/jaxme/jaxme2/%{version}/jaxme2-%{version}.pom Source3: https://repo1.maven.org/maven2/org/apache/ws/jaxme/jaxme2-rt/%{version}/jaxme2-rt-%{version}.pom Source4: https://repo1.maven.org/maven2/org/apache/ws/jaxme/jaxmeapi/%{version}/jaxmeapi-%{version}.pom Source5: https://repo1.maven.org/maven2/org/apache/ws/jaxme/jaxmejs/%{version}/jaxmejs-%{version}.pom Source6: https://repo1.maven.org/maven2/org/apache/ws/jaxme/jaxmepm/%{version}/jaxmepm-%{version}.pom Source7: https://repo1.maven.org/maven2/org/apache/ws/jaxme/jaxmexs/%{version}/jaxmexs-%{version}.pom Patch0: ws-jaxme-docs_xml.patch Patch1: ws-jaxme-catalog.patch Patch2: ws-jaxme-system-dtd.patch Patch3: ws-jaxme-jdk16.patch Patch4: ws-jaxme-ant-scripts.patch Patch5: ws-jaxme-use-commons-codec.patch Patch6: ws-jaxme-remove-xmldb.patch Patch7: ws-jaxme-0.5.2-class-version15.patch BuildArch: noarch BuildRequires: javapackages-local ant >= 0:1.6 ant-apache-resolver antlr apache-commons-codec BuildRequires: junit %if %{with hsqldb} BuildRequires: hsqldb1 %endif BuildRequires: log4j12 xalan-j2 xerces-j2 docbook-style-xsl docbook-dtds Requires: antlr apache-commons-codec junit %if %{with hsqldb} Requires: hsqldb1 %endif Requires: log4j12 xalan-j2 xerces-j2 jpackage-utils %description A Java/XML binding compiler takes as input a schema description (in most cases an XML schema, but it may be a DTD, a RelaxNG schema, a Java class inspected via reflection, or a database schema). The output is a set of Java classes: * A Java bean class matching the schema description. (If the schema was obtained via Java reflection, the original Java bean class.) * Read a conforming XML document and convert it into the equivalent Java bean. * Vice versa, marshal the Java bean back into the original XML document. %package javadoc Summary: Javadoc for %{name} %description javadoc %{summary}. %package manual Summary: Documents for %{name} %description manual %{summary}. %prep %setup -q find . -name "*.jar" -print -delete %patch0 -p0 %patch1 -p0 %patch2 -p1 DOCBOOKX_DTD=`xmlcatalog %{_datadir}/sgml/docbook/xmlcatalog "-//OASIS//DTD DocBook XML V4.5//EN" 2>/dev/null` sed -i 's|@DOCBOOKX_DTD@|$DOCBOOKX_DTD|' src/documentation/manual/jaxme2.xml %patch3 -p1 %patch4 -b .sav %patch5 -b .sav %patch6 -p1 %patch7 -p1 sed -i 's/\r//' NOTICE sed -i "s|log4j.jar|log4j12-1.2.17.jar|" ant/js.xml sed -i "s|hsqldb.jar|hsqldb1-1.jar|" ant/js.xml ant/pm.xml %if %{without hsqldb} rm -r src/js/org/apache/ws/jaxme/sqls/hsqldb %pom_xpath_remove 'target[@name="JS.generate"]/@depends' ant/js.xml %endif %build export CLASSPATH=$(build-classpath antlr hsqldb1-1 commons-codec junit log4j12-1.2.17 xerces-j2 xalan-j2 xalan-j2-serializer) ant all Docs.all \ -Dbuild.sysclasspath=first \ -Ddocbook.home=%{_datadir}/sgml/docbook \ -Ddocbookxsl.home=%{_datadir}/sgml/docbook/xsl-stylesheets %install %mvn_file ':{*}' %{base_name}/@1 %{base_name}/ws-@1 for jar in jaxme2 jaxme2-rt jaxmeapi jaxmejs jaxmepm jaxmexs; do %mvn_artifact %{_sourcedir}/${jar}-%{version}.pom dist/${jar}-%{version}.jar done %mvn_install -J build/docs/src/documentation/content/apidocs %files -f .mfiles %license LICENSE NOTICE %files javadoc -f .mfiles-javadoc %license LICENSE NOTICE %files manual %license LICENSE NOTICE %doc build/docs/src/documentation/content/manual %changelog * Thu Aug 20 2020 maminjie - 0.5.2-1 - package init