csomh / source-git / rpm

Forked from source-git/rpm 4 years ago
Clone
2ff057
2ff057
<html xmlns="http://www.w3.org/1999/xhtml">
2ff057
<head>
2ff057
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
2ff057
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
2ff057
<meta name="generator" content="Doxygen 1.8.14"/>
2ff057
<meta name="viewport" content="width=device-width, initial-scale=1"/>
2ff057
<title>rpm: Build API.</title>
2ff057
<link href="tabs.css" rel="stylesheet" type="text/css"/>
2ff057
<script type="text/javascript" src="jquery.js"></script>
2ff057
<script type="text/javascript" src="dynsections.js"></script>
2ff057
<link href="doxygen.css" rel="stylesheet" type="text/css" />
2ff057
</head>
2ff057
<body>
2ff057
2ff057
2ff057
2ff057
 
2ff057
 
2ff057
  
2ff057
   
rpm
2ff057
    4.14.2
2ff057
   
2ff057
  
2ff057
 
2ff057
 
2ff057
2ff057
2ff057
2ff057
2ff057
<script type="text/javascript" src="menudata.js"></script>
2ff057
<script type="text/javascript" src="menu.js"></script>
2ff057
<script type="text/javascript">
2ff057
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
2ff057
$(function() {
2ff057
  initMenu('',false,false,'search.php','Search');
2ff057
});
2ff057
/* @license-end */</script>
2ff057
2ff057
2ff057
2ff057
  
2ff057
Files |
2ff057
Data Structures |
2ff057
Typedefs |
2ff057
Enumerations |
2ff057
Functions  
2ff057
  
2ff057
  
2ff057
2ff057
2ff057
2ff057

API for building packages.

2ff057
More...

2ff057
2ff057
Collaboration diagram for Build API.:
2ff057
2ff057
<center>
2ff057
<map name="group____rpmbuild" id="group____rpmbuild">
2ff057
<area shape="rect" id="node3" href="group__rpmcli.html" title="Parsing RPM command line arguments. " alt="" coords="387,5,537,32"/>
2ff057
<area shape="rect" id="node4" href="group__rpmfc.html" title="Structures and methods for build-time file classification. " alt="" coords="380,56,544,83"/>
2ff057
<area shape="rect" id="node2" href="group__buildsign.html" title="Building & signing\l packages:" alt="" coords="5,23,145,65"/>
2ff057
</map>
2ff057
</center>
2ff057
2ff057
2ff057

2ff057
Files
2ff057
file  rpmcli.h
2ff057
 Parsing RPM command line arguments. 
2ff057
 
2ff057
file  rpmbuild.h
2ff057
 This is the only module users of librpmbuild should need to include. 
2ff057
 
2ff057
file  rpmfc.h
2ff057
 Structures and methods for build-time file classification. 
2ff057
 
2ff057
file  rpmspec.h
2ff057
 The rpmSpec and Package data structures used during build. 
2ff057
 
2ff057
2ff057

2ff057
Data Structures
2ff057
struct  rpmBuildArguments_s
2ff057
 Describe build request.  More...
2ff057
 
2ff057
2ff057

2ff057
Typedefs
2ff057
typedef struct rpmBuildArguments_sBTA_t
2ff057
 
2ff057
typedef struct Package_s * rpmSpecPkg
2ff057
 
2ff057
2ff057

2ff057
Enumerations
2ff057
enum  rpmBuildFlags_e { 
2ff057
  RPMBUILD_NONE = 0, 
2ff057
RPMBUILD_PREP = (1 << 0), 
2ff057
RPMBUILD_BUILD = (1 << 1), 
2ff057
RPMBUILD_INSTALL = (1 << 2), 
2ff057

2ff057
  RPMBUILD_CHECK = (1 << 3), 
2ff057
RPMBUILD_CLEAN = (1 << 4), 
2ff057
RPMBUILD_FILECHECK = (1 << 5), 
2ff057
RPMBUILD_PACKAGESOURCE = (1 << 6), 
2ff057

2ff057
  RPMBUILD_PACKAGEBINARY = (1 << 7), 
2ff057
RPMBUILD_RMSOURCE = (1 << 8), 
2ff057
RPMBUILD_RMBUILD = (1 << 9), 
2ff057
RPMBUILD_STRINGBUF = (1 << 10), 
2ff057

2ff057
  RPMBUILD_RMSPEC = (1 << 11), 
2ff057
RPMBUILD_FILE_FILE = (1 << 16), 
2ff057
RPMBUILD_FILE_LIST = (1 << 17), 
2ff057
RPMBUILD_POLICY = (1 << 18), 
2ff057

2ff057
  RPMBUILD_NOBUILD = (1 << 31)
2ff057

2ff057
 }
2ff057
 Bit(s) to control rpmSpecBuild() operation.  More...
2ff057
 
2ff057
enum  rpmBuildPkgFlags_e { RPMBUILD_PKG_NONE = 0, 
2ff057
RPMBUILD_PKG_NODIRTOKENS = (1 << 0)
2ff057
 }
2ff057
 Bit(s) to control package generation.  More...
2ff057
 
2ff057
2ff057

2ff057
Functions
2ff057
rpmSpec rpmSpecParse (const char *specFile, rpmSpecFlags flags, const char *buildRoot)
2ff057
 Parse spec file into spec control structure.  More...
2ff057
 
2ff057
Header rpmSpecSourceHeader (rpmSpec spec)
2ff057
 Return the headers of the SRPM that would be built from the spec file.  More...
2ff057
 
2ff057
rpmps rpmSpecCheckDeps (rpmts ts, rpmSpec spec)
2ff057
 Verify build depencies of a spec against.  More...
2ff057
 
2ff057
rpmds rpmSpecDS (rpmSpec spec, rpmTagVal tag)
2ff057
 Retrieve build dependency set from spec.  More...
2ff057
 
2ff057
rpmRC rpmSpecBuild (rpmSpec spec, BTA_t buildArgs)
2ff057
 Spec build stages state machine driver.  More...
2ff057
 
2ff057
rpmSpec rpmSpecFree (rpmSpec spec)
2ff057
 Destroy Spec structure.  More...
2ff057
 
2ff057
int rpmspecQuery (rpmts ts, QVA_t qva, const char *arg)
2ff057
 Function to query spec file(s).  More...
2ff057
 
2ff057
2ff057

Detailed Description

2ff057

API for building packages.

2ff057

Typedef Documentation

2ff057
2ff057

◆ BTA_t

2ff057
2ff057
2ff057
2ff057
      
2ff057
        
2ff057
          typedef struct rpmBuildArguments_s* BTA_t
2ff057
        
2ff057
      
2ff057
2ff057
2ff057

Definition at line 67 of file rpmbuild.h.

2ff057
2ff057
2ff057
2ff057
2ff057

◆ rpmSpecPkg

2ff057
2ff057
2ff057
2ff057
      
2ff057
        
2ff057
          typedef struct Package_s* rpmSpecPkg
2ff057
        
2ff057
      
2ff057
2ff057
2ff057

Definition at line 18 of file rpmspec.h.

2ff057
2ff057
2ff057
2ff057

Enumeration Type Documentation

2ff057
2ff057

◆ rpmBuildFlags_e

2ff057
2ff057
2ff057
2ff057
      
2ff057
        
2ff057
          enum rpmBuildFlags_e
2ff057
        
2ff057
      
2ff057
2ff057
2ff057

Bit(s) to control rpmSpecBuild() operation.

2ff057

Also used as argument to rpmSpecGetSection and rpmSpecPkgGetSection.

2ff057
2ff057
EnumeratorRPMBUILD_NONE 
2ff057
RPMBUILD_PREP 

Execute %prep.

2ff057
2ff057
RPMBUILD_BUILD 

Execute %build.

2ff057
2ff057
RPMBUILD_INSTALL 

Execute %install.

2ff057
2ff057
RPMBUILD_CHECK 

Execute %check.

2ff057
2ff057
RPMBUILD_CLEAN 

Execute %clean.

2ff057
2ff057
RPMBUILD_FILECHECK 

Check %files manifest.

2ff057
2ff057
RPMBUILD_PACKAGESOURCE 

Create source package.

2ff057
2ff057
RPMBUILD_PACKAGEBINARY 

Create binary package(s).

2ff057
2ff057
RPMBUILD_RMSOURCE 

Remove source(s) and patch(s).

2ff057
2ff057
RPMBUILD_RMBUILD 

Remove build sub-tree.

2ff057
2ff057
RPMBUILD_STRINGBUF 

Internal use only

2ff057
2ff057
RPMBUILD_RMSPEC 

Remove spec file.

2ff057
2ff057
RPMBUILD_FILE_FILE 

rpmSpecPkgGetSection: files -f

2ff057
2ff057
RPMBUILD_FILE_LIST 

rpmSpecPkgGetSection: files

2ff057
2ff057
RPMBUILD_POLICY 

rpmSpecPkgGetSection: policy

2ff057
2ff057
RPMBUILD_NOBUILD 

Don't execute or package.

2ff057
2ff057
2ff057
2ff057

Definition at line 21 of file rpmbuild.h.

2ff057
2ff057
2ff057
2ff057
2ff057

◆ rpmBuildPkgFlags_e

2ff057
2ff057
2ff057
2ff057
      
2ff057
        
2ff057
          enum rpmBuildPkgFlags_e
2ff057
        
2ff057
      
2ff057
2ff057
2ff057

Bit(s) to control package generation.

2ff057
2ff057
EnumeratorRPMBUILD_PKG_NONE 
2ff057
RPMBUILD_PKG_NODIRTOKENS 

Legacy filename layout

2ff057
2ff057
2ff057
2ff057

Definition at line 47 of file rpmbuild.h.

2ff057
2ff057
2ff057
2ff057

Function Documentation

2ff057
2ff057

◆ rpmSpecBuild()

2ff057
2ff057
2ff057
2ff057
      
2ff057
        
2ff057
          rpmRC rpmSpecBuild 
2ff057
          (
2ff057
          rpmSpec 
2ff057
          spec, 
2ff057
        
2ff057
        
2ff057
          
2ff057
          
2ff057
          BTA_t 
2ff057
          buildArgs 
2ff057
        
2ff057
        
2ff057
          
2ff057
          )
2ff057
          
2ff057
        
2ff057
      
2ff057
2ff057
2ff057

Spec build stages state machine driver.

2ff057
Parameters
2ff057
  
2ff057
    specspec file control structure 
2ff057
    buildArgsbuild arguments 
2ff057
  
2ff057
  
2ff057
2ff057
Returns
RPMRC_OK on success
2ff057
2ff057
2ff057
2ff057
2ff057

◆ rpmSpecCheckDeps()

2ff057
2ff057
2ff057
2ff057
      
2ff057
        
2ff057
          rpmps rpmSpecCheckDeps 
2ff057
          (
2ff057
          rpmts 
2ff057
          ts, 
2ff057
        
2ff057
        
2ff057
          
2ff057
          
2ff057
          rpmSpec 
2ff057
          spec 
2ff057
        
2ff057
        
2ff057
          
2ff057
          )
2ff057
          
2ff057
        
2ff057
      
2ff057
2ff057
2ff057

Verify build depencies of a spec against.

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

◆ rpmSpecDS()

2ff057
2ff057
2ff057
2ff057
      
2ff057
        
2ff057
          rpmds rpmSpecDS 
2ff057
          (
2ff057
          rpmSpec 
2ff057
          spec, 
2ff057
        
2ff057
        
2ff057
          
2ff057
          
2ff057
          rpmTagVal 
2ff057
          tag 
2ff057
        
2ff057
        
2ff057
          
2ff057
          )
2ff057
          
2ff057
        
2ff057
      
2ff057
2ff057
2ff057

Retrieve build dependency set from spec.

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

◆ rpmSpecFree()

2ff057
2ff057
2ff057
2ff057
      
2ff057
        
2ff057
          rpmSpec rpmSpecFree 
2ff057
          (
2ff057
          rpmSpec 
2ff057
          spec)
2ff057
          
2ff057
        
2ff057
      
2ff057
2ff057
2ff057

Destroy Spec structure.

2ff057
Parameters
2ff057
  
2ff057
    specspec file control structure 
2ff057
  
2ff057
  
2ff057
2ff057
Returns
NULL always
2ff057
2ff057
2ff057
2ff057
2ff057

◆ rpmSpecParse()

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

Parse spec file into spec control structure.

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

◆ rpmspecQuery()

2ff057
2ff057
2ff057
2ff057
      
2ff057
        
2ff057
          int rpmspecQuery 
2ff057
          (
2ff057
          rpmts 
2ff057
          ts, 
2ff057
        
2ff057
        
2ff057
          
2ff057
          
2ff057
          QVA_t 
2ff057
          qva, 
2ff057
        
2ff057
        
2ff057
          
2ff057
          
2ff057
          const char * 
2ff057
          arg 
2ff057
        
2ff057
        
2ff057
          
2ff057
          )
2ff057
          
2ff057
        
2ff057
      
2ff057
2ff057
2ff057

Function to query spec file(s).

2ff057
Parameters
2ff057
  
2ff057
    tstransaction set 
2ff057
    qvaparsed query/verify options 
2ff057
    argquery argument 
2ff057
  
2ff057
  
2ff057
2ff057
Returns
0 on success, else no. of failures
2ff057
2ff057
2ff057
2ff057
2ff057

◆ rpmSpecSourceHeader()

2ff057
2ff057
2ff057
2ff057
      
2ff057
        
2ff057
          Header rpmSpecSourceHeader 
2ff057
          (
2ff057
          rpmSpec 
2ff057
          spec)
2ff057
          
2ff057
        
2ff057
      
2ff057
2ff057
2ff057

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

2ff057
Parameters
2ff057
  
2ff057
    specpath to spec file 
2ff057
  
2ff057
  
2ff057
2ff057
Returns
Header
2ff057
2ff057
2ff057
2ff057
2ff057
2ff057

<address class="footer"><small>
2ff057
Generated by  
2ff057
doxygen
2ff057
 1.8.14
2ff057
</small></address>
2ff057
</body>
2ff057
</html>