Update to upstream version 1.10.15

Bootstrap build.

Related: RHEL-68746
Related: RHEL-68747
Related: RHEL-68748
Related: RHEL-68749
Related: RHEL-71672
This commit is contained in:
Mikolaj Izdebski 2024-12-18 11:56:51 +01:00
parent 208bcb6319
commit e3bc80cff0
8 changed files with 130 additions and 68 deletions

1
.gitignore vendored
View File

@ -28,3 +28,4 @@
/apache-ant-1.10.12-src.tar.bz2
/apache-ant-1.10.13-src.tar.bz2
/apache-ant-1.10.14-src.tar.bz2
/apache-ant-1.10.15-src.tar.bz2

View File

@ -1,5 +1,5 @@
--- build.xml~ 2021-05-17 12:32:48.406394876 +0200
+++ build.xml 2021-05-17 12:32:39.990389601 +0200
--- ant/build.xml~ 2021-05-17 12:32:48.406394876 +0200
+++ ant/build.xml 2021-05-17 12:32:39.990389601 +0200
@@ -819,7 +817,6 @@
</metainf>
<manifest>

121
ant.spec
View File

@ -28,7 +28,7 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
%bcond_with bootstrap
%bcond_without bootstrap
%if %{without bootstrap}
%bcond_with ant_minimal
@ -39,8 +39,8 @@
%global ant_home %{_datadir}/ant
Name: ant
Version: 1.10.14
Release: 11%{?dist}
Version: 1.10.15
Release: 1%{?dist}
Summary: Java build tool
Summary(it): Tool per la compilazione di programmi java
Summary(fr): Outil de compilation pour java
@ -54,16 +54,15 @@ Source2: apache-ant-1.8.ant.conf
# manpage
Source3: ant.asciidoc
Patch0: %{name}-build.xml.patch
Patch: %{name}-build.xml.patch
BuildRequires: asciidoc
BuildRequires: xmlto
BuildRequires: rubygem-asciidoctor
%if %{with bootstrap}
BuildRequires: javapackages-bootstrap
%else
BuildRequires: javapackages-local
BuildRequires: ant >= 1.10.2
BuildRequires: javapackages-local >= 6.4.0
BuildRequires: ant
BuildRequires: ant-junit
%endif
@ -89,14 +88,9 @@ BuildRequires: mvn(org.hamcrest:hamcrest-library)
BuildRequires: junit5
%endif
# Theoretically Ant might be usable with just JRE, but typical Ant
# workflow requires full JDK, so we recommend it here.
Recommends: java-devel >= 1:1.8.0
Requires: %{name}-lib = %{version}-%{release}
# Require full javapackages-tools since the ant script uses
# /usr/share/java-utils/java-functions
Requires: javapackages-tools
Requires: %{name}-jdk-binding
Suggests: %{name}-openjdk21 = %{version}-%{release}
%description
Apache Ant is a Java library and command-line tool whose mission is to
@ -257,7 +251,7 @@ Optional imageio tasks for %{name}.
%package jakartamail
Summary: Optional jakartamail tasks for %{name}
Requires: %{name} = %{version}-%{release}
# TODO Remove after Fedora 41
# TODO Remove in Fedora 42
Obsoletes: ant-javamail < 1.13.1
%description jakartamail
@ -312,6 +306,10 @@ Optional xz tasks for %{name}.
%package manual
Summary: Manual for %{name}
# ant-manual contains file tutorial-tasks-filesets-properties.zip
# which in turn contains src/Find.java and src/FindTest.java both
# licensed under ASL 1.1. See rhbz#1055629
License: Apache-2.0 AND Apache-1.1
%description manual
Documentation for %{name}.
@ -336,8 +334,7 @@ Javadoc pour %{name}.
# -----------------------------------------------------------------------------
%prep
%setup -q -n apache-ant-%{version}
%patch 0 -p0
%autosetup -p1 -n apache-ant-%{version}
# clean jar files
find . -name "*.jar" | xargs -t rm
@ -383,9 +380,9 @@ sed -e 's:/etc/ant.conf:%{_sysconfdir}/ant.conf:g' \
sed -i 's/jaxp_parser_impl//;s/xml-commons-apis//' src/script/ant
# Fix file-not-utf8 rpmlint warning
iconv KEYS -f iso-8859-1 -t utf-8 -o KEYS.utf8
iconv KEYS -f iso-8859-1 -t utf-8 >KEYS.utf8
mv KEYS.utf8 KEYS
iconv LICENSE -f iso-8859-1 -t utf-8 -o LICENSE.utf8
iconv LICENSE -f iso-8859-1 -t utf-8 >LICENSE.utf8
mv LICENSE.utf8 LICENSE
# We want a hard dep on antlr
@ -404,9 +401,7 @@ mv LICENSE.utf8 LICENSE
%endif
# typeset the manpage
mkdir man
asciidoc -b docbook -d manpage -o man/%{name}.xml %{SOURCE3}
xmlto man man/%{name}.xml -o man
asciidoctor -b manpage -D man %{SOURCE3}
# remove empty jai and netrexx jars. Due to missing dependencies they contain only manifests.
rm build/lib/ant-jai.jar build/lib/ant-netrexx.jar
@ -417,7 +412,7 @@ rm build/lib/ant-javamail.jar
%install
# ANT_HOME and subdirs
mkdir -p $RPM_BUILD_ROOT%{ant_home}/{lib,etc,bin}
mkdir -p %{buildroot}%{ant_home}/{lib,etc,bin}
%mvn_alias :ant org.apache.ant:ant-nodeps apache:ant ant:ant
%mvn_alias :ant-launcher ant:ant-launcher
@ -441,7 +436,7 @@ for jar in build/lib/*.jar; do
jarname=$(basename $jar .jar)
# jar aliases
ln -sf ../../java/%{name}/${jarname}.jar $RPM_BUILD_ROOT%{ant_home}/lib/${jarname}.jar
ln -sf ../../java/%{name}/${jarname}.jar %{buildroot}%{ant_home}/lib/${jarname}.jar
pom=src/etc/poms/${jarname}/pom.xml
@ -474,47 +469,55 @@ rm src/etc/jdepend-frames.xsl
rm src/etc/jdepend.xsl
rm src/etc/maudit-frames.xsl
%endif
cp -p src/etc/*.xsl $RPM_BUILD_ROOT%{ant_home}/etc
cp -p src/etc/*.xsl %{buildroot}%{ant_home}/etc
# install everything else
mkdir -p $RPM_BUILD_ROOT%{_bindir}
cp -p src/script/ant $RPM_BUILD_ROOT%{_bindir}/
ln -sf %{_bindir}/ant $RPM_BUILD_ROOT%{ant_home}/bin/
cp -p src/script/antRun $RPM_BUILD_ROOT%{ant_home}/bin/
mkdir -p %{buildroot}%{_bindir}
cp -p src/script/ant %{buildroot}%{_bindir}/
ln -sf %{_bindir}/ant %{buildroot}%{ant_home}/bin/
cp -p src/script/antRun %{buildroot}%{ant_home}/bin/
# default ant.conf
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}
cp -p %{name}.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
mkdir -p %{buildroot}%{_sysconfdir}
cp -p %{name}.conf %{buildroot}%{_sysconfdir}/%{name}.conf
# OPT_JAR_LIST fragments
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d
echo "junit hamcrest/core ant/ant-junit" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/junit
echo "junit hamcrest/core ant/ant-junit4" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/junit4
mkdir -p %{buildroot}%{_sysconfdir}/%{name}.d
echo "junit hamcrest/core ant/ant-junit" > %{buildroot}%{_sysconfdir}/%{name}.d/junit
echo "junit hamcrest/core ant/ant-junit4" > %{buildroot}%{_sysconfdir}/%{name}.d/junit4
# JDK bindings
install -d -m 755 %{buildroot}%{_javaconfdir}/
ln -sf %{_jpbindingdir}/ant.conf %{buildroot}%{_javaconfdir}/ant.conf
echo 'JAVA_HOME=%{_jvmdir}/jre-21-openjdk' > %{buildroot}%{_javaconfdir}/ant-openjdk21.conf
%jp_binding --verbose --variant openjdk21 --ghost ant.conf --target %{_javaconfdir}/ant-openjdk21.conf --provides %{name}-jdk-binding --requires java-21-openjdk-headless --recommends java-21-openjdk-devel
touch %{buildroot}%{_javaconfdir}/ant-unbound.conf
%jp_binding --verbose --variant unbound --ghost ant.conf --target %{_javaconfdir}/ant-unbound.conf --provides %{name}-jdk-binding
%if %{without ant_minimal}
echo "ant/ant-jmf" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/jmf
echo "ant/ant-swing" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/swing
echo "antlr ant/ant-antlr" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/antlr
echo "bsf commons-logging ant/ant-apache-bsf" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/apache-bsf
echo "xml-commons-resolver ant/ant-apache-resolver" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/apache-resolver
echo "apache-commons-logging ant/ant-commons-logging" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/commons-logging
echo "apache-commons-net ant/ant-commons-net" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/commons-net
echo "bcel commons-lang3 ant/ant-apache-bcel" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/apache-bcel
echo "oro ant/ant-apache-oro" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/apache-oro
echo "regexp ant/ant-apache-regexp" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/apache-regexp
echo "xalan-j2 xalan-j2-serializer ant/ant-apache-xalan2" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/apache-xalan2
echo "ant/ant-imageio" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/imageio
echo "jakartamail jaf ant/ant-jakartamail" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/jakartamail
echo "jdepend ant/ant-jdepend" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/jdepend
echo "jsch ant/ant-jsch" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/jsch
echo "junit5 hamcrest/core junit opentest4j ant/ant-junitlauncher" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/junitlauncher
echo "testutil ant/ant-testutil" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/testutil
echo "xz-java ant/ant-xz" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/xz
echo "ant/ant-jmf" > %{buildroot}%{_sysconfdir}/%{name}.d/jmf
echo "ant/ant-swing" > %{buildroot}%{_sysconfdir}/%{name}.d/swing
echo "antlr ant/ant-antlr" > %{buildroot}%{_sysconfdir}/%{name}.d/antlr
echo "bsf commons-logging ant/ant-apache-bsf" > %{buildroot}%{_sysconfdir}/%{name}.d/apache-bsf
echo "xml-commons-resolver ant/ant-apache-resolver" > %{buildroot}%{_sysconfdir}/%{name}.d/apache-resolver
echo "apache-commons-logging ant/ant-commons-logging" > %{buildroot}%{_sysconfdir}/%{name}.d/commons-logging
echo "apache-commons-net ant/ant-commons-net" > %{buildroot}%{_sysconfdir}/%{name}.d/commons-net
echo "bcel commons-lang3 ant/ant-apache-bcel" > %{buildroot}%{_sysconfdir}/%{name}.d/apache-bcel
echo "oro ant/ant-apache-oro" > %{buildroot}%{_sysconfdir}/%{name}.d/apache-oro
echo "regexp ant/ant-apache-regexp" > %{buildroot}%{_sysconfdir}/%{name}.d/apache-regexp
echo "xalan-j2 xalan-j2-serializer ant/ant-apache-xalan2" > %{buildroot}%{_sysconfdir}/%{name}.d/apache-xalan2
echo "ant/ant-imageio" > %{buildroot}%{_sysconfdir}/%{name}.d/imageio
echo "jakartamail jaf ant/ant-jakartamail" > %{buildroot}%{_sysconfdir}/%{name}.d/jakartamail
echo "jdepend ant/ant-jdepend" > %{buildroot}%{_sysconfdir}/%{name}.d/jdepend
echo "jsch ant/ant-jsch" > %{buildroot}%{_sysconfdir}/%{name}.d/jsch
echo "junit5 hamcrest/core junit opentest4j ant/ant-junitlauncher" > %{buildroot}%{_sysconfdir}/%{name}.d/junitlauncher
echo "testutil ant/ant-testutil" > %{buildroot}%{_sysconfdir}/%{name}.d/testutil
echo "xz-java ant/ant-xz" > %{buildroot}%{_sysconfdir}/%{name}.d/xz
# javadoc
mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}
cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
mkdir -p %{buildroot}%{_javadocdir}/%{name}
cp -pr build/javadocs/* %{buildroot}%{_javadocdir}/%{name}
# fix link between manual and javadoc
(cd manual; ln -sf %{_javadocdir}/%{name} api)
@ -527,12 +530,13 @@ install -p -m 644 man/%{name}.1 %{buildroot}%{_mandir}/man1/%{name}.1
%if %{without ant_minimal}
%check
LC_ALL=C.UTF-8 %{ant} -Doffline=true test
%{ant} -Doffline=true test
%endif
%files
%doc KEYS README WHATSNEW
%license LICENSE NOTICE
%config %{_javaconfdir}/%{name}*.conf
%config(noreplace) %{_sysconfdir}/%{name}.conf
%attr(0755,root,root) %{_bindir}/ant
%dir %{ant_home}/bin
@ -658,6 +662,9 @@ LC_ALL=C.UTF-8 %{ant} -Doffline=true test
# -----------------------------------------------------------------------------
%changelog
* Wed Dec 18 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.10.15-1
- Update to upstream version 1.10.15
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1.10.14-11
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
@ -1005,7 +1012,7 @@ LC_ALL=C.UTF-8 %{ant} -Doffline=true test
* Wed Feb 29 2012 Alexander Kurtakov <akurtako@redhat.com> 0:1.8.3-1
- Update to upstream 1.8.3 release.
- Drop old stuff.
- Drop old stuff.
* Tue Feb 07 2012 Tomas Radej <tradej@redhat.com> - 0:1.8.2-9
- Added patch

View File

@ -17,4 +17,8 @@ else
# ANT_HOME for rpm layout
ANT_HOME=/usr/share/ant
if [ -z "$JAVA_HOME" ] ; then
. /etc/java/ant.conf
fi
fi

View File

@ -4,5 +4,7 @@ product_versions:
decision_contexts:
- osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/smoke.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/matrix/jdk21/full.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/matrix/jdk21/headless.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/matrix/unbound/jlink.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/javapackages.functional}

55
plans/matrix.fmf Normal file
View File

@ -0,0 +1,55 @@
discover:
how: fmf
url: https://src.fedoraproject.org/tests/ant
execute:
how: tmt
/jdk21:
environment:
OPENJDK_VERSION: 21
prepare:
- how: install
exclude:
- ant-unbound
/full:
summary: Ant matrix tests - OpenJDK 21 full
discover+:
filter: tag:jdk21 & tier:0,1
/headless:
summary: Ant matrix tests - OpenJDK 21 headless
discover+:
filter: tag:jre21 & tier:0,1
environment+:
OPENJDK_HEADLESS: "true"
prepare+:
- how: shell
script: |
dnf -y remove java-*-openjdk
/unbound:
prepare:
- how: install
exclude:
- ant-openjdk21
# These subpackages pull in packaged Java through their dependencies
- ant-antlr
- ant-apache-regexp
- ant-apache-resolver
- ant-apache-xalan2
- ant-junit5
/jlink:
summary: Ant matrix tests - unbound jlink-based Java
discover+:
filter: tag:unbound & tier:0,1
prepare+:
- how: shell
script: |
test -d /opt/java && test -x /usr/local/bin/java && exit 0
dnf -y install java-21-openjdk-jmods
jlink --add-modules java.base,java.xml --output /opt/java
ln -s /opt/java/bin/java /usr/local/bin/java
dnf -y remove java-21-openjdk-jmods

View File

@ -1,7 +0,0 @@
summary: Basic smoke tests
discover:
how: fmf
url: https://src.fedoraproject.org/tests/ant
filter: tier:0,1
execute:
how: tmt

View File

@ -1 +1 @@
SHA512 (apache-ant-1.10.14-src.tar.bz2) = 9f07ae21054acc1baa1430501f6a90f429d90425324ad8a157545728d50c163f25787ff353f06d4d0a0615a0c8299fea4257a6de68cab713fa480e2d2acc927d
SHA512 (apache-ant-1.10.15-src.tar.bz2) = fd9477ce9ee0f4dcf000ab1583d1b6b85bc65be45a1a0d7366420029be6983e47fe44c3293263c54cde957b13a6bb2a29ea1b059a30f745ccc6219480feefac2