blob: b213e0602e78341c9c0f63efcb7c8fcda5a11e6b [file] [log] [blame]
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<html>
<head>
<link rel="stylesheet" type="text/css" href="../stylesheets/style.css">
<title>Rpm Task</title>
</head>
<body>
<h2><a name="rpm">Rpm</a></h2>
<h3>Description</h3>
<p>
A basic task for invoking the rpm executable to build a RedHat Package Manager Linux installation
file. The task currently only works on Linux or other Unix platforms with rpm support.
</p>
<h3>Parameters</h3>
<table border="1" cellpadding="2" cellspacing="0">
<tr>
<td valign="top"><b>Attribute</b></td>
<td valign="top"><b>Description</b></td>
<td align="center" valign="top"><b>Required</b></td>
</tr>
<tr>
<td valign="top">specFile</td>
<td valign="top">The name of the spec file to be used. This must be relative to the SPECS directory
under the root of the RPM set in the topDir attribute.</td>
<td valign="top" align="center">Yes</td>
</tr>
<tr>
<td valign="top">topDir</td>
<td valign="top">
This is the directory which will have the expected
subdirectories, SPECS, SOURCES, BUILD, SRPMS. If this isn't specified,
the default RPM directory of the system (or user, if ~/.rpmmacros defines it) is used (often
/usr/src/rpm.<br>
Defining a topdir will set <tt>%_topdir</tt> to the specified directory -there is no need
to edit your .rpmmacros file.
</td>
<td valign="top" align="center">No, but your build file is very brittle if it is not set.</td>
</tr>
<tr>
<td valign="top">cleanBuildDir</td>
<td valign="top">This will remove the generated files in the BUILD
directory.
See the the <tt>--clean</tt> option of rpmbuild.
</td>
<td align="center" valign="top">No</td>
</tr>
<tr>
<td valign="top">removeSpec</td>
<td valign="top">This will remove the spec file from SPECS.
See the the <tt>--rmspec</tt> option of rpmbuild.
</td>
<td align="center" valign="top">No</td>
</tr>
<tr>
<td valign="top">removeSource</td>
<td valign="top">Flag (optional, default=false)
to remove the sources after the build.
See the the <tt>--rmsource</tt> option of rpmbuild.</td>
<td align="center" valign="top">No</td>
</tr>
<tr>
<td valign="top">rpmBuildCommand</td>
<td valign="top">The executable to use for building the RPM.
Defaults to <code>rpmbuild</code> if it can be found or
<code>rpm</code> otherwise. Set this if you don't have either on
your PATH or want to use a different executable. <em>Since Ant
1.6</em>.</td>
<td valign="top" align="center">No</td>
</tr>
<tr>
<td valign="top">command</td>
<td valign="top">The command to pass to the rpmbuild program. The default is "-bb"</td>
<td align="center" valign="top">No</td>
</tr>
<tr>
<td valign="top">quiet</td>
<td valign="top">Suppress output. Defaults to false.</td>
<td align="center" valign="top">No</td>
</tr>
<tr>
<td valign="top">output/error</td>
<td valign="top">Where standard output and error go</td>
<td align="center" valign="top">No</td>
</tr>
<tr>
<td valign="top">failOnError</td>
<td valign="top">Stop the buildprocess if the RPM build command exits with
a non-zero retuncode. Defaults to false</td>
<td align="center" valign="top">No</td>
</tr>
</table>
<h3>Examples</h3>
<pre>
&lt;rpm
specFile="example.spec"
topDir="build/rpm"
cleanBuildDir="true"
failOnError="true"/&gt;
</pre>
</body>
</html>