Juan Hernandez 313bef3
Name: glassfish-jaxb
Juan Hernandez 313bef3
Version: 2.2.5
5d97894
Release: 6%{?dist}
Juan Hernandez 313bef3
Summary: JAXB Reference Implementation
Juan Hernandez 313bef3
Juan Hernandez 313bef3
Group: Development/Libraries
Juan Hernandez 313bef3
License: CDDL and GPLv2 with exceptions
Juan Hernandez 313bef3
URL: http://jaxb.java.net
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# svn export https://svn.java.net/svn/jaxb~version2/tags/jaxb-2_2_5/ glassfish-jaxb-2.2.5
Juan Hernandez 313bef3
# find glassfish-jaxb-2.2.5/ -name '*.class' -delete
Juan Hernandez 313bef3
# find glassfish-jaxb-2.2.5/ -name '*.jar' -delete
Juan Hernandez 313bef3
# find glassfish-jaxb-2.2.5/ -name '*.zip' -delete
Juan Hernandez 313bef3
# find glassfish-jaxb-2.2.5/ -name '*.dll' -delete
Juan Hernandez 313bef3
# tar czf glassfish-jaxb-2.2.5.tar.gz glassfish-jaxb-2.2.5
Juan Hernandez 313bef3
Source0: %{name}-%{version}.tar.gz
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# JAXB implementation POM:
Juan Hernandez 313bef3
Source1: http://repo1.maven.org/maven2/com/sun/xml/bind/jaxb-impl/2.2.5/jaxb-impl-2.2.5.pom
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# JAXB XJC POM:
Juan Hernandez 313bef3
Source2: http://repo1.maven.org/maven2/com/sun/xml/bind/jaxb-xjc/2.2.5/jaxb-xjc-2.2.5.pom
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Ant build file used to generate the Javadoc (this is not part of the original
Juan Hernandez 313bef3
# source but written on purpose for the packaging):
Juan Hernandez 313bef3
Source3: build-javadoc.xml
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Use resolver from xml-commons-resolver instead of an internal rebundled one:
Juan Hernandez 313bef3
Patch0: %{name}-dont-use-internal-resolver.patch
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Don't try to generate the 1.0 runtime:
Juan Hernandez 313bef3
Patch1: %{name}-dont-generate-1.0-runtime.patch
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Removing Jing driver because of incompatibility issues:
Juan Hernandez 313bef3
Patch2: %{name}-dont-generate-jing-rnc-driver.patch
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Don't bundle the contents of other jar files in the XJC compiler jar file:
Juan Hernandez 313bef3
Patch3: %{name}-dont-bundle-other-jars.patch
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Remove the class-path entry from the generated manifest files:
Juan Hernandez 313bef3
Patch4: %{name}-remove-classpath-from-manifests.patch
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Patch the POM files to include the dependencies corresponding to the jar
Juan Hernandez 313bef3
# files that we aren't bundling within the jat files of this package:
Juan Hernandez 313bef3
Patch5: %{name}-add-dependencies.patch
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Don't use the prebuilt javadocs:
Juan Hernandez 313bef3
Patch6: %{name}-dont-use-prebuilt-javadocs.patch
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Don't build the examples as they need additional dependencies:
Juan Hernandez 313bef3
Patch7: %{name}-dont-build-examples.patch
Juan Hernandez 313bef3
Juan Hernandez 313bef3
BuildArch: noarch
Juan Hernandez 313bef3
Juan Hernandez 313bef3
BuildRequires: jpackage-utils
Juan Hernandez 313bef3
BuildRequires: java-devel
Juan Hernandez 313bef3
Juan Hernandez 313bef3
BuildRequires: ant
Juan Hernandez 313bef3
BuildRequires: codemodel
Juan Hernandez 313bef3
BuildRequires: istack-commons
Juan Hernandez 313bef3
BuildRequires: relaxngcc
Juan Hernandez 313bef3
BuildRequires: xml-commons-resolver
Juan Hernandez 313bef3
BuildRequires: txw2
Juan Hernandez 313bef3
BuildRequires: relaxngDatatype
Juan Hernandez 313bef3
BuildRequires: glassfish-dtd-parser
Juan Hernandez 313bef3
BuildRequires: glassfish-jaxb-api
Juan Hernandez 313bef3
BuildRequires: glassfish-fastinfoset
Juan Hernandez 313bef3
BuildRequires: jing
Juan Hernandez 313bef3
BuildRequires: stax-ex
Juan Hernandez 313bef3
BuildRequires: isorelax
Juan Hernandez 313bef3
BuildRequires: xsom
Juan Hernandez 4b7818c
BuildRequires: rngom
Juan Hernandez 313bef3
Juan Hernandez 313bef3
Requires: glassfish-dtd-parser
Juan Hernandez 313bef3
Requires: xml-commons-resolver
Juan Hernandez 313bef3
Requires: xsom
Juan Hernandez 4b7818c
Requires: rngom
Juan Hernandez 313bef3
Requires: isorelax
Juan Hernandez 313bef3
Requires: jing
Juan Hernandez 313bef3
Requires: stax-ex
Juan Hernandez 313bef3
Requires: glassfish-fastinfoset
Juan Hernandez 313bef3
Requires: glassfish-jaxb-api
Juan Hernandez 313bef3
Requires: relaxngDatatype
Juan Hernandez 313bef3
Requires: txw2
Juan Hernandez 313bef3
Requires: relaxngcc
Juan Hernandez 313bef3
Requires: istack-commons
Juan Hernandez 313bef3
Requires: codemodel
Juan Hernandez 313bef3
Requires: jpackage-utils
Juan Hernandez 313bef3
Juan Hernandez 313bef3
Juan Hernandez 313bef3
%description
Juan Hernandez 313bef3
GlassFish JAXB Reference Implementation.
Juan Hernandez 313bef3
Juan Hernandez 313bef3
Juan Hernandez 313bef3
%package javadoc
Juan Hernandez 313bef3
Summary: Javadocs for %{name}
Juan Hernandez 313bef3
Group: Documentation
Juan Hernandez 313bef3
Requires: jpackage-utils
Juan Hernandez 313bef3
Juan Hernandez 313bef3
Juan Hernandez 313bef3
%description javadoc
Juan Hernandez 313bef3
This package contains the API documentation for %{name}.
Juan Hernandez 313bef3
Juan Hernandez 313bef3
Juan Hernandez 313bef3
%prep
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Unpack the sources:
Juan Hernandez 313bef3
%setup -q
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Put the POM files in place (we do this before patching because we need to
Juan Hernandez 313bef3
# patch the POMs in order to add the dependencies for the artifacts that we are
Juan Hernandez 313bef3
# not bundling):
Juan Hernandez 313bef3
cp %{SOURCE1} jaxb-impl.pom
Juan Hernandez 313bef3
cp %{SOURCE2} jaxb-xjc.pom
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Apply the patches:
Juan Hernandez 313bef3
%patch0 -p1
Juan Hernandez 313bef3
%patch1 -p1
Juan Hernandez 313bef3
%patch2 -p1
Juan Hernandez 313bef3
%patch3 -p1
Juan Hernandez 313bef3
%patch4 -p1
Juan Hernandez 313bef3
%patch5 -p1
Juan Hernandez 313bef3
%patch6 -p1
Juan Hernandez 313bef3
%patch7 -p1
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Link the libraries where the build script expects them:
Juan Hernandez 313bef3
ln -s $(build-classpath codemodel) tools/lib/rebundle/compiler/codemodel.jar
Juan Hernandez 313bef3
ln -s $(build-classpath glassfish-dtd-parser) tools/lib/rebundle/compiler/dtd-parser.jar
Juan Hernandez 313bef3
ln -s $(build-classpath istack-commons-tools) tools/lib/rebundle/compiler/istack-commons-tools.jar
Juan Hernandez 313bef3
ln -s $(build-classpath relaxngDatatype) tools/lib/rebundle/compiler/relaxngDatatype.jar
Juan Hernandez 313bef3
ln -s $(build-classpath xml-resolver) tools/lib/rebundle/compiler/resolver.jar
Juan Hernandez 313bef3
ln -s $(build-classpath rngom) tools/lib/rebundle/compiler/rngom.jar
Juan Hernandez 313bef3
ln -s $(build-classpath xsom) tools/lib/rebundle/compiler/xsom.jar
Juan Hernandez 313bef3
ln -s $(build-classpath isorelax) tools/lib/rebundle/runtime/isorelax.jar
Juan Hernandez 313bef3
ln -s $(build-classpath msv-msv) tools/lib/rebundle/runtime/msv.jar
Juan Hernandez 313bef3
ln -s $(build-classpath relaxngDatatype) tools/lib/rebundle/runtime/relaxngDatatype.jar
Juan Hernandez 313bef3
ln -s $(build-classpath istack-commons-runtime) tools/lib/rebundle/runtime2/istack-commons-runtime.jar
Juan Hernandez 313bef3
ln -s $(build-classpath txw2) tools/lib/rebundle/runtime2/txw2.jar
Juan Hernandez 313bef3
ln -s $(build-classpath jaxb-api) tools/lib/redist/jaxb-api.jar
Juan Hernandez 313bef3
ln -s $(build-classpath FastInfoset) tools/lib/util/FastInfoset.jar
Juan Hernandez 313bef3
ln -s $(build-classpath args4j) tools/lib/util/args4j.jar
Juan Hernandez 313bef3
ln -s $(build-classpath codemodel-annotation-compiler) tools/lib/util/codemodel-annotation-compiler.jar
Juan Hernandez 313bef3
ln -s $(build-classpath dom4j) tools/lib/util/dom4j.jar
Juan Hernandez 313bef3
ln -s $(build-classpath jing) tools/lib/util/jing.jar
Juan Hernandez 313bef3
ln -s $(build-classpath relaxngcc) tools/lib/util/relaxngcc.jar
Juan Hernandez 313bef3
ln -s $(build-classpath stax-ex) tools/lib/util/stax-ex.jar
Juan Hernandez 313bef3
ln -s $(build-classpath txwc2) tools/lib/util/txwc2.jar
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Put the Javadoc build file in place (no patching needed here, as this is not
Juan Hernandez 313bef3
# part of the original source):
Juan Hernandez 313bef3
cp %{SOURCE3} build-javadoc.xml
Juan Hernandez 313bef3
Juan Hernandez 313bef3
Juan Hernandez 313bef3
%build
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Build the binaries:
Juan Hernandez 313bef3
ant \
Juan Hernandez 313bef3
  -Dbuild.sysclasspath=last \
Juan Hernandez 313bef3
  -Dbuild.number=1 \
Juan Hernandez 313bef3
  dist
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Build the javadoc for the runtime and the compiler:
Juan Hernandez 313bef3
ant \
Juan Hernandez 313bef3
  -Dbuild.sysclasspath=last \
Juan Hernandez 313bef3
  -f build-javadoc.xml
Juan Hernandez 313bef3
Juan Hernandez 313bef3
Juan Hernandez 313bef3
%install
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Jar files:
Juan Hernandez 313bef3
install -d -m 755 %{buildroot}%{_javadir}/%{name}
Juan Hernandez 313bef3
install -m 644 dist/lib/jaxb-impl.jar %{buildroot}%{_javadir}/%{name}/jaxb-impl.jar
Juan Hernandez 313bef3
install -m 644 dist/lib/jaxb-xjc.jar %{buildroot}%{_javadir}/%{name}/jaxb-xjc.jar
Juan Hernandez 313bef3
install -m 644 tools/pretty-printer/build/pretty-printer.jar %{buildroot}%{_javadir}/%{name}/pretty-printer.jar
Juan Hernandez 313bef3
install -m 644 tools/xmllint/build/xmllint.jar %{buildroot}%{_javadir}/%{name}/xmllint.jar
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# POM files:
Juan Hernandez 313bef3
install -d -m 755 %{buildroot}%{_mavenpomdir}
Juan Hernandez 313bef3
install -m 644 jaxb-impl.pom %{buildroot}%{_mavenpomdir}/JPP.%{name}-jaxb-impl.pom
Juan Hernandez 313bef3
install -m 644 jaxb-xjc.pom  %{buildroot}%{_mavenpomdir}/JPP.%{name}-jaxb-xjc.pom
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Javadoc files:
Juan Hernandez 313bef3
install -d -m 755 %{buildroot}%{_javadocdir}/%{name}
Juan Hernandez 313bef3
cp -rp apidocs/* %{buildroot}%{_javadocdir}/%{name}/.
Juan Hernandez 313bef3
Juan Hernandez 313bef3
# Dependencies map:
Juan Hernandez 313bef3
%add_maven_depmap JPP.%{name}-jaxb-impl.pom %{name}/jaxb-impl.jar
Juan Hernandez 313bef3
%add_maven_depmap JPP.%{name}-jaxb-xjc.pom %{name}/jaxb-xjc.jar
Juan Hernandez 313bef3
Juan Hernandez 313bef3
Juan Hernandez 313bef3
%files
Juan Hernandez 313bef3
%{_mavenpomdir}/*
Juan Hernandez 313bef3
%{_mavendepmapfragdir}/*
Juan Hernandez 313bef3
%{_javadir}/*
Juan Hernandez 313bef3
%doc License.txt
Juan Hernandez 313bef3
%doc License.html
Juan Hernandez 313bef3
Juan Hernandez 313bef3
Juan Hernandez 313bef3
%files javadoc
Juan Hernandez 313bef3
%{_javadocdir}/%{name}
Juan Hernandez 313bef3
%doc License.txt
Juan Hernandez 313bef3
%doc License.html
Juan Hernandez 313bef3
Juan Hernandez 313bef3
Juan Hernandez 313bef3
%changelog
5d97894
* Fri Mar 28 2014 Michael Simacek <msimacek@redhat.com> - 2.2.5-6
5d97894
- Use Requires: java-headless rebuild (#1067528)
5d97894
638e5b3
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.5-5
638e5b3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
638e5b3
edc0b78
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.5-4
edc0b78
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
edc0b78
359d43c
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.5-3
359d43c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
359d43c
Juan Hernandez 4b7818c
* Tue Mar 13 2012 Juan Hernandez <juan.hernandez@redhat.com> 2.2.5-2
Juan Hernandez 4b7818c
- Add missing xsom and rngom dependencies to the POM files
Juan Hernandez 4b7818c
Juan Hernandez 313bef3
* Sat Mar 10 2012 Juan Hernandez <juan.hernandez@redhat.com> 2.2.5-1
Juan Hernandez 313bef3
- Updated to upstream version 2.2.5
Juan Hernandez 313bef3
- Removed classpath from manifest files
Juan Hernandez 313bef3
Juan Hernandez 313bef3
* Wed Mar 7 2012 Juan Hernandez <juan.hernandez@redhat.com> 2.2.4u1-4
Juan Hernandez 313bef3
- Updated to reflect the change from glassfish-fi to glassfish-fastinfoset
Juan Hernandez 313bef3
Juan Hernandez 313bef3
* Wed Feb 22 2012 Juan Hernandez <juan.hernandez@redhat.com> 2.2.4u1-3
Juan Hernandez 313bef3
- Updated to reflect the changes of the jar names in txw2
Juan Hernandez 313bef3
Juan Hernandez 313bef3
* Wed Feb 22 2012 Juan Hernandez <juan.hernandez@redhat.com> 2.2.4u1-2
Juan Hernandez 313bef3
- Cleanup of the spec file
Juan Hernandez 313bef3
Juan Hernandez 313bef3
* Sat Jan 21 2012 Marek Goldmann <mgoldman@redhat.com> 2.2.4u1-1
Juan Hernandez 313bef3
- Initial packaging
Juan Hernandez 313bef3