*
*/
+/*
+ * Warning: you're free to append new entries, but insert/delete breaks
+ * the ABI!
+ */
+
#undef KNOWNID
#ifdef KNOWNID_INITIALIZE
# define KNOWNID(a, b) b
KNOWNID(SOLVABLE_DESCRIPTION, "solvable:description"),
KNOWNID(SOLVABLE_AUTHORS, "solvable:authors"),
KNOWNID(SOLVABLE_GROUP, "solvable:group"),
+KNOWNID(SOLVABLE_URL, "solvable:url"),
KNOWNID(SOLVABLE_KEYWORDS, "solvable:keywords"),
KNOWNID(SOLVABLE_LICENSE, "solvable:license"),
KNOWNID(SOLVABLE_BUILDTIME, "solvable:buildtime"),
set -e
LANG=C
+unset CDPATH
parser_options=${PARSER_OPTIONS:-}
#include "util.h"
#include "repo_rpmdb.h"
-#define RPMDB_COOKIE_VERSION 1
+#define RPMDB_COOKIE_VERSION 2
#define TAG_NAME 1000
#define TAG_VERSION 1001
#define TAG_VENDOR 1011
#define TAG_LICENSE 1014
#define TAG_GROUP 1016
+#define TAG_URL 1020
#define TAG_ARCH 1022
#define TAG_FILESIZES 1028
#define TAG_FILEMODES 1030
str = headstring(rpmhead, TAG_LICENSE);
if (str)
repodata_set_poolstr(repodata, handle, SOLVABLE_LICENSE, str);
+ str = headstring(rpmhead, TAG_URL);
+ if (str)
+ repodata_set_str(repodata, handle, SOLVABLE_URL, str);
u32 = headint32(rpmhead, TAG_BUILDTIME);
if (u32)
repodata_set_num(repodata, handle, SOLVABLE_BUILDTIME, u32);
/* resobject attributes */
STATE_SUMMARY,
STATE_DESCRIPTION,
+ STATE_URL,
STATE_INSNOTIFY,
STATE_DELNOTIFY,
STATE_VENDOR,
{ STATE_SOLVABLE, "summary", STATE_SUMMARY, 1 },
{ STATE_SOLVABLE, "description", STATE_DESCRIPTION, 1 },
+ { STATE_SOLVABLE, "url", STATE_URL, 1 },
//{ STATE_SOLVABLE, "???", STATE_INSNOTIFY, 1 },
//{ STATE_SOLVABLE, "??", STATE_DELNOTIFY, 1 },
{ STATE_SOLVABLE, "vendor", STATE_VENDOR, 1 },
pd->lang = 0;
set_desciption_author(pd->data, handle, pd->content);
break;
+ case STATE_URL:
+ if (pd->content[0])
+ repodata_set_str(pd->data, handle, SOLVABLE_URL, pd->content);
+ break;
case STATE_SOURCERPM:
set_sourcerpm(pd->data, s, handle, pd->content);
break;