Files | |
file | build.c |
Top-level build dispatcher. | |
file | buildio.h |
Routines to read and write packages. | |
file | expression.c |
Simple logical expression parser. | |
file | files.c |
The post-build, pre-packaging file tree walk to assemble the package manifest. | |
file | misc.c |
file | names.c |
Simple user/group name/id cache (plus hostname and buildtime). | |
file | pack.c |
Assemble components of an RPM package. | |
file | parseBuildInstallClean.c |
Parse build/install/clean section from spec file. | |
file | parseChangelog.c |
Parse changelog section from spec file. | |
file | parseDescription.c |
Parse description section from spec file. | |
file | parseFiles.c |
Parse files section from spec file. | |
file | parsePreamble.c |
Parse tags in global section from spec file. | |
file | parsePrep.c |
Parse prep section from spec file. | |
file | parseReqs.c |
Parse dependency tag from spec file or from auto-dependency generator. | |
file | parseScript.c |
Parse install-time script section from spec file. | |
file | parseSpec.c |
Top level dispatcher for spec file parsing. | |
file | reqprov.c |
Add dependency tags to package header(s). | |
file | rpmbuild.h |
This is the *only* module users of librpmbuild should need to include. | |
file | rpmcli.h |
file | rpmspec.h |
The Spec and Package data structures used during build. | |
file | spec.c |
Handle spec data structure. | |
Data Structures | |
struct | OpenFileInfo |
struct | Package_s |
struct | ReadLevelEntry |
struct | Source |
struct | Spec_s |
struct | speclines_s |
struct | spectag_s |
struct | spectags_s |
struct | TriggerFileEntry |
Typedefs | |
typedef enum rpmBuildFlags_e | rpmBuildFlags |
typedef enum rpmParseState_e | rpmParseState |
typedef Package_s * | Package |
typedef ReadLevelEntry | RLE_t |
typedef OpenFileInfo | OFI_t |
typedef spectag_s * | spectag |
typedef spectags_s * | spectags |
typedef speclines_s * | speclines |
typedef Spec_s * | Spec |
Enumerations | |
enum | rpmBuildFlags_e { RPMBUILD_NONE = 0, RPMBUILD_PREP = (1 << 0), RPMBUILD_BUILD = (1 << 1), RPMBUILD_INSTALL = (1 << 2), RPMBUILD_CHECK = (1 << 3), RPMBUILD_CLEAN = (1 << 4), RPMBUILD_FILECHECK = (1 << 5), RPMBUILD_PACKAGESOURCE = (1 << 6), RPMBUILD_PACKAGEBINARY = (1 << 7), RPMBUILD_RMSOURCE = (1 << 8), RPMBUILD_RMBUILD = (1 << 9), RPMBUILD_STRINGBUF = (1 << 10), RPMBUILD_RMSPEC = (1 << 11) } |
enum | rpmParseState_e { PART_NONE = 0, PART_PREAMBLE = 1, PART_PREP = 2, PART_BUILD = 3, PART_INSTALL = 4, PART_CHECK = 5, PART_CLEAN = 6, PART_FILES = 7, PART_PRE = 8, PART_POST = 9, PART_PREUN = 10, PART_POSTUN = 11, PART_DESCRIPTION = 12, PART_CHANGELOG = 13, PART_TRIGGERIN = 14, PART_TRIGGERUN = 15, PART_VERIFYSCRIPT = 16, PART_BUILDARCHITECTURES = 17, PART_TRIGGERPOSTUN = 18, PART_LAST = 19 } |
Functions | |
void | freeNames (void) |
const char * | getUname (uid_t uid) |
const char * | getUnameS (const char *uname) |
uid_t | getUidS (const char *uname) |
const char * | getGname (gid_t gid) |
const char * | getGnameS (const char *gname) |
gid_t | getGidS (const char *gname) |
const char *const | buildHost (void) |
int_32 *const | getBuildTime (void) |
int | readLine (Spec spec, int strip) |
void | closeSpec (Spec spec) |
void | handleComments (char *s) |
rpmParseState | isPart (const char *line) |
int | parseNum (const char *line, int *res) |
void | addChangelogEntry (Header h, time_t time, const char *name, const char *text) |
int | parseBuildInstallClean (Spec spec, rpmParseState parsePart) |
int | parseChangelog (Spec spec) |
int | parseDescription (Spec spec) |
int | parseFiles (Spec spec) |
int | parsePreamble (Spec spec, int initialPackage) |
int | parsePrep (Spec spec) |
int | parseRCPOT (Spec spec, Package pkg, const char *field, int tag, int index, rpmsenseFlags tagflags) |
int | parseScript (Spec spec, int parsePart) |
int | parseExpressionBoolean (Spec spec, const char *expr) |
char * | parseExpressionString (Spec spec, const char *expr) |
int | doScript (Spec spec, int what, const char *name, StringBuf sb, int test) |
int | lookupPackage (Spec spec, const char *name, int flag, Package *pkg) |
Package | newPackage (Spec spec) |
Package | freePackages (Package packages) |
Package | freePackage (Package pkg) |
int | addReqProv (Spec spec, Header h, rpmsenseFlags depFlags, const char *depName, const char *depEVR, int index) |
int | rpmlibNeedsFeature (Header h, const char *feature, const char *featureEVR) |
int | processBinaryFiles (Spec spec, int installSpecialDoc, int test) |
void | initSourceHeader (Spec spec) |
int | processSourceFiles (Spec spec) |
int | parseSpec (rpmts ts, const char *specFile, const char *rootURL, const char *buildRootURL, int recursing, const char *passPhrase, char *cookie, int anyarch, int force) |
int | buildSpec (rpmts ts, Spec spec, int what, int test) |
int | packageBinaries (Spec spec) |
int | packageSources (Spec spec) |
StringBuf | getOutputFrom (const char *dir, ARGV_t argv, const char *writePtr, int writeBytesLeft, int failNonZero) |
Spec | newSpec (void) |
Spec | freeSpec (Spec spec) |
int | rpmspecQuery (rpmts ts, QVA_t qva, const char *arg) |
OpenFileInfo * | newOpenFileInfo (void) |
spectag | stashSt (Spec spec, Header h, int tag, const char *lang) |
int | addSource (Spec spec, Package pkg, const char *field, int tag) |
int | parseNoSource (Spec spec, const char *field, int tag) |
|
|
|
|
|
|
|
Bit(s) to control buildSpec() operation. |
|
Spec file parser states. Referenced by isPart(), parseBuildInstallClean(), and parseSpec(). |
|
|
|
|
|
|
|
|
|
Bit(s) to control buildSpec() operation.
Definition at line 22 of file rpmbuild.h. |
|
Spec file parser states.
Definition at line 52 of file rpmbuild.h. |
|
Add changelog entry to header.
Definition at line 11 of file parseChangelog.c. References headerAddEntry(), headerAppendEntry(), headerIsEntry(), int_32, RPM_INT32_TYPE, RPM_STRING_ARRAY_TYPE, RPMTAG_CHANGELOGNAME, RPMTAG_CHANGELOGTEXT, and RPMTAG_CHANGELOGTIME. Referenced by addChangelog(), and headerInject(). |
|
|
Definition at line 257 of file spec.c. References _, _free(), addMacro(), Source::flags, Source::fullSource, Package_s::icon, Spec_s::line, Spec_s::lineNum, Spec_s::macros, Source::next, Source::num, Spec_s::numSources, parseNum(), RMIL_SPEC, RPMBUILD_ISICON, RPMBUILD_ISPATCH, RPMBUILD_ISSOURCE, RPMERR_BADSPEC, rpmError, rpmGetPath(), RPMTAG_ICON, RPMTAG_PATCH, RPMTAG_SOURCE, SKIPSPACE, Source::source, Spec_s::sources, xmalloc(), and xstrdup(). Referenced by handlePreambleTag(). |
|
Return build hostname.
Definition at line 196 of file names.c. References _, RPMMESS_WARNING, and rpmMessage. Referenced by headerInject(), and writeRPM(). |
|
Build stages state machine driver.
Definition at line 273 of file build.c. References _, Spec_s::BACount, Spec_s::BASpecs, doRmSource(), doScript(), packageBinaries(), packageSources(), processBinaryFiles(), processSourceFiles(), Spec_s::recursing, RPMBUILD_BUILD, RPMBUILD_CHECK, RPMBUILD_CLEAN, RPMBUILD_FILECHECK, RPMBUILD_INSTALL, RPMBUILD_PACKAGEBINARY, RPMBUILD_PACKAGESOURCE, RPMBUILD_PREP, RPMBUILD_RMBUILD, RPMBUILD_RMSOURCE, RPMBUILD_RMSPEC, rpmlogGetNrecs(), rpmlogPrint(), RPMMESS_NORMAL, rpmMessage, rpmts, Spec_s::specFile, and Unlink(). Referenced by buildForTarget(). |
|
Stop reading from spec file, freeing resources.
Definition at line 376 of file parseSpec.c. References _free(), Fclose(), OpenFileInfo::fd, OpenFileInfo::fileName, Spec_s::fileStack, and OpenFileInfo::next. Referenced by freeSpec(), and parseSpec(). |
|
Run a build script, assembled from spec file scriptlet section.
Definition at line 56 of file build.c. References _, _free(), addMacro(), argv, Spec_s::build, Spec_s::buildSubdir, Spec_s::check, Spec_s::clean, delMacro(), errno, Fclose(), fdGetFp(), Fdopen(), Ferror(), Fileno(), getStringBuf(), urlinfo_s::host, Spec_s::install, Spec_s::macros, makeTempFile(), poptParseArgvString(), Spec_s::prep, RMIL_SPEC, Spec_s::rootURL, RPMBUILD_BUILD, RPMBUILD_CHECK, RPMBUILD_CLEAN, RPMBUILD_INSTALL, RPMBUILD_PREP, RPMBUILD_RMBUILD, RPMBUILD_STRINGBUF, RPMERR_SCRIPT, rpmError, rpmExpand(), rpmGenPath(), RPMMESS_NORMAL, rpmMessage, strerror(), Unlink(), URL_IS_FTP, URL_IS_HTTP, URL_IS_PATH, URL_IS_UNKNOWN, urlPath(), urlSplit(), and urlinfo_s::urltype. Referenced by buildSpec(), and processPackageFiles(). |
|
Destroy uid/gid caches. Definition at line 30 of file names.c. References _free(), gid_used, gnames, uid_used, and unames. Referenced by main(). |
|
Destroy package control structure.
Definition at line 157 of file spec.c. References _free(), Package_s::cpioList, Package_s::ds, Package_s::fileFile, Package_s::fileList, freeSources(), freeStringBuf(), freeTriggerFiles(), Package_s::header, headerFree(), Package_s::icon, Package_s::postInFile, Package_s::postUnFile, Package_s::preInFile, Package_s::preUnFile, rpmdsFree(), rpmfi, rpmfiFree(), Package_s::specialDoc, Package_s::triggerFiles, and Package_s::verifyFile. Referenced by freePackages(). |
|
Destroy all packages associated with spec file.
Definition at line 185 of file spec.c. References freePackage(), and Package_s::next. Referenced by freeSpec(). |
|
Destroy Spec structure.
Definition at line 480 of file spec.c. References _free(), Spec_s::BACount, Spec_s::BANames, Spec_s::BASpecs, Spec_s::build, Spec_s::buildRestrictions, Spec_s::buildRootURL, Spec_s::buildSubdir, Spec_s::check, Spec_s::clean, closeSpec(), Spec_s::cookie, OpenFileInfo::fileName, Spec_s::fileStack, freePackages(), freeSl(), freeSources(), freeSt(), freeStringBuf(), headerFree(), Spec_s::install, OpenFileInfo::next, ReadLevelEntry::next, Spec_s::packages, Spec_s::passPhrase, Spec_s::prep, Spec_s::readStack, Spec_s::recursing, Spec_s::rootURL, rpmfi, rpmfiFree(), Spec_s::sl, Spec_s::sourceCpioList, Spec_s::sourceHeader, Spec_s::sourcePkgId, Spec_s::sourceRpmName, Spec_s::sources, Spec_s::specFile, and Spec_s::st. Referenced by buildForTarget(), parseSpec(), readRPM(), and rpmspecQuery(). |
|
Return build time stamp.
Definition at line 184 of file names.c. References int_32. Referenced by headerInject(), and writeRPM(). |
|
Return cached group id.
Definition at line 161 of file names.c. References _, gid_used, gids, gnames, rpmlog(), RPMLOG_CRIT, and xstrdup(). Referenced by genCpioListAndHeader(). |
|
Return cached group name from group id.
Definition at line 113 of file names.c. References _, gid_used, gids, gnames, rpmlog(), RPMLOG_CRIT, and xstrdup(). Referenced by addFile(), checkOwners(), and processSourceFiles(). |
|
Return cached group name.
Definition at line 137 of file names.c. References _, gid_used, gids, gnames, rpmlog(), RPMLOG_CRIT, and xstrdup(). Referenced by addFile(). |
|
Return output from helper script.
Definition at line 54 of file rpmfc.c. References _, appendStringBuf, argv, ARGV_t, errno, EXIT_FAILURE, newStringBuf(), RPMERR_EXEC, RPMERR_FORK, rpmError, RPMMESS_DEBUG, rpmMessage, strerror(), and unsetenv(). Referenced by rpmfcExec(). |
|
Return cached user id.
Definition at line 89 of file names.c. References _, rpmlog(), RPMLOG_CRIT, uid_used, uids, unames, and xstrdup(). Referenced by genCpioListAndHeader(). |
|
Return cached user name from user id.
Definition at line 41 of file names.c. References _, rpmlog(), RPMLOG_CRIT, uid_used, uids, unames, and xstrdup(). Referenced by addFile(), checkOwners(), headerInject(), and processSourceFiles(). |
|
Return cached user name.
Definition at line 65 of file names.c. References _, rpmlog(), RPMLOG_CRIT, uid_used, uids, unames, and xstrdup(). Referenced by addFile(). |
|
Truncate comment lines.
Definition at line 108 of file parseSpec.c. References SKIPSPACE. Referenced by copyNextLine(), and processPackageFiles(). |
|
Create and initialize header for source package.
Definition at line 2153 of file files.c. References Spec_s::BACount, Spec_s::BANames, Spec_s::buildRestrictions, Package_s::header, HEADER_I18NTABLE, headerAddEntry(), headerFreeData(), headerFreeIterator(), headerInitIterator(), headerNew(), headerNextIterator(), int_32, Spec_s::packages, RPM_STRING_ARRAY_TYPE, RPMTAG_ARCH, RPMTAG_BUILDARCHS, RPMTAG_CHANGELOGNAME, RPMTAG_CHANGELOGTEXT, RPMTAG_CHANGELOGTIME, RPMTAG_DESCRIPTION, RPMTAG_DISTRIBUTION, RPMTAG_DISTURL, RPMTAG_EPOCH, RPMTAG_GROUP, RPMTAG_LICENSE, RPMTAG_NAME, RPMTAG_OS, RPMTAG_PACKAGER, RPMTAG_RELEASE, RPMTAG_SUMMARY, RPMTAG_URL, RPMTAG_VENDOR, RPMTAG_VERSION, and Spec_s::sourceHeader. Referenced by buildForTarget(), and processSourceFiles(). |
|
Check line for section separator, return next parser state.
Definition at line 58 of file parseSpec.c. References initParts(), PartRec::len, PartRec::part, PART_NONE, partList, rpmParseState, PartRec::token, xisspace(), and xstrncasecmp(). Referenced by parseBuildInstallClean(), parseChangelog(), parseDescription(), parseFiles(), parsePreamble(), parsePrep(), and parseScript(). |
|
Find sub-package control structure by name.
Definition at line 67 of file spec.c. References alloca(), Package_s::header, headerNVR(), Package_s::next, Spec_s::packages, and PART_SUBNAME. Referenced by parseDescription(), parseFiles(), parsePreamble(), and parseScript(). |
|
Definition at line 563 of file spec.c. References OpenFileInfo::fd, OpenFileInfo::fileName, OpenFileInfo::lineNum, OpenFileInfo::next, OpenFileInfo::readBuf, OpenFileInfo::readPtr, and xmalloc(). Referenced by forceIncludeFile(), and parseSpec(). |
|
Create and initialize package control structure.
Definition at line 109 of file spec.c. References Package_s::autoProv, Package_s::autoReq, Package_s::cpioList, Package_s::ds, Package_s::fileFile, Package_s::fileList, Package_s::header, headerNew(), Package_s::icon, Package_s::next, Spec_s::packages, Package_s::postInFile, Package_s::postUnFile, Package_s::preInFile, Package_s::preUnFile, Package_s::specialDoc, Package_s::triggerFiles, Package_s::verifyFile, and xcalloc(). Referenced by parsePreamble(), and readRPM(). |
|
Create and initialize Spec structure.
Definition at line 420 of file spec.c. References Spec_s::anyarch, Spec_s::BACount, Spec_s::BANames, Spec_s::BASpecs, Spec_s::build, Spec_s::buildRestrictions, Spec_s::buildRootURL, Spec_s::buildSubdir, Spec_s::check, Spec_s::clean, Spec_s::cookie, Spec_s::fileStack, Spec_s::force, Spec_s::gotBuildRootURL, headerNew(), Spec_s::install, Spec_s::lbuf, Spec_s::line, Spec_s::lineNum, Spec_s::macros, newSl, newSt, ReadLevelEntry::next, Spec_s::nextline, Spec_s::nextpeekc, Spec_s::noSource, Spec_s::numSources, Spec_s::packages, Spec_s::passPhrase, Spec_s::prep, ReadLevelEntry::reading, Spec_s::readStack, Spec_s::recursing, Spec_s::rootURL, Spec_s::sl, Spec_s::sourceCpioList, Spec_s::sourceHeader, Spec_s::sourcePkgId, Spec_s::sourceRpmName, Spec_s::sources, Spec_s::specFile, Spec_s::st, Spec_s::timeCheck, and xcalloc(). Referenced by parseSpec(), and readRPM(). |
|
Generate binary package(s).
Definition at line 742 of file pack.c. References _, _free(), Spec_s::cookie, copyTags, Package_s::cpioList, errno, fdFree, fdNew, Package_s::fileList, genSourceRpmName(), Package_s::header, headerAddEntry(), headerCopyTags(), headerNVR(), headerSprintf(), Mkdir(), Package_s::next, Spec_s::packages, Spec_s::passPhrase, processScriptFiles(), providePackageNVR(), RPM_BIN_TYPE, RPM_INT32_TYPE, RPM_STRING_TYPE, RPMERR_BADFILENAME, rpmError, rpmExpand(), rpmfiFree(), rpmfiLink, rpmGetPath(), RPMLEAD_BINARY, RPMTAG_BUILDHOST, RPMTAG_BUILDTIME, RPMTAG_COOKIE, RPMTAG_OPTFLAGS, RPMTAG_RPMVERSION, RPMTAG_SOURCEPKGID, RPMTAG_SOURCERPM, Spec_s::sourcePkgId, Spec_s::sourceRpmName, Stat(), strerror(), VERSION, and writeRPM(). Referenced by buildSpec(). |
|
Generate source package.
Definition at line 849 of file pack.c. References _free(), Spec_s::cookie, fdFree, fdNew, genSourceRpmName(), headerAddEntry(), Spec_s::passPhrase, RPM_INT32_TYPE, RPM_STRING_TYPE, rpmfiFree(), rpmfiLink, rpmGetPath(), RPMLEAD_SOURCE, RPMTAG_BUILDHOST, RPMTAG_BUILDTIME, RPMTAG_RPMVERSION, Spec_s::sourceCpioList, Spec_s::sourceHeader, Spec_s::sourcePkgId, Spec_s::sourceRpmName, VERSION, and writeRPM(). Referenced by buildSpec(). |
|
Parse %build/%install/%clean section(s) of a spec file.
Definition at line 13 of file parseBuildInstallClean.c. References _, appendStringBuf, Spec_s::build, Spec_s::check, Spec_s::clean, Spec_s::install, isPart(), Spec_s::line, Spec_s::lineNum, newStringBuf(), PART_BUILD, PART_CHECK, PART_CLEAN, PART_INSTALL, PART_NONE, readLine(), RPMERR_BADSPEC, rpmError, rpmParseState, and STRIP_NOTHING. Referenced by parseSpec(). |
|
Parse %changelog section of a spec file.
Definition at line 209 of file parseChangelog.c. References addChangelog(), appendStringBuf, freeStringBuf(), Package_s::header, isPart(), Spec_s::line, newStringBuf(), Spec_s::packages, PART_NONE, readLine(), and STRIP_COMMENTS. Referenced by parseSpec(). |
|
Parse %description section of a spec file.
Definition at line 29 of file parseDescription.c. References _, _free(), appendLineStringBuf, argv, freeStringBuf(), Package_s::header, headerAddI18NString(), headerIsEntry(), isPart(), lang, Spec_s::line, Spec_s::lineNum, lookupPackage(), name, newStringBuf(), noLang, PART_NAME, PART_NONE, PART_SUBNAME, POPT_BADOPTION_NOALIAS, poptFreeContext(), poptGetArg(), poptGetContext(), poptGetNextOpt(), poptParseArgvString(), poptPeekArg(), readLine(), RPMBUILD_DEFAULT_LANG, RPMERR_BADSPEC, rpmError, RPMTAG_DESCRIPTION, stashSt(), STRIP_COMMENTS, STRIP_TRAILINGSPACE, stripTrailingBlanksStringBuf(), and spectag_s::t_nlines. Referenced by parseSpec(). |
|
Evaluate boolean expression.
Definition at line 678 of file expression.c. References _, _free(), _value::data, DEBUG, doLogical(), _parseState::nextToken, _parseState::p, rdToken(), RPMERR_BADSPEC, rpmError, _parseState::spec, _parseState::str, TOK_EOF, _parseState::tokenValue, _value::type, valueFree(), and xstrdup(). Referenced by readLine(). |
|
Evaluate string expression.
Definition at line 727 of file expression.c. References _, _free(), _value::data, DEBUG, doLogical(), _parseState::nextToken, _parseState::p, rdToken(), RPMERR_BADSPEC, rpmError, _parseState::spec, _parseState::str, TOK_EOF, _parseState::tokenValue, _value::type, valueFree(), and xstrdup(). |
|
Parse %files section of a spec file.
Definition at line 26 of file parseFiles.c. References _, _free(), appendStringBuf, argv, file, Package_s::fileFile, Package_s::fileList, isPart(), Spec_s::line, Spec_s::lineNum, lookupPackage(), name, newStringBuf(), PART_NAME, PART_NONE, PART_SUBNAME, POPT_BADOPTION_NOALIAS, poptFreeContext(), poptGetArg(), poptGetContext(), poptGetNextOpt(), poptParseArgvString(), poptPeekArg(), readLine(), RPMERR_BADSPEC, rpmError, rpmGetPath(), and STRIP_COMMENTS. Referenced by parseSpec(). |
|
Definition at line 211 of file spec.c. References _, findSource(), Source::flags, Spec_s::lineNum, parseNum(), RPMBUILD_ISNO, RPMBUILD_ISPATCH, RPMBUILD_ISSOURCE, RPMERR_BADSPEC, rpmError, RPMTAG_NOSOURCE, SKIPNONWHITE, and SKIPWHITE. Referenced by handlePreambleTag(). |
|
Parse a number.
Definition at line 10 of file misc.c. Referenced by addSource(), doPatchMacro(), doSetupMacro(), handlePreambleTag(), and parseNoSource(). |
|
Parse tags from preamble of a spec file.
Definition at line 855 of file parsePreamble.c. References _, Spec_s::anyarch, Spec_s::BANames, Spec_s::buildRootURL, checkForDuplicates(), checkForRequired(), checkForValidArchitectures(), copyTagsDuringParse, fillOutMainPackage(), findPreambleTag(), Spec_s::gotBuildRootURL, handlePreambleTag(), Package_s::header, headerAddEntry(), headerCopyTags(), headerNVR(), int_32, isPart(), Spec_s::line, Spec_s::lineNum, lookupPackage(), newPackage(), Spec_s::packages, parseSimplePart(), PART_BUILDARCHITECTURES, PART_NONE, PART_SUBNAME, readLine(), Spec_s::recursing, RPM_STRING_TYPE, RPMERR_BADSPEC, rpmError, RPMTAG_NAME, SKIPSPACE, STRIP_COMMENTS, and STRIP_TRAILINGSPACE. Referenced by parseSpec(). |
|
Parse %prep section of a spec file.
Definition at line 550 of file parsePrep.c. References _, appendLineStringBuf, appendStringBuf, doPatchMacro(), doSetupMacro(), Spec_s::force, freeSplitString(), freeStringBuf(), getStringBuf(), isPart(), Spec_s::line, Spec_s::lineNum, newStringBuf(), PART_NONE, Spec_s::prep, readLine(), RPMERR_BADSPEC, rpmError, splitString(), and STRIP_NOTHING. Referenced by parseSpec(). |
|
Parse dependency relations from spec file and/or autogenerated output buffer.
Definition at line 35 of file parseReqs.c. References _, _free(), addReqProv(), Spec_s::buildRestrictions, Package_s::header, Spec_s::line, Spec_s::lineNum, ReqComparisons, RPMERR_BADSPEC, rpmError, rpmExpandNumeric(), rpmlibNeedsFeature(), RPMSENSE_ANY, RPMSENSE_CONFLICTS, RPMSENSE_OBSOLETES, RPMSENSE_PREREQ, RPMSENSE_PROVIDES, RPMSENSE_SENSEMASK, RPMSENSE_TRIGGERIN, RPMSENSE_TRIGGERPOSTUN, RPMSENSE_TRIGGERUN, rpmsenseFlags, RPMTAG_BUILDCONFLICTS, RPMTAG_BUILDPREREQ, RPMTAG_BUILDREQUIRES, RPMTAG_CONFLICTFLAGS, RPMTAG_OBSOLETEFLAGS, RPMTAG_PREREQ, RPMTAG_PROVIDEFLAGS, RPMTAG_REQUIREFLAGS, RPMTAG_TRIGGERIN, RPMTAG_TRIGGERPOSTUN, RPMTAG_TRIGGERUN, ReqComp::sense, SKIPNONWHITE, SKIPWHITE, ReqComp::token, xisalnum(), and xmalloc(). Referenced by handlePreambleTag(), parseScript(), and rpmfcGenerateDependsHelper(). |
|
Parse %pre et al scriptlets from a spec file.
Definition at line 70 of file parseScript.c. References _, _free(), addReqProv(), addTriggerIndex(), appendStringBuf, argv, file, freeStringBuf(), getStringBuf(), Package_s::header, headerAddEntry(), headerIsEntry(), isPart(), Spec_s::line, Spec_s::lineNum, lookupPackage(), name, newStringBuf(), parseRCPOT(), PART_NAME, PART_NONE, PART_POST, PART_POSTUN, PART_PRE, PART_PREUN, PART_SUBNAME, PART_TRIGGERIN, PART_TRIGGERPOSTUN, PART_TRIGGERUN, PART_VERIFYSCRIPT, POPT_BADOPTION_NOALIAS, poptFreeContext(), poptGetArg(), poptGetContext(), poptGetNextOpt(), poptParseArgvString(), poptPeekArg(), Package_s::postInFile, Package_s::postUnFile, Package_s::preInFile, Package_s::preUnFile, prog, readLine(), RPM_STRING_ARRAY_TYPE, RPM_STRING_TYPE, RPMERR_BADSPEC, rpmError, rpmlibNeedsFeature(), RPMSENSE_INTERP, RPMSENSE_SCRIPT_POST, RPMSENSE_SCRIPT_POSTUN, RPMSENSE_SCRIPT_PRE, RPMSENSE_SCRIPT_PREUN, RPMSENSE_SCRIPT_VERIFY, RPMTAG_POSTIN, RPMTAG_POSTINPROG, RPMTAG_POSTUN, RPMTAG_POSTUNPROG, RPMTAG_PREIN, RPMTAG_PREINPROG, RPMTAG_PREUN, RPMTAG_PREUNPROG, RPMTAG_TRIGGERIN, RPMTAG_TRIGGERPOSTUN, RPMTAG_TRIGGERSCRIPTPROG, RPMTAG_TRIGGERSCRIPTS, RPMTAG_TRIGGERUN, RPMTAG_VERIFYSCRIPT, RPMTAG_VERIFYSCRIPTPROG, STRIP_NOTHING, stripTrailingBlanksStringBuf(), Package_s::verifyFile, and xstrdup(). Referenced by parseSpec(). |
|
Parse spec file into spec control structure.
Definition at line 396 of file parseSpec.c. References _, _free(), addMacro(), Spec_s::anyarch, Spec_s::BACount, Spec_s::BANames, Spec_s::BASpecs, Spec_s::buildRootURL, closeSpec(), Spec_s::cookie, delMacro(), Package_s::ds, OpenFileInfo::fileName, Spec_s::fileStack, Spec_s::force, freeSpec(), Spec_s::gotBuildRootURL, Package_s::header, headerAddEntry(), headerIsEntry(), headerNVR(), Spec_s::macros, newOpenFileInfo(), newSpec(), Package_s::next, Spec_s::packages, parseBuildInstallClean(), parseChangelog(), parseDescription(), parseFiles(), parsePreamble(), parsePrep(), parseScript(), PART_BUILD, PART_BUILDARCHITECTURES, PART_CHANGELOG, PART_CHECK, PART_CLEAN, PART_DESCRIPTION, PART_FILES, PART_INSTALL, PART_LAST, PART_NONE, PART_POST, PART_POSTUN, PART_PRE, PART_PREAMBLE, PART_PREP, PART_PREUN, PART_TRIGGERIN, PART_TRIGGERPOSTUN, PART_TRIGGERUN, PART_VERIFYSCRIPT, Spec_s::passPhrase, Spec_s::recursing, RMIL_RPMRC, RMIL_SPEC, Spec_s::rootURL, RPM_MACHTABLE_BUILDARCH, RPM_STRING_TYPE, rpmdsThis(), RPMERR_BADSPEC, rpmError, rpmExpand(), rpmExpandNumeric(), rpmGetArchInfo(), rpmGetMachine(), rpmGetOsInfo(), rpmGetPath(), rpmMachineScore(), rpmParseState, RPMSENSE_EQUAL, rpmSetMachine(), RPMTAG_ARCH, RPMTAG_DESCRIPTION, RPMTAG_OS, RPMTAG_PLATFORM, RPMTAG_REQUIRENAME, RPMTAG_RHNPLATFORM, rpmts, rpmtsSetSpec(), Spec_s::specFile, Spec_s::timeCheck, urlPath(), xcalloc(), and xstrdup(). Referenced by buildForTarget(), and rpmspecQuery(). |
|
Post-build processing for binary package(s).
Definition at line 2408 of file files.c. References _, checkFiles(), Package_s::fileList, freeStringBuf(), Package_s::header, headerNVR(), newStringBuf(), Package_s::next, Spec_s::packages, processPackageFiles(), rpmfcGenerateDepends(), RPMMESS_NORMAL, and rpmMessage. Referenced by buildSpec(). |
|
Post-build processing for source package.
Definition at line 2216 of file files.c. References _, _free(), appendLineStringBuf, FileList_s::buildRootURL, FileListRec_s::diskURL, errno, FileList_s::fileList, FileList_s::fileListRecsUsed, FileListRec_s::fileURL, FileListRec_s::fl_st, Source::flags, FileListRec_s::flags, freeFileList(), freeSplitString(), freeStringBuf(), genCpioListAndHeader(), getGname(), getStringBuf(), getUname(), FileListRec_s::gname, headerAddOrAppendEntry(), Package_s::icon, initSourceHeader(), FileListRec_s::langs, newStringBuf(), Source::next, Package_s::next, Source::num, Spec_s::numSources, Spec_s::packages, FileList_s::prefix, FileList_s::processingFailed, RPM_INT32_TYPE, RPM_STRING_ARRAY_TYPE, RPMBUILD_ISNO, RPMBUILD_ISPATCH, RPMBUILD_ISSOURCE, RPMERR_BADSPEC, rpmError, RPMFILE_GHOST, RPMFILE_SPECFILE, rpmGetPath(), RPMTAG_NOPATCH, RPMTAG_NOSOURCE, RPMTAG_PATCH, RPMTAG_SOURCE, RPMVERIFY_ALL, SKIPSPACE, Source::source, Spec_s::sourceCpioList, Spec_s::sourceHeader, Spec_s::sources, Spec_s::specFile, splitString(), Stat(), strerror(), FileList_s::totalFileSize, FileListRec_s::uname, urlPath(), FileListRec_s::verifyFlags, xcalloc(), and xstrdup(). Referenced by buildSpec(). |
|
Read next line from spec file.
Definition at line 194 of file parseSpec.c. References _, _free(), copyNextLine(), Fclose(), OpenFileInfo::fd, fdGetFp(), Ferror(), Spec_s::fileStack, Fopen(), forceIncludeFile(), Spec_s::line, Spec_s::lineNum, matchTok(), ReadLevelEntry::next, OpenFileInfo::next, parseExpressionBoolean(), ReadLevelEntry::reading, OpenFileInfo::readPtr, Spec_s::readStack, RPMERR_BADSPEC, RPMERR_UNMATCHEDIF, rpmError, rpmExpand(), rpmGetArchInfo(), rpmGetOsInfo(), SKIPNONSPACE, SKIPSPACE, Spec_s::sl, speclines_s::sl_lines, speclines_s::sl_nalloc, speclines_s::sl_nlines, xisspace(), xmalloc(), xrealloc(), and xstrdup(). Referenced by parseBuildInstallClean(), parseChangelog(), parseDescription(), parseFiles(), parsePreamble(), parsePrep(), and parseScript(). |
|
Add rpmlib feature dependency.
Definition at line 118 of file reqprov.c. References addReqProv(), alloca(), RPMSENSE_EQUAL, RPMSENSE_LESS, RPMSENSE_RPMLIB, and stpcpy(). Referenced by genCpioListAndHeader(), parseRCPOT(), parseScript(), processPackageFiles(), and writeRPM(). |
|
Function to query spec file(s).
Definition at line 695 of file spec.c. References _, freeSpec(), Package_s::header, Package_s::next, Spec_s::packages, parseSpec(), printNewSpecfile(), rpmQVKArguments_s::qva_showPackage, RPMERR_QUERY, rpmError, rpmts, and rpmtsSetSpec(). |
|
Definition at line 416 of file parsePreamble.c. References HGE_t, Spec_s::lineNum, RPMBUILD_DEFAULT_LANG, RPMTAG_NAME, Spec_s::st, spectags_s::st_nalloc, spectags_s::st_ntags, spectags_s::st_t, spectag_s::t_lang, spectag_s::t_msgid, spectag_s::t_nlines, spectag_s::t_startx, spectag_s::t_tag, tagName(), xrealloc(), and xstrdup(). Referenced by handlePreambleTag(), and parseDescription(). |