rpm 5.3.7
|
Top level dispatcher for spec file parsing. More...
#include "system.h"
#include <rpmio_internal.h>
#include <rpmcb.h>
#include <argv.h>
#include <rpmbuild.h>
#include "rpmds.h"
#include "rpmts.h"
#include "debug.h"
Go to the source code of this file.
Data Structures | |
struct | PartRec |
Defines | |
#define | _RPMTAG_INTERNAL |
Functions | |
static void | initParts (struct PartRec *p) |
rpmParseState | isPart (Spec spec) |
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 | restoreFirstChar (Spec spec) |
static int | copyNextLineFromOFI (Spec spec, OFI_t *ofi, rpmStripFlags strip) |
static int | copyNextLineFinish (Spec spec, int strip) |
static int | readLineFromOFI (Spec spec, OFI_t *ofi) |
int | readLine (Spec spec, rpmStripFlags strip) |
Read next line from spec file. | |
void | closeSpec (Spec spec) |
Stop reading from spec file, freeing resources. | |
static int | genSourceRpmName (Spec spec) |
int | parseSpec (rpmts ts, const char *specFile, const char *rootURL, int recursing, const char *passPhrase, const char *cookie, int anyarch, int force, int verify) |
Parse spec file into spec control structure. | |
Variables | |
static struct PartRec | partList [] |
int | noLang |
Top level dispatcher for spec file parsing.
Definition in file parseSpec.c.
#define _RPMTAG_INTERNAL |
Definition at line 12 of file parseSpec.c.
static int copyNextLineFinish | ( | Spec | spec, |
int | strip | ||
) | [static] |
Definition at line 254 of file parseSpec.c.
References handleComments(), Spec_s::line, Spec_s::nextline, Spec_s::nextpeekc, STRIP_COMMENTS, STRIP_TRAILINGSPACE, and xisspace().
Referenced by readLine().
static int copyNextLineFromOFI | ( | Spec | spec, |
OFI_t * | ofi, | ||
rpmStripFlags | strip | ||
) | [static] |
Definition at line 175 of file parseSpec.c.
References _, expandMacros(), Spec_s::lbuf, Spec_s::lbuf_len, Spec_s::lbufPtr, Spec_s::lineNum, Spec_s::macros, Spec_s::nextline, ReadLevelEntry::reading, OpenFileInfo::readPtr, Spec_s::readStack, rpmlog(), RPMLOG_ERR, RPMRC_FAIL, and STRIP_NOEXPAND.
Referenced by readLine().
static void forceIncludeFile | ( | Spec | spec, |
const char * | fileName | ||
) | [static] |
Definition at line 148 of file parseSpec.c.
References OpenFileInfo::fileName, Spec_s::fileStack, newOpenFileInfo(), OpenFileInfo::next, and xstrdup().
Referenced by readLine().
static int genSourceRpmName | ( | Spec | spec | ) | [inline, static] |
Definition at line 494 of file parseSpec.c.
References _free(), Package_s::header, headerNEVRA(), Spec_s::noSource, Spec_s::packages, snprintf(), Spec_s::sourceRpmName, and xstrdup().
Referenced by parseSpec().
static void initParts | ( | struct PartRec * | p | ) | [inline, static] |
Definition at line 57 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 117 of file parseSpec.c.
References SKIPNONSPACE, SKIPSPACE, and xstrncasecmp().
Referenced by readLine().
Definition at line 286 of file parseSpec.c.
References _, _free(), Fclose(), OpenFileInfo::fd, fdGetFp(), Ferror(), OpenFileInfo::fileName, Spec_s::fileStack, Fopen(), Fstrerror(), OpenFileInfo::lineNum, Spec_s::lineNum, OpenFileInfo::next, ReadLevelEntry::next, OpenFileInfo::readBuf, OpenFileInfo::readPtr, Spec_s::readStack, rpmlog(), RPMLOG_ERR, RPMRC_FAIL, Spec_s::sl, speclines_s::sl_lines, speclines_s::sl_nalloc, speclines_s::sl_nlines, xrealloc(), and xstrdup().
Referenced by readLine().
static int restoreFirstChar | ( | Spec | spec | ) | [static] |
Definition at line 161 of file parseSpec.c.
References Spec_s::nextline, and Spec_s::nextpeekc.
Referenced by readLine().