rpm  4.5
Macros | Functions
parseChangelog.c File Reference

Parse changelog section from spec file. More...

#include "system.h"
#include "rpmbuild.h"
#include "debug.h"
Include dependency graph for parseChangelog.c:

Go to the source code of this file.

Macros

#define mySKIPSPACE(s)   { while (*(s) && isspace(*(s))) (s)++; }
 
#define mySKIPNONSPACE(s)   { while (*(s) && !isspace(*(s))) (s)++; }
 
#define CVS_RCSID   "$""Log: "
 
#define CVS_REVISION   "Revision "
 

Functions

void addChangelogEntry (Header h, time_t time, const char *name, const char *text)
 Add changelog entry to header. More...
 
static int dateToTimet (const char *datestr, time_t *secs)
 Parse date string to seconds. More...
 
time_t get_date (const char *p, void *now)
 
static int addChangelog (Header h, StringBuf sb)
 Add changelog section to header. More...
 
int parseChangelog (Spec spec)
 Parse %changelog section of a spec file. More...
 

Detailed Description

Parse changelog section from spec file.

Definition in file parseChangelog.c.

Macro Definition Documentation

#define CVS_RCSID   "$""Log: "

Definition at line 14 of file parseChangelog.c.

Referenced by addChangelog().

#define CVS_REVISION   "Revision "

Definition at line 15 of file parseChangelog.c.

Referenced by addChangelog().

#define mySKIPNONSPACE (   s)    { while (*(s) && !isspace(*(s))) (s)++; }

Definition at line 12 of file parseChangelog.c.

Referenced by addChangelog(), and dateToTimet().

#define mySKIPSPACE (   s)    { while (*(s) && isspace(*(s))) (s)++; }

Definition at line 11 of file parseChangelog.c.

Referenced by addChangelog(), and dateToTimet().

Function Documentation

static int addChangelog ( Header  h,
StringBuf  sb 
)
static

Add changelog section to header.

Parameters
hheader
sbchangelog strings
Returns
0 on success

Definition at line 113 of file parseChangelog.c.

References _, _free(), addChangelogEntry(), CVS_RCSID, CVS_REVISION, dateToTimet(), get_date(), getStringBuf(), mySKIPNONSPACE, mySKIPSPACE, name, RPMERR_BADSPEC, rpmError, rpmExpand(), rpmExpandNumeric(), RPMMESS_WARNING, rpmMessage, and xisspace().

Referenced by parseChangelog().

static int dateToTimet ( const char *  datestr,
time_t *  secs 
)
static

Parse date string to seconds.

Parameters
datestrdate string (e.g. 'Wed Jan 1 1997')
Return values
secssecs since the unix epoch
Returns
0 on success, -1 on error

Definition at line 36 of file parseChangelog.c.

References alloca(), mySKIPNONSPACE, and mySKIPSPACE.

Referenced by addChangelog().

time_t get_date ( const char *  p,
void *  now 
)

Referenced by addChangelog(), and installArgCallback().