build/parseSpec.c File Reference

Top level dispatcher for spec file parsing. More...

#include "system.h"
#include <rpmio_internal.h>
#include <rpmbuild.h>
#include "debug.h"

Go to the source code of this file.

Data Structures

struct  PartRec

Functions

static void initParts (struct PartRec *p)
rpmParseState isPart (const char *line)
 Check line for section separator, return next parser state.
static int matchTok (const char *token, const char *line)
void handleComments (char *s)
 Truncate comment lines.
static void forceIncludeFile (Spec spec, const char *fileName)
static int copyNextLine (Spec spec, OFI_t *ofi, int strip)
int readLine (Spec spec, int strip)
 Read next line from spec file.
void closeSpec (Spec spec)
 Stop reading from spec file, freeing resources.
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.

Variables

static int _debug = 0
static struct PartRec partList []
int noLang


Detailed Description

Top level dispatcher for spec file parsing.

Definition in file parseSpec.c.


Function Documentation

static int copyNextLine ( Spec  spec,
OFI_t ofi,
int  strip 
) [static]

Definition at line 119 of file parseSpec.c.

References _, expandMacros(), handleComments(), SpecStruct::lbuf, SpecStruct::line, SpecStruct::lineNum, SpecStruct::macros, SpecStruct::nextline, SpecStruct::nextpeekc, ReadLevelEntry::reading, OpenFileInfo::readPtr, SpecStruct::readStack, RPMERR_BADSPEC, rpmError, STRIP_COMMENTS, STRIP_TRAILINGSPACE, and xisspace().

Referenced by readLine().

static void forceIncludeFile ( Spec  spec,
const char *  fileName 
) [static]

Definition at line 106 of file parseSpec.c.

References OpenFileInfo::fileName, SpecStruct::fileStack, newOpenFileInfo(), OpenFileInfo::next, and xstrdup().

Referenced by readLine().

static void initParts ( struct PartRec p  )  [inline, static]

Definition at line 47 of file parseSpec.c.

References PartRec::len, and PartRec::token.

Referenced by isPart().

static int matchTok ( const char *  token,
const char *  line 
) [static]

Definition at line 75 of file parseSpec.c.

References SKIPNONSPACE, SKIPSPACE, and xstrncasecmp().

Referenced by readLine().


Variable Documentation

int _debug = 0 [static]

Definition at line 9 of file parseSpec.c.

Referenced by db1cdel(), db1cget(), db1close(), db1cput(), db1sync(), db3c_close(), db3c_del(), db3c_dup(), db3c_get(), db3c_open(), db3c_put(), db3ccount(), db3cdel(), db3cget(), db3close(), db3cput(), db3open(), db3stat(), db3sync(), db_fini(), db_init(), dbiVerify(), parseSpec(), pgpHexSet(), pgpPrtPubkeyParams(), pgpPrtSig(), pgpPrtSigParams(), rpmGenPath(), and rpmGlob().

int noLang

Definition at line 59 of file poptBT.c.

struct PartRec partList[] [static]

Referenced by isPart().


Generated on Wed Nov 15 03:38:11 2006 for rpm by  doxygen 1.4.7