9 #include <rpm/rpmcli.h> 10 #include <rpm/rpmds.h> 13 #include <rpm/rpmstring.h> 16 #include <rpm/rpmspec.h> 41 #define PART_SUBNAME 0 80 #define STRIP_NOTHING 0 81 #define STRIP_TRAILINGSPACE (1 << 0) 82 #define STRIP_COMMENTS (1 << 1) 103 const char *
getUnameS(
const char * uname);
111 uid_t
getUidS(
const char * uname);
127 const char *
getGnameS(
const char * gname);
135 gid_t
getGidS(
const char * gname);
174 rpmParseState
isPart(
const char * line) ;
397 const char * rootDir,
398 const char * buildRoot,
400 const char * passPhrase,
402 int anyarch,
int force);
#define PART_BASE
rpmSpec file parser states.
char * parseExpressionString(rpmSpec spec, const char *expr)
Evaluate string expression.
enum rpmBuildFlags_e rpmBuildFlags
Bit(s) to control buildSpec() operation.
const char * getGname(gid_t gid)
Return cached group name from group id.
void freeNames(void)
Destroy uid/gid caches.
rpmRC parseRCPOT(rpmSpec spec, Package pkg, const char *field, rpmTag tagN, int index, rpmsenseFlags tagflags)
Parse dependency relations from spec file and/or autogenerated output buffer.
int parseDescription(rpmSpec spec)
Parse %description section of a spec file.
Package freePackages(Package packages)
Destroy all packages associated with spec file.
rpmParseState isPart(const char *line)
Check line for section separator, return next parser state.
void handleComments(char *s)
Truncate comment lines.
int parsePrep(rpmSpec spec)
Parse %prep section of a spec file.
int parseChangelog(rpmSpec spec)
Parse %changelog section of a spec file.
int readLine(rpmSpec spec, int strip)
Read next line from spec file.
enum rpmTag_e rpmTag
Tags identify data in package headers.
int addReqProv(rpmSpec spec, Header h, rpmTag tagN, const char *N, const char *EVR, rpmsenseFlags Flags, uint32_t index)
Add dependency to header, filtering duplicates.
const char * getUname(uid_t uid)
Return cached user name from user id.
void initSourceHeader(rpmSpec spec)
Create and initialize header for source package.
const char * buildHost(void)
Return build hostname.
int parseFiles(rpmSpec spec)
Parse %files section of a spec file.
int parseSpec(rpmts ts, const char *specFile, const char *rootDir, const char *buildRoot, int recursing, const char *passPhrase, const char *cookie, int anyarch, int force)
Parse spec file into spec control structure.
The structure used to store values parsed from a spec file.
void addChangelogEntry(Header h, time_t time, const char *name, const char *text)
Add changelog entry to header.
Package newPackage(rpmSpec spec)
Create and initialize package control structure.
rpmRC doRmSource(rpmSpec spec)
Remove all sources assigned to spec file.
int parsePreamble(rpmSpec spec, int initialPackage)
Parse tags from preamble of a spec file.
gid_t getGidS(const char *gname)
Return cached group id.
struct StringBufRec * StringBuf
rpmRC doScript(rpmSpec spec, rpmBuildFlags what, const char *name, StringBuf sb, int test)
Run a build script, assembled from spec file scriptlet section.
int parseBuildInstallClean(rpmSpec spec, rpmParseState parsePart)
Parse %build/%install/%clean section(s) of a spec file.
Package freePackage(Package pkg)
Destroy package control structure.
void closeSpec(rpmSpec spec)
Stop reading from spec file, freeing resources.
rpmRC packageBinaries(rpmSpec spec)
Generate binary package(s).
rpmBuildFlags_e
Bit(s) to control buildSpec() operation.
uint32_t parseUnsignedNum(const char *line, uint32_t *res)
Parse an unsigned number.
rpm_time_t * getBuildTime(void)
Return build time stamp.
struct rpmts_s * rpmts
The main types involved in transaction manipulation.
int parseScript(rpmSpec spec, int parsePart)
Parse %pre et al scriptlets from a spec file.
rpmRC lookupPackage(rpmSpec spec, const char *name, int flag, Package *pkg)
Find sub-package control structure by name.
uid_t getUidS(const char *uname)
Return cached user id.
int processBinaryFiles(rpmSpec spec, int installSpecialDoc, int test)
Post-build processing for binary package(s).
rpmRC rpmCharCheck(rpmSpec spec, char *field, size_t fsize, const char *whitelist)
Check for inappropriate characters.
enum rpmParseState_e rpmParseState
int parseExpressionBoolean(rpmSpec spec, const char *expr)
Evaluate boolean expression.
rpmRC checkPackages(char *pkgcheck)
Check package(s).
The structure used to store values for a package.
enum rpmRC_e rpmRC
Package read return codes.
rpmRC packageSources(rpmSpec spec)
Generate source package.
int processSourceFiles(rpmSpec spec)
Post-build processing for source package.
int rpmlibNeedsFeature(Header h, const char *feature, const char *featureEVR)
Add rpmlib feature dependency.
const char * getUnameS(const char *uname)
Return cached user name.
rpmRC buildSpec(rpmts ts, rpmSpec spec, int what, int test)
Build stages state machine driver.
const char * getGnameS(const char *gname)
Return cached group name.
enum rpmsenseFlags_e rpmsenseFlags
Dependency Attributes.
struct headerToken_s * Header
RPM header and data retrieval types.