RPM Package Manager, CVS Repository
http://rpm5.org/cvs/
____________________________________________________________________________
Server: rpm5.org Name: Ralf S. Engelschall
Root: /v/rpm/cvs Email: rse@rpm5.org
Module: rpm Date: 25-Jan-2008 22:39:44
Branch: HEAD Handle: 2008012521394300
Modified files:
rpm CHANGES
rpm/rpmio macro.c
Log:
Allow sub-shell and Lua independent speedy lookup of environment
variables via %{getenv:<name>} in macros
Summary:
Revision Changes Path
1.2096 +1 -0 rpm/CHANGES
2.179 +5 -0 rpm/rpmio/macro.c
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: rpm/CHANGES
============================================================================
$ cvs diff -u -r1.2095 -r1.2096 CHANGES
--- rpm/CHANGES 25 Jan 2008 17:04:23 -0000 1.2095
+++ rpm/CHANGES 25 Jan 2008 21:39:43 -0000 1.2096
@@ -1,4 +1,5 @@
5.0.0 -> 5.1a1:
+ - rse: allow sub-shell and Lua independent speedy lookup of environment variables via %{getenv:<name>} in macros
- jbj: QNX needs defines for fts.c.
- rse: upgrade from Lua 5.1.2 to Lua 5.1.3 (external and internal)
- jbj: include <pthread.h> everywhere.
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/macro.c
============================================================================
$ cvs diff -u -r2.178 -r2.179 macro.c
--- rpm/rpmio/macro.c 21 Jan 2008 18:40:42 -0000 2.178
+++ rpm/rpmio/macro.c 25 Jan 2008 21:39:43 -0000 2.179
@@ -1207,6 +1207,10 @@
b = buf;
}
}
+ } else if (STREQ("getenv", f, fn)) {
+ char *cp;
+ if ((cp = getenv(buf)) != NULL)
+ b = cp;
} else if (STREQ("suffix", f, fn)) {
if ((b = strrchr(buf, '.')) != NULL)
b++;
@@ -1601,6 +1605,7 @@
if (STREQ("basename", f, fn) ||
STREQ("dirname", f, fn) ||
STREQ("realpath", f, fn) ||
+ STREQ("getenv", f, fn) ||
STREQ("suffix", f, fn) ||
STREQ("expand", f, fn) ||
STREQ("verbose", f, fn) ||
@@ .
Received on Fri Jan 25 22:39:44 2008