RPM Package Manager, CVS Repository
http://rpm5.org/cvs/
____________________________________________________________________________
Server: rpm5.org Name: Jeff Johnson
Root: /v/rpm/cvs Email: [EMAIL PROTECTED]
Module: rpm Date: 02-Aug-2007 17:49:47
Branch: HEAD Handle: 2007080216494600
Modified files:
rpm CHANGES macros.in
rpm/rpmdb rpmdb.c
Log:
- hack up a NVRA retrival w/o extensions, sigh.
Summary:
Revision Changes Path
1.1544 +1 -0 rpm/CHANGES
1.192 +3 -3 rpm/macros.in
1.146 +21 -3 rpm/rpmdb/rpmdb.c
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: rpm/CHANGES
============================================================================
$ cvs diff -u -r1.1543 -r1.1544 CHANGES
--- rpm/CHANGES 2 Aug 2007 15:13:43 -0000 1.1543
+++ rpm/CHANGES 2 Aug 2007 15:49:46 -0000 1.1544
@@ -1,4 +1,5 @@
4.5 -> 5.0:
+ - jbj: hack up a NVRA retrival w/o extensions, sigh.
- jbj: add RPMTAG_NVRA header extension.
- jbj: python ds.Uname getter for uname(...) dependencies.
- jbj: use rpmmg magic wrapper.
@@ .
patch -p0 <<'@@ .'
Index: rpm/macros.in
============================================================================
$ cvs diff -u -r1.191 -r1.192 macros.in
--- rpm/macros.in 2 Aug 2007 15:03:08 -0000 1.191
+++ rpm/macros.in 2 Aug 2007 15:49:46 -0000 1.192
@@ -1,7 +1,7 @@
#/*! \page config_macros Default configuration: @USRLIBRPM@/macros
# \verbatim
#
-# $Id: macros.in,v 1.191 2007/08/02 15:03:08 jbj Exp $
+# $Id: macros.in,v 1.192 2007/08/02 15:49:46 jbj Exp $
#
# This is a global RPM configuration file. All changes made here will
# be lost when the rpm package is upgraded. Any per-system configuration
@@ -648,8 +648,8 @@
# database tag configuration
%_dbi_tags %{expand:%%{_dbi_tags_%{_dbapi_used}}}
-%_dbi_tags_3
Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor
-%_dbi_tags_4
Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor
+%_dbi_tags_3
Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor:Nvra
+%_dbi_tags_4
Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor:Nvra
# database configuration: Berkeley-DB [dbapi 3 hooks]
%_dbi_config_3 %{_dbi_btconfig}
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmdb/rpmdb.c
============================================================================
$ cvs diff -u -r1.145 -r1.146 rpmdb.c
--- rpm/rpmdb/rpmdb.c 1 Aug 2007 17:58:37 -0000 1.145
+++ rpm/rpmdb/rpmdb.c 2 Aug 2007 15:49:46 -0000 1.146
@@ -2852,12 +2852,19 @@
xx = dbiSync(dbi, 0);
continue;
/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/ break;
+ case RPMTAG_NVRA: /* XXX compound header extension. */
+ rpmtype = RPM_STRING_TYPE;
+ rpmvals = hGetNEVRA(h, NULL);
+ rpmcnt = 1;
+ /[EMAIL PROTECTED]@*/ break;
+ default:
+ if (!hge(h, rpmtag, &rpmtype, &rpmvals, &rpmcnt))
+ continue;
+ /[EMAIL PROTECTED]@*/ break;
+
}
/[EMAIL PROTECTED]@*/
- if (!hge(h, rpmtag, &rpmtype, &rpmvals, &rpmcnt))
- continue;
-
dbi = dbiOpen(db, rpmtag, 0);
if (dbi != NULL) {
int printed;
@@ -3033,6 +3040,9 @@
xx = dbiSync(dbi, 0);
}
+ if (rpmtag == RPMTAG_NVRA) /* XXX compound header extension. */
+ av[0] = _free(av[0]);
+ else
if (rpmtype != RPM_BIN_TYPE) /* XXX WTFO? HACK ALERT */
rpmvals = hfd(rpmvals, rpmtype);
rpmtype = 0;
@@ -3282,6 +3292,11 @@
xx = hge(h, rpmtag, &rpmtype, &rpmvals, &rpmcnt);
xx = hge(h, RPMTAG_REQUIREFLAGS, NULL, &requireFlags, NULL);
/[EMAIL PROTECTED]@*/ break;
+ case RPMTAG_NVRA: /* XXX compound header extension. */
+ rpmtype = RPM_STRING_TYPE;
+ rpmvals = hGetNEVRA(h, NULL);
+ rpmcnt = 1;
+ /[EMAIL PROTECTED]@*/ break;
default:
xx = hge(h, rpmtag, &rpmtype, &rpmvals, &rpmcnt);
/[EMAIL PROTECTED]@*/ break;
@@ -3489,6 +3504,9 @@
xx = dbiSync(dbi, 0);
}
+ if (rpmtag == RPMTAG_NVRA) /* XXX compound header extension. */
+ av[0] = _free(av[0]);
+ else
/[EMAIL PROTECTED]@*/
if (rpmtype != RPM_BIN_TYPE) /* XXX WTFO? HACK ALERT */
rpmvals = hfd(rpmvals, rpmtype);
@@ .
______________________________________________________________________
RPM Package Manager http://rpm5.org
CVS Sources Repository [email protected]