#include <rpmcli.h>
#include "stringbuf.h"
#include "misc.h"
#include "rpmspec.h"
#include <ctype.h>
Go to the source code of this file.
Defines | ||||
#define | SKIPSPACE(s) { while (*(s) && xisspace(*(s))) (s)++; } | |||
#define | SKIPNONSPACE(s) { while (*(s) && !xisspace(*(s))) (s)++; } | |||
#define | PART_SUBNAME 0 | |||
#define | PART_NAME 1 | |||
#define | STRIP_NOTHING 0 | |||
#define | STRIP_TRAILINGSPACE (1 << 0) | |||
#define | STRIP_COMMENTS (1 << 1) | |||
Typedefs | ||||
typedef enum rpmBuildFlags_e | rpmBuildFlags | |||
Bit(s) to control buildSpec() operation. | ||||
typedef enum rpmParseState_e | rpmParseState | |||
Spec file parser states. | ||||
Enumerations | ||||
enum | rpmBuildFlags_e { RPMBUILD_NONE = 0, RPMBUILD_PREP = (1 << 0), RPMBUILD_BUILD = (1 << 1), RPMBUILD_INSTALL = (1 << 2), RPMBUILD_CLEAN = (1 << 3), RPMBUILD_FILECHECK = (1 << 4), RPMBUILD_PACKAGESOURCE = (1 << 5), RPMBUILD_PACKAGEBINARY = (1 << 6), RPMBUILD_RMSOURCE = (1 << 7), RPMBUILD_RMBUILD = (1 << 8), RPMBUILD_STRINGBUF = (1 << 9), RPMBUILD_RMSPEC = (1 << 10) } | |||
Bit(s) to control buildSpec() operation. More... | ||||
enum | rpmParseState_e { PART_NONE = 0, PART_PREAMBLE = 1, PART_PREP = 2, PART_BUILD = 3, PART_INSTALL = 4, PART_CLEAN = 5, PART_FILES = 6, PART_PRE = 7, PART_POST = 8, PART_PREUN = 9, PART_POSTUN = 10, PART_DESCRIPTION = 11, PART_CHANGELOG = 12, PART_TRIGGERIN = 13, PART_TRIGGERUN = 14, PART_VERIFYSCRIPT = 15, PART_BUILDARCHITECTURES = 16, PART_TRIGGERPOSTUN = 17, PART_LAST = 18 } | |||
Spec file parser states. More... | ||||
Functions | ||||
void | freeNames (void) | |||
Destroy uid/gid caches. | ||||
const char * | getUname (uid_t uid) | |||
Return cached user name from user id. | ||||
const char * | getUnameS (const char *uname) | |||
Return cached user name. | ||||
uid_t | getUidS (const char *uname) | |||
Return cached user id. | ||||
const char * | getGname (gid_t gid) | |||
Return cached group name from group id. | ||||
const char * | getGnameS (const char *gname) | |||
Return cached group name. | ||||
gid_t | getGidS (const char *gname) | |||
Return cached group id. | ||||
const char *const | buildHost (void) | |||
Return build hostname. | ||||
int_32 *const | getBuildTime (void) | |||
Return build time stamp. | ||||
int | readLine (Spec spec, int strip) | |||
Read next line from spec file. | ||||
void | closeSpec (Spec spec) | |||
Stop reading from spec file, freeing resources. | ||||
void | handleComments (char *s) | |||
Truncate comment lines. | ||||
rpmParseState | isPart (const char *line) | |||
Check line for section separator, return next parser state. | ||||
int | parseNum (const char *line, int *res) | |||
Parse a number. | ||||
void | addChangelogEntry (Header h, time_t time, const char *name, const char *text) | |||
Add changelog entry to header. | ||||
int | parseBuildInstallClean (Spec spec, rpmParseState parsePart) | |||
Parse %build/%install/%clean section(s) of a spec file. | ||||
int | parseChangelog (Spec spec) | |||
Parse %changelog section of a spec file. | ||||
int | parseDescription (Spec spec) | |||
Parse %description section of a spec file. | ||||
int | parseFiles (Spec spec) | |||
Parse %files section of a spec file. | ||||
int | parsePreamble (Spec spec, int initialPackage) | |||
Parse tags from preamble of a spec file. | ||||
int | parsePrep (Spec spec) | |||
Parse %prep section of a spec file. | ||||
int | parseRCPOT (Spec spec, Package pkg, const char *field, int tag, int index, rpmsenseFlags tagflags) | |||
Parse dependency relations from spec file and/or autogenerated output buffer. | ||||
int | parseScript (Spec spec, int parsePart) | |||
Parse %pre et al scriptlets from a spec file. | ||||
int | parseExpressionBoolean (Spec spec, const char *expr) | |||
Evaluate boolean expression. | ||||
char * | parseExpressionString (Spec spec, const char *expr) | |||
Evaluate string expression. | ||||
int | doScript (Spec spec, int what, const char *name, StringBuf sb, int test) | |||
Run a build script, assembled from spec file scriptlet section. | ||||
int | lookupPackage (Spec spec, const char *name, int flag, Package *pkg) | |||
Find sub-package control structure by name. | ||||
Package | newPackage (Spec spec) | |||
Create and initialize package control structure. | ||||
Package | freePackages (Package packages) | |||
Destroy all packages associated with spec file. | ||||
Package | freePackage (Package pkg) | |||
Destroy package control structure. | ||||
int | addReqProv (Spec spec, Header h, rpmsenseFlags depFlags, const char *depName, const char *depEVR, int index) | |||
Add dependency to header, filtering duplicates. | ||||
int | rpmlibNeedsFeature (Header h, const char *feature, const char *featureEVR) | |||
Add rpmlib feature dependency. | ||||
int | processBinaryFiles (Spec spec, int installSpecialDoc, int test) | |||
Post-build processing for binary package(s). | ||||
void | initSourceHeader (Spec spec) | |||
Create and initialize header for source package. | ||||
int | processSourceFiles (Spec spec) | |||
Post-build processing for source package. | ||||
int | parseSpec (Spec *specp, const char *specFile, const char *rootURL, const char *buildRootURL, int recursing, const char *passPhrase, char *cookie, int anyarch, int force) | |||
Parse spec file into spec control structure. | ||||
int | buildSpec (Spec spec, int what, int test) | |||
Build stages state machine driver. | ||||
int | packageBinaries (Spec spec) | |||
Generate binary package(s). | ||||
int | packageSources (Spec spec) | |||
Generate source package. | ||||
Variables | ||||
int(*) | parseSpecVec (Spec *specp, const char *specFile, const char *rootdir, const char *buildRoot, int recursing, const char *passPhrase, char *cookie, int anyarch, int force) | |||
|
Definition in file rpmbuild.h.
#define PART_NAME 1 |
Definition at line 46 of file rpmbuild.h.
Referenced by parseDescription(), parseFiles(), parseScript(), and parseSimplePart().
#define PART_SUBNAME 0 |
Definition at line 45 of file rpmbuild.h.
Referenced by lookupPackage(), parseDescription(), parseFiles(), parsePreamble(), parseScript(), and parseSimplePart().
#define SKIPNONSPACE | ( | s | ) | { while (*(s) && !xisspace(*(s))) (s)++; } |
Definition at line 43 of file rpmbuild.h.
Referenced by addChangelog(), dateToTimet(), handlePreambleTag(), matchTok(), and readLine().
#define SKIPSPACE | ( | s | ) | { while (*(s) && xisspace(*(s))) (s)++; } |
Definition at line 42 of file rpmbuild.h.
Referenced by addChangelog(), addSource(), dateToTimet(), findPreambleTag(), handleComments(), handlePreambleTag(), matchTok(), parseForAttr(), parseForConfig(), parseForDev(), parseForLang(), parseForVerify(), parsePreamble(), processPackageFiles(), processSourceFiles(), and readLine().
#define STRIP_COMMENTS (1 << 1) |
Definition at line 75 of file rpmbuild.h.
Referenced by copyNextLine(), parseChangelog(), parseDescription(), parseFiles(), and parsePreamble().
#define STRIP_NOTHING 0 |
Definition at line 73 of file rpmbuild.h.
Referenced by parseBuildInstallClean(), parsePrep(), and parseScript().
#define STRIP_TRAILINGSPACE (1 << 0) |
Definition at line 74 of file rpmbuild.h.
Referenced by copyNextLine(), parseDescription(), and parsePreamble().