rpm  4.13.0
Data Structures | Typedefs | Enumerations | Functions
rpmbuild.h File Reference
#include <rpm/rpmcli.h>
#include <rpm/rpmds.h>
#include <rpm/rpmspec.h>
Include dependency graph for rpmbuild.h:

Go to the source code of this file.

Data Structures

struct  rpmBuildArguments_s
 

Typedefs

typedef rpmFlags rpmBuildFlags
 
typedef rpmFlags rpmBuildPkgFlags
 
typedef struct rpmBuildArguments_sBTA_t
 

Enumerations

enum  rpmBuildFlags_e {
  RPMBUILD_NONE = 0, RPMBUILD_PREP = (1 << 0), RPMBUILD_BUILD = (1 << 1), RPMBUILD_INSTALL = (1 << 2),
  RPMBUILD_CHECK = (1 << 3), RPMBUILD_CLEAN = (1 << 4), RPMBUILD_FILECHECK = (1 << 5), RPMBUILD_PACKAGESOURCE = (1 << 6),
  RPMBUILD_PACKAGEBINARY = (1 << 7), RPMBUILD_RMSOURCE = (1 << 8), RPMBUILD_RMBUILD = (1 << 9), RPMBUILD_STRINGBUF = (1 << 10),
  RPMBUILD_RMSPEC = (1 << 11), RPMBUILD_FILE_FILE = (1 << 16), RPMBUILD_FILE_LIST = (1 << 17), RPMBUILD_POLICY = (1 << 18),
  RPMBUILD_NOBUILD = (1 << 31)
}
 
enum  rpmBuildPkgFlags_e { RPMBUILD_PKG_NONE = 0, RPMBUILD_PKG_NODIRTOKENS = (1 << 0) }
 

Functions

rpmSpec rpmSpecParse (const char *specFile, rpmSpecFlags flags, const char *buildRoot)
 
Header rpmSpecSourceHeader (rpmSpec spec)
 
rpmps rpmSpecCheckDeps (rpmts ts, rpmSpec spec)
 
rpmds rpmSpecDS (rpmSpec spec, rpmTagVal tag)
 
rpmRC rpmSpecBuild (rpmSpec spec, BTA_t buildArgs)
 

Detailed Description

This is the only module users of librpmbuild should need to include.

Definition in file rpmbuild.h.

Typedef Documentation

◆ BTA_t

typedef struct rpmBuildArguments_s* BTA_t

Definition at line 67 of file rpmbuild.h.

◆ rpmBuildFlags

Definition at line 42 of file rpmbuild.h.

◆ rpmBuildPkgFlags

Definition at line 52 of file rpmbuild.h.

Enumeration Type Documentation

◆ rpmBuildFlags_e

Bit(s) to control rpmSpecBuild() operation. Also used as argument to rpmSpecGetSection and rpmSpecPkgGetSection.

Enumerator
RPMBUILD_NONE 
RPMBUILD_PREP 

Execute %prep.

RPMBUILD_BUILD 

Execute %build.

RPMBUILD_INSTALL 

Execute %install.

RPMBUILD_CHECK 

Execute %check.

RPMBUILD_CLEAN 

Execute %clean.

RPMBUILD_FILECHECK 

Check %files manifest.

RPMBUILD_PACKAGESOURCE 

Create source package.

RPMBUILD_PACKAGEBINARY 

Create binary package(s).

RPMBUILD_RMSOURCE 

Remove source(s) and patch(s).

RPMBUILD_RMBUILD 

Remove build sub-tree.

RPMBUILD_STRINGBUF 

Internal use only

RPMBUILD_RMSPEC 

Remove spec file.

RPMBUILD_FILE_FILE 

rpmSpecPkgGetSection: files -f

RPMBUILD_FILE_LIST 

rpmSpecPkgGetSection: files

RPMBUILD_POLICY 

rpmSpecPkgGetSection: policy

RPMBUILD_NOBUILD 

Don't execute or package.

Definition at line 21 of file rpmbuild.h.

◆ rpmBuildPkgFlags_e

Bit(s) to control package generation

Enumerator
RPMBUILD_PKG_NONE 
RPMBUILD_PKG_NODIRTOKENS 

Legacy filename layout

Definition at line 47 of file rpmbuild.h.

Function Documentation

◆ rpmSpecBuild()

rpmRC rpmSpecBuild ( rpmSpec  spec,
BTA_t  buildArgs 
)

Spec build stages state machine driver.

Parameters
specspec file control structure
buildArgsbuild arguments
Returns
RPMRC_OK on success

Referenced by buildForTarget().

◆ rpmSpecCheckDeps()

rpmps rpmSpecCheckDeps ( rpmts  ts,
rpmSpec  spec 
)

Verify build depencies of a spec against.

Parameters
ts(empty) transaction set
specparsed spec control structure
Returns
rpm problem set or NULL on no problems

Referenced by checkSpec().

◆ rpmSpecDS()

rpmds rpmSpecDS ( rpmSpec  spec,
rpmTagVal  tag 
)

Retrieve build dependency set from spec.

Parameters
specparsed spec control structure
tagdependency tag
Returns
dependency set of tag (or NULL)

◆ rpmSpecParse()

rpmSpec rpmSpecParse ( const char *  specFile,
rpmSpecFlags  flags,
const char *  buildRoot 
)

Parse spec file into spec control structure.

Todo:
Eliminate buildRoot from here, its a build, not spec property
Parameters
specFilepath to spec file
flagsflags to control operation
buildRootbuildRoot override or NULL for default
Returns
new spec control structure

Referenced by buildForTarget(), and main().

◆ rpmSpecSourceHeader()

Header rpmSpecSourceHeader ( rpmSpec  spec)

Return the headers of the SRPM that would be built from the spec file

Parameters
specpath to spec file
Returns
Header