1 --- rpm-4.4.3/build/parseChangelog.c.orig 2005-11-12 01:20:12.000000000 +0100
2 +++ rpm-4.4.3/build/parseChangelog.c 2005-11-18 19:46:50.357322048 +0100
4 line = xstrtolocale(line);
5 appendStringBuf(sb, spec->line);
7 - if ((rc = readLine(spec, STRIP_COMMENTS)) > 0) {
8 + if ((rc = readLine(spec, STRIP_COMMENTS | STRIP_NOEXPAND)) > 0) {
12 --- rpm-4.3/build/parseSpec.c Fri May 16 00:08:57 2003
13 +++ rpm-5.0.1/build/parseSpec.c 2008-01-31 00:43:18.388524335 +0200
18 -static int copyNextLineFromOFI(Spec spec, OFI_t * ofi)
19 +static int copyNextLineFromOFI(Spec spec, OFI_t * ofi, int strip)
20 /*@globals rpmGlobalMacroContext, h_errno,
22 /*@modifies spec->nextline, spec->nextpeekc, spec->lbuf, spec->line,
26 /* Don't expand macros (eg. %define) in false branch of %if clause */
27 + /* Also don't expand macros in %changelog where we set STRIP_NOEXPAND flag */
28 + /* (first line is ommited, so if there is e.g. %date macro, it will be expanded */
29 + if (!(strip & STRIP_NOEXPAND)) {
30 if (spec->readStack->reading &&
31 expandMacros(spec, spec->macros, spec->lbuf, spec->lbuf_len)) {
32 rpmlog(RPMLOG_ERR, _("line %d: %s\n"),
33 spec->lineNum, spec->lbuf);
37 spec->nextline = spec->lbuf;
44 + if (! (strip & STRIP_NOEXPAND)) {
45 if (!spec->readStack->reading && !strncmp("%if", s, sizeof("%if")-1)) {
47 } else if (! strncmp("%ifarch", s, sizeof("%ifarch")-1)) {
50 /* Copy next file line into the spec line buffer */
52 - if ((rc = copyNextLineFromOFI(spec, ofi)) != 0) {
53 + if ((rc = copyNextLineFromOFI(spec, ofi, strip)) != 0) {
58 ofi = spec->fileStack;
64 rl = xmalloc(sizeof(*rl));
65 --- rpm-4.3/build/rpmbuild.h.wiget Sat May 10 17:19:33 2003
66 +++ rpm-4.3/build/rpmbuild.h Fri May 16 00:06:47 2003
68 #define STRIP_NOTHING 0
69 #define STRIP_TRAILINGSPACE (1 << 0)
70 #define STRIP_COMMENTS (1 << 1)
71 +#define STRIP_NOEXPAND (1 << 2)