Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

spec.c File Reference

Handle spec data structure. More...

#include "system.h"
#include "buildio.h"
#include "rpmds.h"
#include "rpmfi.h"
#include "rpmts.h"
#include "debug.h"

Go to the source code of this file.

Defines

#define SKIPWHITE(_x)   {while(*(_x) && (xisspace(*_x) || *(_x) == ',')) (_x)++;}
#define SKIPNONWHITE(_x)   {while(*(_x) &&!(xisspace(*_x) || *(_x) == ',')) (_x)++;}

Functions

TriggerFileEntry * freeTriggerFiles (struct TriggerFileEntry *p)
Source * freeSources (struct Source *s)
 Destroy source component chain.
int lookupPackage (Spec spec, const char *name, int flag, Package *pkg)
Package newPackage (Spec spec)
Package freePackage (Package pkg)
Package freePackages (Package packages)
Source * findSource (Spec spec, int num, int flag)
int parseNoSource (Spec spec, const char *field, int tag)
int addSource (Spec spec, Package pkg, const char *field, int tag)
speclines newSl (void)
speclines freeSl (speclines sl)
spectags newSt (void)
spectags freeSt (spectags st)
Spec newSpec (void)
Spec freeSpec (Spec spec)
OpenFileInfo * newOpenFileInfo (void)
void printNewSpecfile (Spec spec)
 Print copy of spec file, filling in Group/Description/Summary from specspo.
int rpmspecQuery (rpmts ts, QVA_t qva, const char *arg)

Variables

int specedit


Detailed Description

Handle spec data structure.

Definition in file spec.c.


Define Documentation

#define SKIPNONWHITE (  _x   )     {while(*(_x) &&!(xisspace(*_x) || *(_x) == ',')) (_x)++;}
 

Definition at line 20 of file spec.c.

#define SKIPWHITE (  _x   )     {while(*(_x) && (xisspace(*_x) || *(_x) == ',')) (_x)++;}
 

Definition at line 19 of file spec.c.


Function Documentation

struct Source* findSource (  Spec  spec,
int  num,
int  flag
)  [inline, static]
 

Definition at line 199 of file spec.c.

References Source::flags, Source::next, Source::num, Spec_s::sources, and Spec.

Referenced by parseNoSource().

speclines freeSl (  speclines  sl  )  [inline, static]
 

Definition at line 373 of file spec.c.

References _free(), speclines_s::sl_lines, speclines_s::sl_nlines, and speclines.

Referenced by freeSpec().

struct Source* freeSources (  struct Source *  s  )  [inline, static]
 

Destroy source component chain.

Parameters:
s source component chain
Returns:
NULL always

Definition at line 52 of file spec.c.

References _free(), Source::fullSource, and Source::next.

Referenced by freePackage(), and freeSpec().

spectags freeSt (  spectags  st  )  [inline, static]
 

Definition at line 406 of file spec.c.

References _free(), spectag, spectags, spectags_s::st_ntags, spectags_s::st_t, spectag_s::t_lang, and spectag_s::t_msgid.

Referenced by freeSpec().

struct TriggerFileEntry* freeTriggerFiles (  struct TriggerFileEntry *  p  )  [inline, static]
 

Parameters:
p trigger entry chain
Returns:
NULL always

Definition at line 30 of file spec.c.

References _free(), TriggerFileEntry::fileName, TriggerFileEntry::next, TriggerFileEntry::prog, and TriggerFileEntry::script.

Referenced by freePackage().

speclines newSl (  void   )  [inline, static]
 

Definition at line 355 of file spec.c.

References speclines_s::sl_lines, speclines_s::sl_nalloc, speclines_s::sl_nlines, speclines, and xmalloc().

Referenced by newSpec().

spectags newSt (  void   )  [inline, static]
 

Definition at line 389 of file spec.c.

References spectags, spectags_s::st_t, and xmalloc().

Referenced by newSpec().

void printNewSpecfile (  Spec  spec  )  [static]
 

Print copy of spec file, filling in Group/Description/Summary from specspo.

Parameters:
spec spec file control structure

Definition at line 585 of file spec.c.

References _, _free(), Package_s::header, Header, headerNVR(), headerSprintf(), Package_s::next, Package, Spec_s::packages, RPMBUILD_DEFAULT_LANG, RPMERR_QFMT, rpmError, rpmHeaderFormats, RPMTAG_DESCRIPTION, RPMTAG_GROUP, RPMTAG_SUMMARY, rpmTagTable, Spec_s::sl, speclines_s::sl_lines, speclines_s::sl_nlines, Spec, speclines, spectag, spectags, Spec_s::st, spectags_s::st_ntags, spectags_s::st_t, stpcpy(), spectag_s::t_lang, spectag_s::t_msgid, spectag_s::t_nlines, spectag_s::t_startx, spectag_s::t_tag, tagName(), xmalloc(), and xstrdup().

Referenced by rpmspecQuery().


Variable Documentation

int specedit
 

Definition at line 17 of file poptQV.c.


Generated on Sat Nov 17 07:13:40 2007 for rpm by  doxygen 1.3.9.1