org.apache.tools.ant.taskdefs.optional
Class Rpm

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.Task
          extended by org.apache.tools.ant.taskdefs.optional.Rpm
All Implemented Interfaces:
java.lang.Cloneable

public class Rpm
extends Task

Invokes the rpm tool to build a Linux installation file.


Field Summary
 
Fields inherited from class org.apache.tools.ant.Task
target, taskName, taskType, wrapper
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
 
Constructor Summary
Rpm()
           
 
Method Summary
 void execute()
          Execute the task
protected  Execute getExecute(Commandline toExecute, ExecuteStreamHandler streamhandler)
          Get the execute object.
protected  java.lang.String guessRpmBuildCommand()
          Checks whether rpmbuild is on the PATH and returns the absolute path to it - falls back to rpm otherwise.
 void setCleanBuildDir(boolean cbd)
          Flag (optional, default=false) to remove the generated files in the BUILD directory
 void setCommand(java.lang.String c)
          What command to issue to the rpm build tool; optional.
 void setError(java.io.File error)
          Optional file to save stderr to
 void setFailOnError(boolean value)
          If true, stop the build process when the rpmbuild command exits with an error status.
 void setOutput(java.io.File output)
          Optional file to save stdout to.
 void setQuiet(boolean value)
          If true, output from the RPM build command will only be logged to DEBUG.
 void setRemoveSource(boolean rs)
          Flag (optional, default=false) to remove the sources after the build.
 void setRemoveSpec(boolean rs)
          Flag (optional, default=false) to remove the spec file from SPECS
 void setRpmBuildCommand(java.lang.String c)
          The executable to run when building; optional.
 void setSpecFile(java.lang.String sf)
          The name of the spec File to use; required.
 void setTopDir(java.io.File td)
          The directory which will have the expected subdirectories, SPECS, SOURCES, BUILD, SRPMS ; optional.
 
Methods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Rpm

public Rpm()
Method Detail

execute

public void execute()
             throws BuildException
Execute the task

Overrides:
execute in class Task
Throws:
BuildException - is there is a problem in the task execution.

setTopDir

public void setTopDir(java.io.File td)
The directory which will have the expected subdirectories, SPECS, SOURCES, BUILD, SRPMS ; optional. If this isn't specified, the baseDir value is used

Parameters:
td - the directory containing the normal RPM directories.

setCommand

public void setCommand(java.lang.String c)
What command to issue to the rpm build tool; optional. The default is "-bb"

Parameters:
c - the command to use.

setSpecFile

public void setSpecFile(java.lang.String sf)
The name of the spec File to use; required.

Parameters:
sf - the spec file name to use.

setCleanBuildDir

public void setCleanBuildDir(boolean cbd)
Flag (optional, default=false) to remove the generated files in the BUILD directory

Parameters:
cbd - a boolean value.

setRemoveSpec

public void setRemoveSpec(boolean rs)
Flag (optional, default=false) to remove the spec file from SPECS

Parameters:
rs - a boolean value.

setRemoveSource

public void setRemoveSource(boolean rs)
Flag (optional, default=false) to remove the sources after the build. See the --rmsource option of rpmbuild.

Parameters:
rs - a boolean value.

setOutput

public void setOutput(java.io.File output)
Optional file to save stdout to.

Parameters:
output - the file to save stdout to.

setError

public void setError(java.io.File error)
Optional file to save stderr to

Parameters:
error - the file to save error output to.

setRpmBuildCommand

public void setRpmBuildCommand(java.lang.String c)
The executable to run when building; optional. The default is rpmbuild.

Parameters:
c - the rpm build executable
Since:
Ant 1.6

setFailOnError

public void setFailOnError(boolean value)
If true, stop the build process when the rpmbuild command exits with an error status.

Parameters:
value - true if it should halt, otherwise false. The default is false.
Since:
Ant 1.6.3

setQuiet

public void setQuiet(boolean value)
If true, output from the RPM build command will only be logged to DEBUG.

Parameters:
value - false if output should be logged, otherwise true. The default is false.
Since:
Ant 1.6.3

guessRpmBuildCommand

protected java.lang.String guessRpmBuildCommand()
Checks whether rpmbuild is on the PATH and returns the absolute path to it - falls back to rpm otherwise.

Returns:
the command used to build RPM's
Since:
1.6

getExecute

protected Execute getExecute(Commandline toExecute,
                             ExecuteStreamHandler streamhandler)
Get the execute object.

Parameters:
toExecute - the command line to use.
streamhandler - the stream handler to use.
Returns:
the execute object.
Since:
Ant 1.6.3