rpm 4.15.1

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
rpmFlags
uint32_t rpmFlags
Definition: rpmtypes.h:42
rpmts
struct rpmts_s * rpmts
Definition: rpmtypes.h:63
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)
rpmSpecDS
rpmds rpmSpecDS(rpmSpec spec, rpmTagVal tag)
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:90
rpmSpecParse
rpmSpec rpmSpecParse(const char *specFile, rpmSpecFlags flags, const char *buildRoot)
rpmBuildFlags_e
rpmBuildFlags_e
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
Definition: rpmbuild.h:50
rpmps
struct rpmps_s * rpmps
Definition: rpmtypes.h:71
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
rpmBuildArguments_s
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)
RPMBUILD_FILECHECK
@ RPMBUILD_FILECHECK
Definition: rpmbuild.h:28
RPMBUILD_CHECK
@ RPMBUILD_CHECK
Definition: rpmbuild.h:26
rpmTagVal
rpm_tag_t rpmTagVal
Definition: rpmtypes.h:30
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
Definition: rpmtypes.h:24
rpmSpecBuild
int rpmSpecBuild(rpmts ts, rpmSpec spec, BTA_t buildArgs)
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
RPMBUILD_BUILDREQUIRES
@ RPMBUILD_BUILDREQUIRES
Definition: rpmbuild.h:39
RPMBUILD_POLICY
@ RPMBUILD_POLICY
Definition: rpmbuild.h:37
rpmds
struct rpmds_s * rpmds
Definition: rpmtypes.h:65