rpm: rpmbuild.h Source File

rpm 4.16.1.3

rpmbuild.h
Go to the documentation of this file.
1 #ifndef _H_RPMBUILD_
2 #define _H_RPMBUILD_
3
9 #include <rpm/rpmcli.h>
10 #include <rpm/rpmds.h>
11 #include <rpm/rpmspec.h>
12
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16
21 enum rpmBuildFlags_e {
22 RPMBUILD_NONE = 0,
23 RPMBUILD_PREP = (1 << 0),
24 RPMBUILD_BUILD = (1 << 1),
25 RPMBUILD_INSTALL = (1 << 2),
26 RPMBUILD_CHECK = (1 << 3),
27 RPMBUILD_CLEAN = (1 << 4),
28 RPMBUILD_FILECHECK = (1 << 5),
29 RPMBUILD_PACKAGESOURCE = (1 << 6),
30 RPMBUILD_PACKAGEBINARY = (1 << 7),
31 RPMBUILD_RMSOURCE = (1 << 8),
32 RPMBUILD_RMBUILD = (1 << 9),
33 RPMBUILD_STRINGBUF = (1 << 10),
34 RPMBUILD_RMSPEC = (1 << 11),
35 RPMBUILD_FILE_FILE = (1 << 16),
36 RPMBUILD_FILE_LIST = (1 << 17),
37 RPMBUILD_POLICY = (1 << 18),
38 RPMBUILD_CHECKBUILDREQUIRES = (1 << 19),
39 RPMBUILD_BUILDREQUIRES = (1 << 20),
40 RPMBUILD_DUMPBUILDREQUIRES = (1 << 21),
42 RPMBUILD_NOBUILD = (1 << 31)
43 };
44
45 typedef rpmFlags rpmBuildFlags;
46
50 enum rpmBuildPkgFlags_e {
51 RPMBUILD_PKG_NONE = 0,
52 RPMBUILD_PKG_NODIRTOKENS = (1 << 0),
53 };
54
55 typedef rpmFlags rpmBuildPkgFlags;
56
57 #define RPMRC_MISSINGBUILDREQUIRES 11
58
62 struct rpmBuildArguments_s {
63 rpmBuildPkgFlags pkgFlags;
64 rpmBuildFlags buildAmount;
65 char * buildRootOverride;
66 char * cookie;
67 const char * rootdir;
68 };
69
72 typedef struct rpmBuildArguments_s * BTA_t;
73
83 rpmSpec rpmSpecParse(const char *specFile, rpmSpecFlags flags,
84 const char *buildRoot);
85
91 Header rpmSpecSourceHeader(rpmSpec spec);
92
99 rpmps rpmSpecCheckDeps(rpmts ts, rpmSpec spec);
100
107 rpmds rpmSpecDS(rpmSpec spec, rpmTagVal tag);
108
118 int rpmSpecBuild(rpmts ts, rpmSpec spec, BTA_t buildArgs);
119
120 #ifdef __cplusplus
121 }
122 #endif
123
124 #endif /* _H_RPMBUILD_ */
rpmBuildArguments_s::buildRootOverride
char * buildRootOverride
Definition: rpmbuild.h:65
rpmts
struct rpmts_s * rpmts
The main types involved in transaction manipulation.
Definition: rpmtypes.h:63
rpmps
struct rpmps_s * rpmps
Definition: rpmtypes.h:71
rpmFlags
uint32_t rpmFlags
Definition: rpmtypes.h:42
RPMBUILD_PACKAGESOURCE
@ RPMBUILD_PACKAGESOURCE
Definition: rpmbuild.h:29
RPMBUILD_PREP
@ RPMBUILD_PREP
Definition: rpmbuild.h:23
RPMBUILD_DUMPBUILDREQUIRES
@ RPMBUILD_DUMPBUILDREQUIRES
Definition: rpmbuild.h:40
rpmSpecSourceHeader
Header rpmSpecSourceHeader(rpmSpec spec)
Return the headers of the SRPM that would be built from the spec file.
rpmSpecDS
rpmds rpmSpecDS(rpmSpec spec, rpmTagVal tag)
Retrieve build dependency set from spec.
RPMBUILD_INSTALL
@ RPMBUILD_INSTALL
Definition: rpmbuild.h:25
RPMBUILD_PKG_NONE
@ RPMBUILD_PKG_NONE
Definition: rpmbuild.h:51
rpmSpec
struct rpmSpec_s * rpmSpec
Definition: rpmtypes.h:91
rpmSpecParse
rpmSpec rpmSpecParse(const char *specFile, rpmSpecFlags flags, const char *buildRoot)
Parse spec file into spec control structure.
rpmBuildFlags_e
rpmBuildFlags_e
Bit(s) to control rpmSpecBuild() operation.
Definition: rpmbuild.h:21
RPMBUILD_RMSPEC
@ RPMBUILD_RMSPEC
Definition: rpmbuild.h:34
rpmBuildArguments_s::buildAmount
rpmBuildFlags buildAmount
Definition: rpmbuild.h:64
RPMBUILD_NONE
@ RPMBUILD_NONE
Definition: rpmbuild.h:22
RPMBUILD_NOBUILD
@ RPMBUILD_NOBUILD
Definition: rpmbuild.h:42
rpmBuildArguments_s::cookie
char * cookie
Definition: rpmbuild.h:66
rpmBuildFlags
rpmFlags rpmBuildFlags
Definition: rpmbuild.h:45
rpmBuildPkgFlags
rpmFlags rpmBuildPkgFlags
Definition: rpmbuild.h:55
rpmBuildPkgFlags_e
rpmBuildPkgFlags_e
Bit(s) to control package generation.
Definition: rpmbuild.h:50
RPMBUILD_CLEAN
@ RPMBUILD_CLEAN
Definition: rpmbuild.h:27
RPMBUILD_STRINGBUF
@ RPMBUILD_STRINGBUF
Definition: rpmbuild.h:33
BTA_t
struct rpmBuildArguments_s * BTA_t
Definition: rpmbuild.h:72
rpmds
struct rpmds_s * rpmds
Definition: rpmtypes.h:65
rpmBuildArguments_s
Describe build request.
Definition: rpmbuild.h:62
RPMBUILD_PACKAGEBINARY
@ RPMBUILD_PACKAGEBINARY
Definition: rpmbuild.h:30
RPMBUILD_BUILD
@ RPMBUILD_BUILD
Definition: rpmbuild.h:24
RPMBUILD_RMSOURCE
@ RPMBUILD_RMSOURCE
Definition: rpmbuild.h:31
RPMBUILD_PKG_NODIRTOKENS
@ RPMBUILD_PKG_NODIRTOKENS
Definition: rpmbuild.h:52
rpmSpecFlags
rpmFlags rpmSpecFlags
Definition: rpmspec.h:42
rpmSpecCheckDeps
rpmps rpmSpecCheckDeps(rpmts ts, rpmSpec spec)
Verify build depencies of a spec against.
RPMBUILD_FILECHECK
@ RPMBUILD_FILECHECK
Definition: rpmbuild.h:28
RPMBUILD_CHECK
@ RPMBUILD_CHECK
Definition: rpmbuild.h:26
RPMBUILD_RMBUILD
@ RPMBUILD_RMBUILD
Definition: rpmbuild.h:32
rpmBuildArguments_s::pkgFlags
rpmBuildPkgFlags pkgFlags
Definition: rpmbuild.h:63
RPMBUILD_FILE_LIST
@ RPMBUILD_FILE_LIST
Definition: rpmbuild.h:36
Header
struct headerToken_s * Header
RPM header and data retrieval types.
Definition: rpmtypes.h:24
rpmSpecBuild
int rpmSpecBuild(rpmts ts, rpmSpec spec, BTA_t buildArgs)
Spec build stages state machine driver.
RPMBUILD_FILE_FILE
@ RPMBUILD_FILE_FILE
Definition: rpmbuild.h:35
rpmBuildArguments_s::rootdir
const char * rootdir
Definition: rpmbuild.h:67
RPMBUILD_CHECKBUILDREQUIRES
@ RPMBUILD_CHECKBUILDREQUIRES
Definition: rpmbuild.h:38
rpmTagVal
rpm_tag_t rpmTagVal
Definition: rpmtypes.h:30
RPMBUILD_BUILDREQUIRES
@ RPMBUILD_BUILDREQUIRES
Definition: rpmbuild.h:39
RPMBUILD_POLICY
@ RPMBUILD_POLICY
Definition: rpmbuild.h:37