%global obs_vr 2.3.3-1 Name: jaxb Version: 2.3.5 Release: 4%{?dist} Summary: JAXB Reference Implementation # EDL-1.0 license is BSD-3-clause License: BSD URL: https://github.com/eclipse-ee4j/jaxb-ri BuildArch: noarch Source0: %{url}/archive/%{version}-RI/%{name}-%{version}.tar.gz BuildRequires: maven-local BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin) BuildRequires: mvn(org.apache.ant:ant-junit) BuildRequires: mvn(com.sun.activation:jakarta.activation) BuildRequires: mvn(com.sun.istack:istack-commons-runtime) BuildRequires: mvn(com.sun.xml.fastinfoset:FastInfoset) BuildRequires: mvn(jakarta.activation:jakarta.activation-api) BuildRequires: mvn(jakarta.xml.bind:jakarta.xml.bind-api) BuildRequires: mvn(junit:junit) BuildRequires: mvn(org.apache.ant:ant) BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) BuildRequires: mvn(org.apache.maven.plugins:maven-dependency-plugin) BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) BuildRequires: mvn(org.jvnet.staxex:stax-ex) BuildRequires: mvn(xmlunit:xmlunit) BuildRequires: mvn(com.sun.xml.dtd-parser:dtd-parser) BuildRequires: mvn(com.sun.istack:istack-commons-tools) BuildRequires: mvn(xml-resolver:xml-resolver) BuildRequires: mvn(org.apache.maven.plugins:maven-source-plugin) BuildRequires: mvn(org.apache.maven.plugins:maven-assembly-plugin) %description GlassFish JAXB Reference Implementation. %package runtime Summary: JAXB Runtime # Package renamed from glassfish-jaxb with version 2.3.3-1 in F33 Provides: glassfish-jaxb = %{version}-%{release} Obsoletes: glassfish-jaxb < %{obs_vr} Provides: glassfish-jaxb-runtime = %{version}-%{release} Obsoletes: glassfish-jaxb-runtime < %{obs_vr} # -core subpackage was merged into -runtime during F33 Provides: glassfish-jaxb-core = %{version}-%{release} Obsoletes: glassfish-jaxb-core < %{obs_vr} # Obsolete module gone away for good Obsoletes: glassfish-jaxb1-impl < %{obs_vr} # Unable to ship any longer due to missing dep: org.checkerframework:compiler Obsoletes: glassfish-jaxb-jxc < %{obs_vr} # Disable javadocs for now, due to https://github.com/fedora-java/xmvn/issues/58 Obsoletes: glassfish-jaxb-javadoc < %{obs_vr} # No longer shipping parent pom packages Obsoletes: glassfish-jaxb-codemodel-parent < %{obs_vr} Obsoletes: glassfish-jaxb-external-parent < %{obs_vr} Obsoletes: glassfish-jaxb-parent < %{obs_vr} Obsoletes: glassfish-jaxb-runtime-parent < %{obs_vr} Obsoletes: glassfish-jaxb-txw-parent < %{obs_vr} %description runtime JAXB (JSR 222) Reference Implementation %package txw2 Summary: TXW2 Runtime # Package renamed from glassfish-jaxb with version 2.3.3-1 in F33 Provides: glassfish-jaxb-txw2 = %{version}-%{release} Obsoletes: glassfish-jaxb-txw2 < %{obs_vr} %description txw2 TXW is a library that allows you to write XML documents. %package impl Summary: Old JAXB Runtime %description impl Old JAXB Runtime module. Contains sources required for runtime processing. Standalone bundle suitable for use in OSGi runtimes. %package codemodel Summary: Codemodel Core # Package renamed from glassfish-jaxb with version 2.3.3-1 in F33 Provides: glassfish-jaxb-codemodel = %{version}-%{release} Obsoletes: glassfish-jaxb-codemodel < %{obs_vr} %description codemodel The core functionality of the CodeModel java source code generation library. %package codemodel-annotation-compiler Summary: Codemodel Annotation Compiler # Package renamed from glassfish-jaxb with version 2.3.3-1 in F33 Provides: glassfish-jaxb-codemodel-annotation-compiler = %{version}-%{release} Obsoletes: glassfish-jaxb-codemodel-annotation-compiler < %{obs_vr} %description codemodel-annotation-compiler The annotation compiler ant task for the CodeModel java source code generation library. %package bom Summary: JAXB BOM # Package renamed from glassfish-jaxb with version 2.3.3-1 in F33 Provides: glassfish-jaxb-bom = %{version}-%{release} Obsoletes: glassfish-jaxb-bom < %{obs_vr} %description bom JAXB Bill of Materials (BOM) %package bom-ext Summary: JAXB BOM with all dependencies # Package renamed from glassfish-jaxb with version 2.3.3-1 in F33 Provides: glassfish-jaxb-bom-ext = %{version}-%{release} Obsoletes: glassfish-jaxb-bom-ext < %{obs_vr} %description bom-ext JAXB Bill of Materials (BOM) with all dependencies. %package xjc Summary: JAXB XJC # Package renamed from glassfish-jaxb with version 2.3.3-1 in F33 Provides: glassfish-jaxb-xjc = %{version}-%{release} Obsoletes: glassfish-jaxb-xjc < %{obs_vr} %description xjc JAXB Binding Compiler. Contains source code needed for binding customization files into java sources. In other words: the tool to generate java classes for the given xml representation. %package rngom Summary: RELAX NG Object Model/Parser # Package renamed from glassfish-jaxb with version 2.3.3-1 in F33 Provides: glassfish-jaxb-rngom = %{version}-%{release} Obsoletes: glassfish-jaxb-rngom < %{obs_vr} %description rngom This package contains RELAX NG Object Model/Parser. %package txwc2 Summary: TXW2 Compiler # Package renamed from glassfish-jaxb with version 2.3.3-1 in F33 Provides: glassfish-jaxb-txwc2 = %{version}-%{release} Obsoletes: glassfish-jaxb-txwc2 < %{obs_vr} %description txwc2 JAXB schema generator. The tool to generate XML schema based on java classes. %package xsom Summary: XML Schema Object Model # Xsom package was merged upstream into jaxb Provides: xsom = %{version}-%{release} Obsoletes: xsom < 20140514-7 Provides: xsom-javadoc = %{version}-%{release} Obsoletes: xsom-javadoc < 20140514-7 %description xsom XML Schema Object Model (XSOM) is a Java library that allows applications to easily parse XML Schema documents and inspect information in them. It is expected to be useful for applications that need to take XML Schema as an input. %package relaxng-datatype Summary: RelaxNG Datatype # RelaxNG was subsumed into jaxb upstream Provides: relaxngDatatype = 1:%{version}-%{release} Obsoletes: relaxngDatatype < 2011.1-16 Provides: relaxngDatatype-javadoc = 1:%{version}-%{release} Obsoletes: relaxngDatatype-javadoc < 2011.1-16 %description relaxng-datatype RelaxNG Datatype library. %prep %autosetup -p1 -n jaxb-ri-%{version}-RI find -type f '(' -iname '*.jar' -o -iname '*.class' ')' -print -delete pushd jaxb-ri # Remove unnecessary dep on ee4j parent pom (it adds nothing to our downstream builds) %pom_remove_parent boms/bom external xsom codemodel # Plug-ins not useful for RPM builds %pom_remove_plugin :maven-enforcer-plugin external xsom . codemodel %pom_remove_plugin :buildnumber-maven-plugin docs/www external xsom . codemodel # Fix dep on xml resolver %pom_change_dep com.sun.org.apache.xml.internal:resolver xml-resolver:xml-resolver:1.2 xjc bundles/xjc sed -i -e 's/com\.sun\.org\.apache\.xml\.internal\.resolver/org.apache.xml.resolver/' xjc/src/main/java/com/sun/tools/xjc/CatalogUtil.java # Missing dep in Fedora: org.checkerframework:compiler %pom_disable_module jxc # Disable unneeded extra OSGi bundles %pom_disable_module osgi bundles %pom_disable_module ri bundles %pom_disable_module xjc bundles %pom_disable_module jxc bundles %pom_add_plugin :maven-antrun-plugin bundles/runtime ' unzip-jar generate-sources run ' #pom_add_plugin :maven-antrun-plugin bundles/xjc ' # # # unzip-jar # generate-sources # # run # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ' %pom_disable_module docs %pom_disable_module tools/osgi_tests # Compatibility %mvn_alias org.glassfish.jaxb:jaxb-xjc com.sun.xml.bind:jaxb-xjc %mvn_alias org.glassfish.jaxb:jaxb-runtime org.glassfish.jaxb:jaxb-core %mvn_alias org.glassfish.jaxb:xsom com.sun.xsom:xsom %mvn_alias com.sun.xml.bind.external:relaxng-datatype com.github.relaxng:relaxngDatatype relaxngDatatype:relaxngDatatype # Don't install aggregator and parent poms %mvn_package com.sun.xml.bind.mvn: __noinstall popd %build pushd jaxb-ri %mvn_build -s -j -f -- -Dmaven.compiler.source=1.8 -Dmaven.compiler.target=1.8 popd %install pushd jaxb-ri %mvn_install popd %files runtime -f jaxb-ri/.mfiles-jaxb-runtime %license LICENSE.md NOTICE.md %files txw2 -f jaxb-ri/.mfiles-txw2 %license LICENSE.md NOTICE.md %files impl -f jaxb-ri/.mfiles-jaxb-impl %license LICENSE.md NOTICE.md %files codemodel -f jaxb-ri/.mfiles-codemodel %license LICENSE.md NOTICE.md %files codemodel-annotation-compiler -f jaxb-ri/.mfiles-codemodel-annotation-compiler %files bom -f jaxb-ri/.mfiles-jaxb-bom %license LICENSE.md NOTICE.md %files bom-ext -f jaxb-ri/.mfiles-jaxb-bom-ext %files xjc -f jaxb-ri/.mfiles-jaxb-xjc %files rngom -f jaxb-ri/.mfiles-rngom %license LICENSE.md NOTICE.md %files txwc2 -f jaxb-ri/.mfiles-txwc2 %license LICENSE.md NOTICE.md %files xsom -f jaxb-ri/.mfiles-xsom %files relaxng-datatype -f jaxb-ri/.mfiles-relaxng-datatype %changelog * Sat Feb 05 2022 Jiri Vanek - 2.3.5-4 - Rebuilt for java-17-openjdk as system jdk * Thu Jan 20 2022 Fedora Release Engineering - 2.3.5-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Wed Nov 17 2021 Didik Supriadi - 2.3.5-2 - Remove workaround for SUREFIRE-1897 * Tue Oct 26 2021 Didik Supriadi - 2.3.5-1 - Update to version 2.3.5 - Remove jp_minimal - Disable tests * Thu Jul 22 2021 Fedora Release Engineering - 2.3.3-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Fri Feb 5 2021 Mat Booth - 2.3.3-6 - Add obsoletes/provides and compat aliases for old relaxngDatatype package * Tue Jan 26 2021 Fedora Release Engineering - 2.3.3-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Tue Aug 18 2020 Mat Booth - 2.3.3-4 - Restore deps on fi and stax-ex for full build mode * Mon Aug 17 2020 Mat Booth - 2.3.3-3 - Add obsoletes/provides and compat aliases for old xsom package * Tue Aug 11 2020 Mat Booth - 2.3.3-2 - Fastinfoset and Staxex are optional deps, this should be reflected in the OSGi metadata * Tue Aug 04 2020 Mat Booth - 2.3.3-1 - Update to latest upstream release - Disable javadocs for now, due to https://github.com/fedora-java/xmvn/issues/58 - Upstream moved to eclipse-ee4j and implementation license changed to BSD (EDL) - Enable tests, don't unnecessarily ship parent poms - Rename package from glassfish-jaxb