import sources

This commit is contained in:
Adam Samalik 2023-05-16 10:08:41 +02:00
parent 5603a29473
commit 2001c2e615
6 changed files with 356 additions and 458 deletions

1
.gitignore vendored
View File

@ -1 +1,2 @@
SOURCES/apache-ant-1.9.4-src.tar.bz2
/apache-ant-1.10.7-src.tar.bz2

View File

@ -1,235 +0,0 @@
From 89a75b024e45f687b1152fbb89ea47f7cbad75ce Mon Sep 17 00:00:00 2001
From: Michael Simacek <msimacek@redhat.com>
Date: Tue, 26 Jun 2018 15:17:33 +0200
Subject: [PATCH] Fix arbitrary file write vulnerability
---
WHATSNEW | 18 +++++++
manual/Tasks/unzip.html | 12 ++++-
.../org/apache/tools/ant/taskdefs/Expand.java | 37 ++++++++++++--
src/tests/antunit/taskdefs/unzip-test.xml | 46 ++++++++++++++++++
.../taskdefs/zip/direscape-absolute.zip | Bin 0 -> 332 bytes
src/tests/antunit/taskdefs/zip/direscape.zip | Bin 0 -> 332 bytes
6 files changed, 109 insertions(+), 4 deletions(-)
create mode 100644 src/tests/antunit/taskdefs/zip/direscape-absolute.zip
create mode 100644 src/tests/antunit/taskdefs/zip/direscape.zip
diff --git a/WHATSNEW b/WHATSNEW
index 1e9b3398b..1ff99fc98 100644
--- a/WHATSNEW
+++ b/WHATSNEW
@@ -1,3 +1,21 @@
+Backported changes
+==================
+
+Changes that could break older environments:
+-------------------------------------------
+
+ * <unzip>, <unjar> and <untar> will no longer extract entries whose
+ names would make the created files be placed outside of the
+ destination directory anymore by default. A new attribute
+ allowFilesToEscapeDest can be used to override the behavior.
+ Another special case is when stripAbsolutePathSpec is false (which
+ no longer is the default) and the entry's name starts with a
+ (back)slash and allowFilesToEscapeDest hasn't been specified
+ explicitly, in this case the file may be created outside of the
+ dest directory as well.
+ In addition stripAbsolutePathSpec is now true by default.
+ Based on a recommendation by the Snyk Security Research Team.
+
Changes from Ant 1.9.3 TO Ant 1.9.4
===================================
diff --git a/manual/Tasks/unzip.html b/manual/Tasks/unzip.html
index 02df7acf9..a5fc40fd3 100644
--- a/manual/Tasks/unzip.html
+++ b/manual/Tasks/unzip.html
@@ -125,7 +125,8 @@ archive.</p>
Note that this changes the entry's name before applying
include/exclude patterns and before using the nested mappers (if
any). <em>since Ant 1.8.0</em></td>
- <td valign="top" align="center">No, defaults to false</td>
+ <td valign="top" align="center">No, defaults to true since 1.9.12
+ (used to defaukt to false prior to that)</td>
</tr>
<tr>
<td valign="top">scanForUnicodeExtraFields</td>
@@ -137,6 +138,15 @@ archive.</p>
zip task page</a></td>
<td align="center" valign="top">No, defaults to true</td>
</tr>
+ <tr>
+ <td valign="top">allowFilesToEscapeDest</td>
+ <td valign="top">Whether to allow the extracted file or directory
+ to be outside of the dest directory.
+ <em>since Ant 1.9.12</em></td>
+ <td valign="top" align="center">No, defaults to false unless
+ stripAbsolutePathSpec is true and the entry's name starts with a leading
+ path spec.</td>
+ </tr>
</table>
<h3>Examples</h3>
<pre>
diff --git a/src/main/org/apache/tools/ant/taskdefs/Expand.java b/src/main/org/apache/tools/ant/taskdefs/Expand.java
index 8722e2402..ac5287cb8 100644
--- a/src/main/org/apache/tools/ant/taskdefs/Expand.java
+++ b/src/main/org/apache/tools/ant/taskdefs/Expand.java
@@ -67,8 +67,9 @@ public class Expand extends Task {
private Union resources = new Union();
private boolean resourcesSpecified = false;
private boolean failOnEmptyArchive = false;
- private boolean stripAbsolutePathSpec = false;
+ private boolean stripAbsolutePathSpec = true;
private boolean scanForUnicodeExtraFields = true;
+ private Boolean allowFilesToEscapeDest = null;
public static final String NATIVE_ENCODING = "native-encoding";
@@ -240,14 +241,17 @@ public class Expand extends Task {
boolean isDirectory, FileNameMapper mapper)
throws IOException {
- if (stripAbsolutePathSpec && entryName.length() > 0
+ final boolean entryNameStartsWithPathSpec = entryName.length() > 0
&& (entryName.charAt(0) == File.separatorChar
|| entryName.charAt(0) == '/'
- || entryName.charAt(0) == '\\')) {
+ || entryName.charAt(0) == '\\');
+ if (stripAbsolutePathSpec && entryNameStartsWithPathSpec) {
log("stripped absolute path spec from " + entryName,
Project.MSG_VERBOSE);
entryName = entryName.substring(1);
}
+ boolean allowedOutsideOfDest = Boolean.TRUE == getAllowFilesToEscapeDest()
+ || null == getAllowFilesToEscapeDest() && !stripAbsolutePathSpec && entryNameStartsWithPathSpec;
if (patternsets != null && patternsets.size() > 0) {
String name = entryName.replace('/', File.separatorChar)
@@ -313,6 +317,12 @@ public class Expand extends Task {
mappedNames = new String[] {entryName};
}
File f = fileUtils.resolveFile(dir, mappedNames[0]);
+ if (!allowedOutsideOfDest && !fileUtils.isLeadingPath(dir, f)) {
+ log("skipping " + entryName + " as its target " + f + " is outside of "
+ + dir + ".", Project.MSG_VERBOSE);
+ return;
+ }
+
try {
if (!overwrite && f.exists()
&& f.lastModified() >= entryDate.getTime()) {
@@ -508,4 +518,25 @@ public class Expand extends Task {
return scanForUnicodeExtraFields;
}
+ /**
+ * Whether to allow the extracted file or directory to be outside of the dest directory.
+ *
+ * @param b the flag
+ * @since Ant 1.9.12
+ */
+ public void setAllowFilesToEscapeDest(boolean b) {
+ allowFilesToEscapeDest = b;
+ }
+
+ /**
+ * Whether to allow the extracted file or directory to be outside of the dest directory.
+ *
+ * @return {@code null} if the flag hasn't been set explicitly,
+ * otherwise the value set by the user.
+ * @since Ant 1.9.12
+ */
+ public Boolean getAllowFilesToEscapeDest() {
+ return allowFilesToEscapeDest;
+ }
+
}
diff --git a/src/tests/antunit/taskdefs/unzip-test.xml b/src/tests/antunit/taskdefs/unzip-test.xml
index b2c2105dd..bdf5f61e1 100644
--- a/src/tests/antunit/taskdefs/unzip-test.xml
+++ b/src/tests/antunit/taskdefs/unzip-test.xml
@@ -24,6 +24,10 @@
<mkdir dir="${output}" />
</target>
+ <target name="tearDown" depends="antunit-base.tearDown">
+ <delete dir="/tmp/testdir"/>
+ </target>
+
<target name="testFailureOnBrokenCentralDirectoryStructure">
<au:expectfailure
expectedmessage="central directory is empty, can't expand corrupt archive.">
@@ -67,4 +71,46 @@
<!-- failed on Windows and other OSes with implicit file locking -->
<au:assertFileDoesntExist file="${input}/test.zip"/>
</target>
+
+ <target name="testEntriesDontEscapeDestByDefault">
+ <mkdir dir="${input}/"/>
+ <mkdir dir="${output}/"/>
+ <unzip src="zip/direscape.zip" dest="${output}"/>
+ <au:assertFileDoesntExist file="${input}/a"/>
+ </target>
+
+ <target name="testEntriesCanEscapeDestIfRequested">
+ <mkdir dir="${input}/"/>
+ <mkdir dir="${output}/"/>
+ <unzip src="zip/direscape.zip" dest="${output}" allowFilesToEscapeDest="true"/>
+ <au:assertFileExists file="${input}/a"/>
+ </target>
+
+ <target name="-can-write-to-tmp?">
+ <mkdir dir="${input}"/>
+ <echo file="${input}/A.java"><![CDATA[
+public class A {
+ public static void main(String[] args) {
+ new java.io.File("/tmp/testdir/").mkdirs();
+ }
+}
+]]></echo>
+ <mkdir dir="${output}"/>
+ <javac srcdir="${input}" destdir="${output}"/>
+ <java classname="A" classpath="${output}"/>
+ <available property="can-write-to-tmp!" file="/tmp/testdir/"/>
+ </target>
+
+ <target name="testEntriesCanEscapeDestViaAbsolutePathIfPermitted"
+ depends="-can-write-to-tmp?" if="can-write-to-tmp!">
+ <unzip src="zip/direscape-absolute.zip" dest="${output}"
+ stripAbsolutePathSpec="false"/>
+ <au:assertFileExists file="/tmp/testdir/a"/>
+ </target>
+
+ <target name="testEntriesDontEscapeDestViaAbsolutePathByDefault"
+ depends="-can-write-to-tmp?" if="can-write-to-tmp!">
+ <unzip src="zip/direscape-absolute.zip" dest="${output}"/>
+ <au:assertFileDoesntExist file="/tmp/testdir/a"/>
+ </target>
</project>
diff --git a/src/tests/antunit/taskdefs/zip/direscape-absolute.zip b/src/tests/antunit/taskdefs/zip/direscape-absolute.zip
new file mode 100644
index 000000000..0bae4aaf1
--- /dev/null
+++ b/src/tests/antunit/taskdefs/zip/direscape-absolute.zip
@@ -0,0 +1,5 @@
+PK
+•L /tmp/testdir/UT 7lÛZnÛZux èèPK
+•L/tmp/testdir/aUT 7lÛZJlÛZux èèPK
+•L íA/tmp/testdir/UT7lÛZux èèPK
+•L¤<>G/tmp/testdir/aUT7lÛZux èèPK§<00>
\ No newline at end of file
diff --git a/src/tests/antunit/taskdefs/zip/direscape.zip b/src/tests/antunit/taskdefs/zip/direscape.zip
new file mode 100644
index 000000000..63cefd2d8
--- /dev/null
+++ b/src/tests/antunit/taskdefs/zip/direscape.zip
@@ -0,0 +1,5 @@
+PK
+•L ../testinput/UT 7lÛZnÛZux èèPK
+•L../testinput/aUT 7lÛZJlÛZux èèPK
+•L íA../testinput/UT7lÛZux èèPK
+•L¤<>G../testinput/aUT7lÛZux èèPK§<00>
\ No newline at end of file
--
2.17.1

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
--- apache-ant-1.10.7/build.xml~ 2019-10-31 14:10:07.739864466 +0100
+++ apache-ant-1.10.7/build.xml 2019-10-31 14:10:12.018897830 +0100
@@ -145,8 +145,6 @@
-->
<pathelement location="${src.junit}"/>
@ -9,7 +9,7 @@
</path>
<!--
@@ -819,7 +817,6 @@
@@ -801,7 +799,6 @@
</metainf>
<manifest>
<attribute name="Main-Class" value="org.apache.tools.ant.Main"/>
@ -17,29 +17,29 @@
</manifest>
</jar>
@@ -1562,7 +1559,25 @@
verbose="${javadoc.verbose}"
additionalparam="${javadoc.doclint.none}">
@@ -1543,7 +1540,25 @@
maxmemory="1000M"
verbose="${javadoc.verbose}">
- <packageset dir="${java.dir}"/>
+ <fileset dir="${java.dir}">
+ <include name="**/*.java"/>
+ <exclude name="org/apache/tools/ant/taskdefs/email/MimeMailer.java"/>
+ <exclude name="org/apache/tools/ant/taskdefs/optional/NetRexxC.java"/>
+ <exclude name="org/apache/tools/ant/taskdefs/optional/image/Image.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Arc.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/BasicShape.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Draw.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/DrawOperation.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Ellipse.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/ImageOperation.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Rectangle.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Rotate.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Scale.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Text.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/TransformOperation.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/ColorMapper.java"/>
+ <exclude name="org/apache/tools/ant/taskdefs/optional/image/ImageIOTask.java"/>
+ <include name="**/*.java"/>
+ <exclude name="org/apache/tools/ant/taskdefs/email/MimeMailer.java"/>
+ <exclude name="org/apache/tools/ant/taskdefs/optional/NetRexxC.java"/>
+ <exclude name="org/apache/tools/ant/taskdefs/optional/image/Image.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Arc.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/BasicShape.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Draw.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/DrawOperation.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Ellipse.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/ImageOperation.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Rectangle.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Rotate.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Scale.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/Text.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/TransformOperation.java"/>
+ <exclude name="org/apache/tools/ant/types/optional/image/ColorMapper.java"/>
+ <exclude name="org/apache/tools/ant/taskdefs/optional/image/ImageIOTask.java"/>
+ </fileset>
<!-- hide some meta information for javadoc -->

517
ant.spec
View File

@ -28,54 +28,76 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
%bcond_without tests
%bcond_without javadoc
%global ant_home %{_datadir}/ant
%global major_version 1.8
Name: ant
Version: 1.9.4
Version: 1.10.7
Release: 2%{?dist}
Epoch: 0
Summary: Build tool for java
Summary: Java build tool
Summary(it): Tool per la compilazione di programmi java
Summary(fr): Outil de compilation pour java
License: ASL 2.0
URL: http://ant.apache.org/
Source0: http://archive.apache.org/dist/ant/source/apache-ant-%{version}-src.tar.bz2
Source2: apache-ant-%{major_version}.ant.conf
URL: https://ant.apache.org/
Source0: https://www.apache.org/dist/ant/source/apache-ant-%{version}-src.tar.bz2
Source2: apache-ant-1.8.ant.conf
# manpage
Source3: ant.asciidoc
Patch1: 0001-Fix-arbitrary-file-write-vulnerability.patch
Patch0: %{name}-build.xml.patch
# Fix some places where copies of classes are included in the wrong jarfiles
Patch4: apache-ant-class-path-in-manifest.patch
BuildRequires: jpackage-utils >= 0:1.7.5
BuildRequires: java-devel >= 0:1.5.0
BuildRequires: ant
BuildRequires: ant-apache-xalan2
BuildRequires: javapackages-local
BuildRequires: java-devel >= 1:1.8.0
BuildRequires: ant >= 1.10.2
BuildRequires: ant-junit
BuildRequires: junit
BuildRequires: xalan-j2
BuildRequires: xerces-j2
BuildRequires: xml-commons-apis
Requires: jpackage-utils >= 0:1.7.5
Requires: java-devel >= 0:1.5.0
Requires: perl
Requires: python
Requires: xerces-j2
Requires: xml-commons-apis
BuildRequires: asciidoc
BuildRequires: xmlto
Obsoletes: %{name}-scripts < %{epoch}:%{version}-%{release}
Provides: %{name}-scripts = %{epoch}:%{version}-%{release}
BuildRequires: mvn(antlr:antlr)
BuildRequires: mvn(bcel:bcel)
BuildRequires: mvn(bsf:bsf)
BuildRequires: mvn(com.jcraft:jsch)
BuildRequires: mvn(commons-logging:commons-logging-api)
BuildRequires: mvn(commons-net:commons-net)
BuildRequires: mvn(javax.mail:mail)
BuildRequires: mvn(jdepend:jdepend)
BuildRequires: mvn(junit:junit)
BuildRequires: mvn(log4j:log4j:1.2.13)
BuildRequires: mvn(org.tukaani:xz)
BuildRequires: mvn(oro:oro)
BuildRequires: mvn(regexp:regexp)
BuildRequires: mvn(xalan:xalan)
BuildRequires: mvn(xml-resolver:xml-resolver)
BuildRequires: mvn(org.hamcrest:hamcrest-core)
BuildRequires: mvn(org.hamcrest:hamcrest-library)
BuildRequires: junit5
# Theoretically Ant might be usable with just JRE, but typical Ant
# workflow requires full JDK, so we recommend it here.
%if 0%{?fedora} || 0%{?rhel} > 7
Recommends: java-devel >= 1:1.8.0
%else
Requires: java-devel >= 1:1.8.0
%endif
Requires: %{name}-lib = %{version}-%{release}
# Require full javapackages-tools since the ant script uses
# /usr/share/java-utils/java-functions
Requires: javapackages-tools
BuildArch: noarch
%description
Ant is a platform-independent build tool for java. It's used by apache
jakarta and xml projects.
Apache Ant is a Java library and command-line tool whose mission is to
drive processes described in build files as targets and extension
points dependent upon each other. The main known usage of Ant is the
build of Java applications. Ant supplies a number of built-in tasks
allowing to compile, assemble, test and run Java applications. Ant
can also be used effectively to build non Java applications, for
instance C or C++ applications. More generally, Ant can be used to
pilot any type of process which can be described in terms of targets
and tasks.
%description -l fr
Ant est un outil de compilation multi-plateformes pour java. Il est
@ -87,9 +109,15 @@ compilazione di programmi java.
Allo stato attuale viene utilizzato dai progetti apache jakarta ed
apache xml.
%package lib
Summary: Core part of %{name}
%description lib
Core part of Apache Ant that can be used as a library.
%package jmf
Summary: Optional jmf tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: %{name} = %{version}-%{release}
%description jmf
Optional jmf tasks for %{name}.
@ -99,7 +127,7 @@ Taches jmf optionelles pour %{name}.
%package swing
Summary: Optional swing tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: %{name} = %{version}-%{release}
%description swing
Optional swing tasks for %{name}.
@ -109,9 +137,7 @@ Taches swing optionelles pour %{name}.
%package antlr
Summary: Optional antlr tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: antlr
BuildRequires: antlr
Requires: %{name} = %{version}-%{release}
%description antlr
Optional antlr tasks for %{name}.
@ -121,9 +147,7 @@ Taches antlr optionelles pour %{name}.
%package apache-bsf
Summary: Optional apache bsf tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: bsf
BuildRequires: bsf
Requires: %{name} = %{version}-%{release}
%description apache-bsf
Optional apache bsf tasks for %{name}.
@ -133,9 +157,7 @@ Taches apache bsf optionelles pour %{name}.
%package apache-resolver
Summary: Optional apache resolver tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: xml-commons-resolver
BuildRequires: xml-commons-resolver
Requires: %{name} = %{version}-%{release}
%description apache-resolver
Optional apache resolver tasks for %{name}.
@ -145,9 +167,7 @@ Taches apache resolver optionelles pour %{name}.
%package commons-logging
Summary: Optional commons logging tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: apache-commons-logging
BuildRequires: apache-commons-logging
Requires: %{name} = %{version}-%{release}
%description commons-logging
Optional commons logging tasks for %{name}.
@ -157,9 +177,7 @@ Taches commons logging optionelles pour %{name}.
%package commons-net
Summary: Optional commons net tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: apache-commons-net
BuildRequires: apache-commons-net
Requires: %{name} = %{version}-%{release}
%description commons-net
Optional commons net tasks for %{name}.
@ -168,25 +186,10 @@ Optional commons net tasks for %{name}.
Taches commons net optionelles pour %{name}.
# Disable because we don't ship the dependencies
%if 0
%package jai
Summary: Optional jai tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: jai
BuildRequires: jai
%description jai
Optional jai tasks for %{name}.
%description jai -l fr
Taches jai optionelles pour %{name}.
%endif
%package apache-bcel
Summary: Optional apache bcel tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: bcel
BuildRequires: bcel
Requires: %{name} = %{version}-%{release}
%description apache-bcel
Optional apache bcel tasks for %{name}.
@ -196,9 +199,7 @@ Taches apache bcel optionelles pour %{name}.
%package apache-log4j
Summary: Optional apache log4j tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: log4j
BuildRequires: log4j
Requires: %{name} = %{version}-%{release}
%description apache-log4j
Optional apache log4j tasks for %{name}.
@ -208,9 +209,7 @@ Taches apache log4j optionelles pour %{name}.
%package apache-oro
Summary: Optional apache oro tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: jakarta-oro
BuildRequires: jakarta-oro
Requires: %{name} = %{version}-%{release}
%description apache-oro
Optional apache oro tasks for %{name}.
@ -220,9 +219,7 @@ Taches apache oro optionelles pour %{name}.
%package apache-regexp
Summary: Optional apache regexp tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: regexp
BuildRequires: regexp
Requires: %{name} = %{version}-%{release}
%description apache-regexp
Optional apache regexp tasks for %{name}.
@ -232,10 +229,7 @@ Taches apache regexp optionelles pour %{name}.
%package apache-xalan2
Summary: Optional apache xalan2 tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: regexp
BuildRequires: regexp
Requires: xalan-j2
Requires: %{name} = %{version}-%{release}
%description apache-xalan2
Optional apache xalan2 tasks for %{name}.
@ -243,11 +237,16 @@ Optional apache xalan2 tasks for %{name}.
%description apache-xalan2 -l fr
Taches apache xalan2 optionelles pour %{name}.
%package imageio
Summary: Optional imageio tasks for %{name}
Requires: %{name} = %{version}-%{release}
%description imageio
Optional imageio tasks for %{name}.
%package javamail
Summary: Optional javamail tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: javamail >= 0:1.2-5jpp
BuildRequires: javamail >= 0:1.2-5jpp
Requires: %{name} = %{version}-%{release}
%description javamail
Optional javamail tasks for %{name}.
@ -257,9 +256,7 @@ Taches javamail optionelles pour %{name}.
%package jdepend
Summary: Optional jdepend tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: jdepend
BuildRequires: jdepend
Requires: %{name} = %{version}-%{release}
%description jdepend
Optional jdepend tasks for %{name}.
@ -269,9 +266,7 @@ Taches jdepend optionelles pour %{name}.
%package jsch
Summary: Optional jsch tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: jsch
BuildRequires: jsch
Requires: %{name} = %{version}-%{release}
%description jsch
Optional jsch tasks for %{name}.
@ -281,9 +276,7 @@ Taches jsch optionelles pour %{name}.
%package junit
Summary: Optional junit tasks for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: junit
Requires: xalan-j2
Requires: %{name} = %{version}-%{release}
%description junit
Optional junit tasks for %{name}.
@ -291,18 +284,32 @@ Optional junit tasks for %{name}.
%description junit -l fr
Taches junit optionelles pour %{name}.
%package junit5
Summary: Optional junit5 tasks for %{name}
Requires: %{name} = %{version}-%{release}
%description junit5
Optional junit5 tasks for %{name}.
%description junit5 -l fr
Taches junit5 optionelles pour %{name}.
%package testutil
Summary: Test utility classes for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: junit
Requires: %{name} = %{version}-%{release}
%description testutil
Test utility tasks for %{name}.
%package xz
Summary: Optional xz tasks for %{name}
Requires: %{name} = %{version}-%{release}
%description xz
Optional xz tasks for %{name}.
%package manual
Summary: Manual for %{name}
# tutorial-tasks-filesets-properties.zip contains ASL 1.1 files
License: ASL 2.0 and ASL 1.1
%description manual
Documentation for %{name}.
@ -326,16 +333,14 @@ Javadoc pour %{name}.
%prep
%setup -q -n apache-ant-%{version}
#Fixup version
find -name build.xml -o -name pom.xml | xargs sed -i -e s/-SNAPSHOT//
%patch1 -p1
# Fix class-path-in-manifest rpmlint warning
%patch4
%patch0 -p1
# clean jar files
find . -name "*.jar" | %{_bindir}/xargs -t rm
find . -name "*.jar" | xargs -t rm
# Use our own version of javamail
%pom_remove_dep com.sun.mail:jakarta.mail src/etc/poms/ant-javamail
%pom_add_dep com.sun.mail:javax.mail::compile src/etc/poms/ant-javamail
# failing testcases. TODO see why
rm src/tests/junit/org/apache/tools/ant/types/selectors/SignedSelectorTest.java \
@ -345,7 +350,19 @@ rm src/tests/junit/org/apache/tools/ant/types/selectors/SignedSelectorTest.java
src/tests/junit/org/apache/tools/mail/MailMessageTest.java
#install jars
build-jar-repository -s -p lib/optional antlr bcel javamail/mailapi jdepend junit log4j oro regexp bsf commons-logging commons-net jsch xalan-j2 xml-commons-resolver xalan-j2-serializer xerces-j2 xml-commons-apis
build-jar-repository -s -p lib/optional antlr bcel javamail/mailapi jdepend junit log4j-1 oro regexp bsf commons-logging commons-net jsch xalan-j2 xml-commons-resolver xalan-j2-serializer hamcrest/core hamcrest/library xz-java junit5 opentest4j
# fix hardcoded paths in ant script and conf
cp -p %{SOURCE2} %{name}.conf
sed -e 's:/etc/ant.conf:%{_sysconfdir}/ant.conf:g' \
-e 's:/etc/ant.d:%{_sysconfdir}/ant.d:g' \
-e 's:/usr/share/ant:%{_datadir}/ant:g' \
-e 's:/usr/bin/build-classpath:%{_bindir}/build-classpath:g' \
-e 's:/usr/share/java-utils/java-functions:%{_javadir}-utils/java-functions:g' \
-i src/script/ant %{name}.conf
# Remove unnecessary JARs from the classpath
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
@ -353,13 +370,16 @@ mv KEYS.utf8 KEYS
iconv LICENSE -f iso-8859-1 -t utf-8 -o LICENSE.utf8
mv LICENSE.utf8 LICENSE
%build
%{ant} jars test-jar
# We want a hard dep on antlr
%pom_xpath_remove pom:optional src/etc/poms/ant-antlr/pom.xml
%if %with javadoc
export CLASSPATH=$(build-classpath antlr bcel javamail/mailapi jdepend junit log4j oro regexp bsf commons-logging commons-net jsch xalan-j2 xml-commons-resolver xerces-j2 xml-commons-apis)
%{ant} javadocs
%endif
%build
%{ant} jars test-jar javadocs
# typeset the manpage
mkdir man
asciidoc -b docbook -d manpage -o man/%{name}.xml %{SOURCE3}
xmlto man man/%{name}.xml -o man
#remove empty jai and netrexx jars. Due to missing dependencies they contain only manifests.
rm -fr build/lib/ant-jai.jar build/lib/ant-netrexx.jar
@ -369,9 +389,10 @@ rm -fr build/lib/ant-jai.jar build/lib/ant-netrexx.jar
# ANT_HOME and subdirs
mkdir -p $RPM_BUILD_ROOT%{ant_home}/{lib,etc,bin}
# jars
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/%{name}
install -d -m 755 $RPM_BUILD_ROOT%{_mavenpomdir}
%mvn_alias :ant org.apache.ant:ant-nodeps apache:ant ant:ant
%mvn_alias :ant-launcher ant:ant-launcher
%mvn_file ':{ant,ant-bootstrap,ant-launcher}' %{name}/@1 @1
for jar in build/lib/*.jar
do
@ -379,33 +400,30 @@ do
jar tf ${jar} | egrep -q *.class
jarname=$(basename $jar .jar)
pomname="JPP.%{name}-${jarname}.pom"
#instal jar
install -m 644 ${jar} $RPM_BUILD_ROOT%{_javadir}/%{name}/${jarname}.jar
# jar aliases
ln -sf ../../java/%{name}/${jarname}.jar $RPM_BUILD_ROOT%{ant_home}/lib/${jarname}.jar
#bootstrap does not have a pom
[ $jarname == ant-bootstrap ] && continue
pom=src/etc/poms/${jarname}/pom.xml
# add backward compatibility for nodeps jar that is now part of main
# jar
alias=
[ $jarname == ant ] && alias=org.apache.ant:ant-nodeps
# bootstrap does not have a pom, generate one
[ $jarname == ant-bootstrap ] && pom='org.apache.ant:ant-bootstrap:%{version}'
#install pom
install -p -m 644 src/etc/poms/${jarname}/pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/${pomname}
%add_maven_depmap ${pomname} %{name}/${jarname}.jar -a "${alias}" -f ${jarname/ant-/}
%mvn_artifact ${pom} ${jar}
done
for mod in ant ant-bootstrap ant-launcher; do
ln -sf %{name}/${mod}.jar $RPM_BUILD_ROOT%{_javadir}
done
# ant-parent pom
%mvn_artifact src/etc/poms/pom.xml
#ant-parent pom
install -p -m 644 src/etc/poms/pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-%{name}-parent.pom
%add_maven_depmap JPP-%{name}-parent.pom
%mvn_package :ant lib
%mvn_package :ant-launcher lib
%mvn_package :ant-bootstrap lib
%mvn_package :ant-parent lib
%mvn_package :ant-junit4 junit
# catchall rule for the rest
%mvn_package ':ant-{*}' @1
%mvn_install
# scripts: remove dos and os/2 scripts
rm -f src/script/*.bat
@ -416,68 +434,63 @@ cp -p src/etc/*.xsl $RPM_BUILD_ROOT%{ant_home}/etc
# install everything else
mkdir -p $RPM_BUILD_ROOT%{_bindir}
cp -p src/script/* $RPM_BUILD_ROOT%{_bindir}
cp -p src/script/ant $RPM_BUILD_ROOT%{_bindir}/
ln -sf %{_bindir}/ant $RPM_BUILD_ROOT%{ant_home}/bin/
ln -sf %{_bindir}/antRun $RPM_BUILD_ROOT%{ant_home}/bin/
cp -p src/script/antRun $RPM_BUILD_ROOT%{ant_home}/bin/
# default ant.conf
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}
cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
cp -p %{name}.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
# OPT_JAR_LIST fragments
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d
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 ant/ant-apache-bsf" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/apache-bsf
echo "rhino bsf 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 "jai ant/ant-jai" > $RPM_BUILD_ROOT%%{_sysconfdir}/%%{name}.d/jai
echo "bcel ant/ant-apache-bcel" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/apache-bcel
echo "log4j ant/ant-apache-log4j" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/apache-log4j
echo "log4j12 ant/ant-apache-log4j" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/apache-log4j
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 "javamail jaf ant/ant-javamail" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/javamail
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 "junit ant/ant-junit" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/junit
echo "junit ant/ant-junit4" > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.d/junit4
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
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
%if %with javadoc
# javadoc
mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}
cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
%endif
# fix link between manual and javadoc
(cd manual; ln -sf %{_javadocdir}/%{name} api)
%if %with tests
%check
%{ant} test
%endif
# manpage
install -d -m 755 %{buildroot}%{_mandir}/man1/
install -p -m 644 man/%{name}.1 %{buildroot}%{_mandir}/man1/%{name}.1
%files -f .mfiles
%files -f .mfiles-ant
%files -f .mfiles-launcher
%doc KEYS LICENSE NOTICE README WHATSNEW
%check
export LC_ALL=C.UTF-8
%{ant} test
%files
%doc KEYS README WHATSNEW
%license LICENSE NOTICE
%config(noreplace) %{_sysconfdir}/%{name}.conf
%attr(0755,root,root) %{_bindir}/ant
%attr(0755,root,root) %{_bindir}/antRun
%attr(0755,root,root) %{_bindir}/*.pl
%attr(0755,root,root) %{_bindir}/*.py*
%{_javadir}/%{name}.jar
%{_javadir}/%{name}-launcher.jar
%{_javadir}/%{name}-bootstrap.jar
%dir %{_javadir}/%{name}
%{_javadir}/%{name}/%{name}-bootstrap.jar
%dir %{ant_home}
%dir %{ant_home}/bin
%{ant_home}/bin/ant
%{ant_home}/bin/antRun
%attr(0755,root,root) %{ant_home}/bin/antRun
%{_mandir}/man1/%{name}.*
%dir %{ant_home}/etc
%{ant_home}/etc/ant-update.xsl
%{ant_home}/etc/changelog.xsl
@ -485,14 +498,16 @@ cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
%{ant_home}/etc/mmetrics-frames.xsl
%{ant_home}/etc/log.xsl
%{ant_home}/etc/tagdiff.xsl
%{ant_home}/etc/junit-frames-xalan1.xsl
%{ant_home}/etc/common2master.xsl
%{ant_home}/etc/printFailingTests.xsl
%dir %{_sysconfdir}/%{name}.d
%files lib -f .mfiles-lib
%dir %{ant_home}
%dir %{ant_home}/lib
%{ant_home}/lib/%{name}.jar
%{ant_home}/lib/%{name}-launcher.jar
%{ant_home}/lib/%{name}-bootstrap.jar
%dir %{_sysconfdir}/%{name}.d
%files jmf -f .mfiles-jmf
%{ant_home}/lib/%{name}-jmf.jar
@ -515,7 +530,6 @@ cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
%config(noreplace) %{_sysconfdir}/%{name}.d/apache-resolver
%files commons-logging -f .mfiles-commons-logging
%defattr(-,root,root,-)
%{ant_home}/lib/%{name}-commons-logging.jar
%config(noreplace) %{_sysconfdir}/%{name}.d/commons-logging
@ -524,11 +538,6 @@ cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
%config(noreplace) %{_sysconfdir}/%{name}.d/commons-net
# Disable as we dont ship the dependencies
%if 0
%files jai -f .mfiles-jai
%{ant_home}/lib/%{name}-jai.jar
%config(noreplace) %{_sysconfdir}/%{name}.d/jai
%endif
%files apache-bcel -f .mfiles-apache-bcel
%{ant_home}/lib/%{name}-apache-bcel.jar
@ -551,6 +560,10 @@ cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
%{ant_home}/lib/%{name}-apache-xalan2.jar
%config(noreplace) %{_sysconfdir}/%{name}.d/apache-xalan2
%files imageio -f .mfiles-imageio
%{ant_home}/lib/%{name}-imageio.jar
%config(noreplace) %{_sysconfdir}/%{name}.d/imageio
%files javamail -f .mfiles-javamail
%{ant_home}/lib/%{name}-javamail.jar
%config(noreplace) %{_sysconfdir}/%{name}.d/javamail
@ -566,44 +579,179 @@ cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
%config(noreplace) %{_sysconfdir}/%{name}.d/jsch
%files junit -f .mfiles-junit
%files junit -f .mfiles-junit4
%{ant_home}/lib/%{name}-junit.jar
%{ant_home}/lib/%{name}-junit4.jar
%config(noreplace) %{_sysconfdir}/%{name}.d/junit
%config(noreplace) %{_sysconfdir}/%{name}.d/junit4
%{ant_home}/etc/junit-frames.xsl
%{ant_home}/etc/junit-noframes.xsl
%{ant_home}/etc/junit-frames-xalan1.xsl
%{ant_home}/etc/junit-frames-saxon.xsl
%{ant_home}/etc/junit-noframes-saxon.xsl
%files junit5 -f .mfiles-junitlauncher
%{ant_home}/lib/%{name}-junitlauncher.jar
%config(noreplace) %{_sysconfdir}/%{name}.d/junitlauncher
%files testutil -f .mfiles-testutil
%{ant_home}/lib/%{name}-testutil.jar
%config(noreplace) %{_sysconfdir}/%{name}.d/testutil
%files xz -f .mfiles-xz
%{ant_home}/lib/%{name}-xz.jar
%config(noreplace) %{_sysconfdir}/%{name}.d/xz
%files manual
%doc LICENSE NOTICE
%license LICENSE NOTICE
%doc manual/*
%if %with javadoc
%files javadoc
%doc LICENSE NOTICE
%license LICENSE NOTICE
%{_javadocdir}/%{name}
%endif
# -----------------------------------------------------------------------------
%changelog
* Tue Jun 26 2018 Michael Simacek <msimacek@redhat.com> - 0:1.9.4-2
- Backport fix for arbitrary file write vulnerability
* Tue Nov 05 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.10.7-2
- Mass rebuild for javapackages-tools 201902
* Wed Oct 16 2019 Marian Koncek <mkoncek@redhat.com> - 1.10.7-1
- Update to upstream version 1.10.7
* Fri May 24 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.10.6-2
- Mass rebuild for javapackages-tools 201901
* Wed May 08 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.10.6-1
- Update to upstream version 1.10.6
* Mon Nov 19 2018 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0:1.10.5-3
- Use C.UTF-8 locale
See https://fedoraproject.org/wiki/Changes/Remove_glibc-langpacks-all_from_buildroot
* Mon Aug 20 2018 Mat Booth <mat.booth@redhat.com> - 0:1.10.5-2
- Enable building the optional junit5 module
* Thu Aug 02 2018 Michael Simacek <msimacek@redhat.com> - 0:1.10.5-1
- Update to upstream version 1.10.5
* Thu Aug 02 2018 Michael Simacek <msimacek@redhat.com> - 0:1.10.4-4
- Add a manpage
- Avoid installing antRun auxiliary script in bindir, keep it in ant_home
* Mon Jul 30 2018 Severin Gehwolf <sgehwolf@redhat.com> - 0:1.10.4-3
- Require javapackages-tools for ant script.
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.10.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Jun 26 2018 Michael Simacek <msimacek@redhat.com> - 0:1.10.4-1
- Update to upstream version 1.10.4
- Resolves: rhbz#1584407
* Fri Jun 22 2018 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.9.4-1
- Update to upstream version 1.9.4
* Wed Apr 18 2018 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.10.3-2
- Remove legacy Obsoletes/Provides
* Tue Jan 21 2014 Stanislav Ochotnicky <sochotnicky@redhat.com> - 0:1.9.2-9
- Fix license of manual subpackage
- Resolves: rhbz#1055629
* Wed Mar 28 2018 Michael Simacek <msimacek@redhat.com> - 0:1.10.3-1
- Update to upstream version 1.10.3
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 01.9.2-8
- Mass rebuild 2013-12-27
* Wed Feb 7 2018 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.10.2-1
- Update to upstream version 1.10.2
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.10.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Mon Sep 04 2017 Michael Simacek <msimacek@redhat.com> - 0:1.10.1-8
- Fix directory ownership
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.10.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Tue Mar 28 2017 Michael Simacek <msimacek@redhat.com> - 0:1.10.1-6
- Fix requires
- Use JDK's jaxp instead of xerces
* Tue Mar 21 2017 Michael Simacek <msimacek@redhat.com> - 0:1.10.1-5
- Install with XMvn
* Wed Mar 1 2017 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.10.1-4
- Fix hardcoded paths in ant script and conf
- Fix requires on xz-java
* Thu Feb 23 2017 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.10.1-3
- Don't hardcode path to xargs
* Thu Feb 16 2017 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.10.1-2
- Conditionalize weak dependencies
* Wed Feb 15 2017 Michael Simacek <msimacek@redhat.com> - 0:1.10.1-1
- Update to upstream version 1.10.1
* Fri Feb 10 2017 Michael Simacek <msimacek@redhat.com> - 0:1.10.0-3
- Use log4j12
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.10.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Mon Jan 02 2017 Michael Simacek <msimacek@redhat.com> - 0:1.10.0-1
- Update to upstream version 1.10.0
* Mon Dec 12 2016 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.9.7-1
- Update to upstream version 1.9.7
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.9.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Fri Jul 10 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.9.6-2
- Recommend java-devel instead of requiring it
* Thu Jul 02 2015 Michael Simacek <msimacek@redhat.com> - 0:1.9.6-1
- Update to upstream version 1.9.6
* Tue Jun 16 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0:1.9.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu Jun 04 2015 Michael Simacek <msimacek@redhat.com> - 0:1.9.5-1
- Update to upstream version 1.9.5
* Fri Apr 03 2015 Michael Simacek <msimacek@redhat.com> - 0:1.9.4-11
- Move launcher to lib subpackage
* Wed Apr 1 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.9.4-10
- Update description
* Tue Mar 31 2015 Michael Simacek <msimacek@redhat.com> - 0:1.9.4-9
- Split library part into subpackage (rhbz#1119283)
* Wed Mar 11 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.9.4-8
- Add alias for ant:ant-launcher
* Wed Feb 4 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.9.4-7
- Add hamcrest to ant-junit classpath
* Mon Jan 26 2015 Michael Simacek <msimacek@redhat.com> - 0:1.9.4-6
- Add hamcrest into classpath
* Tue Jan 13 2015 Mat Booth <mat.booth@redhat.com> - 0:1.9.4-5
- Resolves: rhbz#1180568 - Add rhino to classpath for bsf plug-in
* Mon Aug 11 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.9.4-4
- Add aliases for ant:ant and apache:ant
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0:1.9.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Tue May 6 2014 Alexander Kurtakov <akurtako@redhat.com> 0:1.9.4-2
- Reenable tests.
* Tue May 6 2014 Alexander Kurtakov <akurtako@redhat.com> 0:1.9.4-1
- Update to upstream 1.9.4.
- Disable tests as they use new junit tas attribute added in this release.
* Fri Feb 21 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.9.3-2
- Skip installation perl and python scripts
* Thu Jan 2 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.9.3-1
- Update to upstream version 1.9.3
* Thu Sep 12 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.9.2-7
- Install Maven depmaps in appropriate subpackages
@ -613,9 +761,6 @@ cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
- Fix antRun script
- Resolves: rhbz#675949
* Fri Aug 09 2013 Michal Srb <msrb@redhat.com> - 0:1.9.1-6
- Add missing BR/R: xerces-j2, xml-commons-apis
* Thu Aug 08 2013 Michal Srb <msrb@redhat.com> - 0:1.9.2-5
- xerces-j2 and xml-commons-apis should be in classpath (Resolves: rhbz#994556)
@ -691,7 +836,7 @@ cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
* Tue Feb 07 2012 Tomas Radej <tradej@redhat.com> - 0:1.8.2-8
- Removed checking for classpath duplicates
- Added ant-junit4.jar into %files and ant.d
- Added ant-junit4.jar into %%files and ant.d
* Thu Jan 12 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0:1.8.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
@ -817,7 +962,7 @@ cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
- remove Conflicts
- mark files in %%{_sysconfdir} as %%config(noreplace)
* Thu Jul 03 2007 Ralph Apel <r.apel at r-apel.de> - 0:1.7.0-2.jpp5
* Tue Jul 03 2007 Ralph Apel <r.apel at r-apel.de> - 0:1.7.0-2.jpp5
- Add poms and depmap frags
- (B)R jpackage-utils >= 0:1.7.5
- BR java-devel = 0:1.5.0
@ -855,7 +1000,7 @@ cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
* Mon Sep 06 2004 Fernando Nasser <fnasser at redhat.com> - 0:1.6.2-2jpp
- Fix to backward compatibility symbolic links.
* Wed Aug 17 2004 Fernando Nasser <fnasser at redhat.com> - 0:1.6.2-1jpp
* Tue Aug 17 2004 Fernando Nasser <fnasser at redhat.com> - 0:1.6.2-1jpp
- Update to Ant 1.6.2
* Thu Aug 05 2004 Fernando Nasser <fnasser at redhat.com> - 0:1.6.1-2jpp
@ -1149,7 +1294,7 @@ cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
- changed name to jakarta-ant
- changed group to Development/Java
* Wed Jan 04 2001 Guillaume Rousse <g.rousse@linux-mandrake.com> 1.2-2mdk
* Thu Jan 04 2001 Guillaume Rousse <g.rousse@linux-mandrake.com> 1.2-2mdk
- new spec file
- discarded ugly non-free Sun jaxp library from sources, and used pretty open-source xerces instead

View File

@ -1,13 +0,0 @@
--- build.xml.orig 2012-02-29 13:29:12.000000000 +0200
+++ build.xml 2012-02-29 13:31:36.787937053 +0200
@@ -728,10 +728,6 @@
<include name="LICENSE.txt"/>
<include name="NOTICE.txt"/>
</metainf>
- <manifest>
- <attribute name="Class-Path"
- value="ant.jar xalan.jar"/>
- </manifest>
</jar>
<macrodef name="optional-jar">

View File

@ -1 +1 @@
SHA1 (apache-ant-1.9.4-src.tar.bz2) = cdefb110fd7dcf87d8697af4369fb476c4c36324
SHA512 (apache-ant-1.10.7-src.tar.bz2) = 5849e81aa037b9ba7f4e67057a0cde50301d183fc244673c7f11e34997b11d21c33306c07ab820bf60d454afa8ad5b159c3442427c8cb5403896f29ed179b10d