From b3bc3cb19d15acc86df9400dc5e77adf8f6f1dd5 Mon Sep 17 00:00:00 2001 From: jbj Date: Wed, 18 Dec 2002 22:54:00 +0000 Subject: [PATCH] - add --file{class,provide,require} popt aliases and header extensions CVS patchset: 5947 CVS date: 2002/12/18 22:54:00 --- lib/formats.c | 213 +++++++++++++++++++++++++++++++-------------- lib/misc.c | 4 +- lib/package.c | 2 +- lib/psm.c | 8 +- lib/rpmfi.c | 178 +++++++++++++++++++++++++++++++++++++ lib/rpmfi.h | 27 ++++++ lib/rpmlib.h | 17 ---- po/cs.po | 26 +++--- po/da.po | 26 +++--- po/de.po | 26 +++--- po/fi.po | 26 +++--- po/fr.po | 26 +++--- po/gl.po | 26 +++--- po/is.po | 26 +++--- po/ja.po | 26 +++--- po/ko.po | 26 +++--- po/no.po | 26 +++--- po/pl.po | 26 +++--- po/pt.po | 26 +++--- po/pt_BR.po | 26 +++--- po/ro.po | 26 +++--- po/rpm.pot | 26 +++--- po/ru.po | 26 +++--- po/sk.po | 26 +++--- po/sl.po | 28 +++--- po/sr.po | 26 +++--- po/sv.po | 26 +++--- po/tr.po | 26 +++--- python/header-py.c | 2 +- rpm.spec.in | 1 + rpmdb/legacy.c | 58 +++++------- rpmdb/legacy.h | 30 +++++-- rpmpopt.in | 12 +++ 33 files changed, 693 insertions(+), 407 deletions(-) diff --git a/lib/formats.c b/lib/formats.c index 14c0ddc87..99b6303e8 100644 --- a/lib/formats.c +++ b/lib/formats.c @@ -6,8 +6,13 @@ #include "rpmio_internal.h" #include #include /* XXX for %_i18ndomains */ + +#include + +#include "legacy.h" #include "manifest.h" #include "misc.h" + #include "debug.h" /*@access pgpDig @*/ @@ -32,10 +37,16 @@ static /*@only@*/ char * triggertypeFormat(int_32 type, const void * data, if (type != RPM_INT32_TYPE) val = xstrdup(_("(not a number)")); + else if (*item & RPMSENSE_TRIGGERPREIN) + val = xstrdup("prein"); else if (*item & RPMSENSE_TRIGGERIN) val = xstrdup("in"); - else + else if (*item & RPMSENSE_TRIGGERUN) val = xstrdup("un"); + else if (*item & RPMSENSE_TRIGGERPOSTUN) + val = xstrdup("postun"); + else + val = xstrdup(""); return val; } @@ -412,10 +423,10 @@ static /*@only@*/ char * depflagsFormat(int_32 type, const void * data, /** * Retrieve mounted file system paths. * @param h header - * @retval type address of tag type - * @retval data address of tag value pointer - * @retval count address of no. of data items - * @retval freeData address of data-was-malloc'ed indicator + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator * @return 0 on success */ static int fsnamesTag( /*@unused@*/ Header h, /*@out@*/ int_32 * type, @@ -444,10 +455,10 @@ static int fsnamesTag( /*@unused@*/ Header h, /*@out@*/ int_32 * type, /** * Retrieve install prefixes. * @param h header - * @retval type address of tag type - * @retval data address of tag value pointer - * @retval count address of no. of data items - * @retval freeData address of data-was-malloc'ed indicator + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator * @return 0 on success */ static int instprefixTag(Header h, /*@null@*/ /*@out@*/ rpmTagType * type, @@ -482,10 +493,10 @@ static int instprefixTag(Header h, /*@null@*/ /*@out@*/ rpmTagType * type, /** * Retrieve mounted file system space. * @param h header - * @retval type address of tag type - * @retval data address of tag value pointer - * @retval count address of no. of data items - * @retval freeData address of data-was-malloc'ed indicator + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator * @return 0 on success */ static int fssizesTag(Header h, /*@out@*/ rpmTagType * type, @@ -509,7 +520,7 @@ static int fssizesTag(Header h, /*@out@*/ rpmTagType * type, numFiles = 0; filenames = NULL; } else { - rpmBuildFileList(h, &filenames, &numFiles); + rpmfiBuildFNames(h, RPMTAG_BASENAMES, &filenames, &numFiles); } /*@-boundswrite@*/ @@ -542,10 +553,10 @@ static int fssizesTag(Header h, /*@out@*/ rpmTagType * type, /** * Retrieve trigger info. * @param h header - * @retval type address of tag type - * @retval data address of tag value pointer - * @retval count address of no. of data items - * @retval freeData address of data-was-malloc'ed indicator + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator * @return 0 on success */ /*@-bounds@*/ /* LCL: segfault */ @@ -619,10 +630,10 @@ static int triggercondsTag(Header h, /*@out@*/ rpmTagType * type, /** * Retrieve trigger type info. * @param h header - * @retval type address of tag type - * @retval data address of tag value pointer - * @retval count address of no. of data items - * @retval freeData address of data-was-malloc'ed indicator + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator * @return 0 on success */ static int triggertypeTag(Header h, /*@out@*/ rpmTagType * type, @@ -659,12 +670,16 @@ static int triggertypeTag(Header h, /*@out@*/ rpmTagType * type, if (indices[j] != i) /*@innercontinue@*/ continue; - if (flags[j] & RPMSENSE_TRIGGERIN) + if (flags[j] & RPMSENSE_TRIGGERPREIN) + conds[i] = xstrdup("prein"); + else if (flags[j] & RPMSENSE_TRIGGERIN) conds[i] = xstrdup("in"); else if (flags[j] & RPMSENSE_TRIGGERUN) conds[i] = xstrdup("un"); - else + else if (flags[j] & RPMSENSE_TRIGGERPOSTUN) conds[i] = xstrdup("postun"); + else + conds[i] = xstrdup(""); /*@innerbreak@*/ break; } } @@ -675,10 +690,10 @@ static int triggertypeTag(Header h, /*@out@*/ rpmTagType * type, /** * Retrieve file paths. * @param h header - * @retval type address of tag type - * @retval data address of tag value pointer - * @retval count address of no. of data items - * @retval freeData address of data-was-malloc'ed indicator + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator * @return 0 on success */ static int filenamesTag(Header h, /*@out@*/ rpmTagType * type, @@ -690,7 +705,7 @@ static int filenamesTag(Header h, /*@out@*/ rpmTagType * type, { *type = RPM_STRING_ARRAY_TYPE; - rpmBuildFileList(h, (const char ***) data, count); + rpmfiBuildFNames(h, RPMTAG_BASENAMES, (const char ***) data, count); *freeData = 1; *freeData = 0; /* XXX WTFO? */ @@ -698,6 +713,72 @@ static int filenamesTag(Header h, /*@out@*/ rpmTagType * type, return 0; } +/** + * Retrieve file classes. + * @param h header + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator + * @return 0 on success + */ +static int fileclassTag(Header h, /*@out@*/ rpmTagType * type, + /*@out@*/ const void ** data, /*@out@*/ int_32 * count, + /*@out@*/ int * freeData) + /*@modifies *type, *data, *count, *freeData @*/ + /*@requires maxSet(type) >= 0 /\ maxSet(data) >= 0 + /\ maxSet(count) >= 0 /\ maxSet(freeData) >= 0 @*/ +{ + *type = RPM_STRING_ARRAY_TYPE; + rpmfiBuildFClasses(h, (const char ***) data, count); + *freeData = 1; + return 0; +} + +/** + * Retrieve file provides. + * @param h header + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator + * @return 0 on success + */ +static int fileprovideTag(Header h, /*@out@*/ rpmTagType * type, + /*@out@*/ const void ** data, /*@out@*/ int_32 * count, + /*@out@*/ int * freeData) + /*@modifies *type, *data, *count, *freeData @*/ + /*@requires maxSet(type) >= 0 /\ maxSet(data) >= 0 + /\ maxSet(count) >= 0 /\ maxSet(freeData) >= 0 @*/ +{ + *type = RPM_STRING_ARRAY_TYPE; + rpmfiBuildFDeps(h, RPMTAG_PROVIDENAME, (const char ***) data, count); + *freeData = 1; + return 0; +} + +/** + * Retrieve file requires. + * @param h header + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator + * @return 0 on success + */ +static int filerequireTag(Header h, /*@out@*/ rpmTagType * type, + /*@out@*/ const void ** data, /*@out@*/ int_32 * count, + /*@out@*/ int * freeData) + /*@modifies *type, *data, *count, *freeData @*/ + /*@requires maxSet(type) >= 0 /\ maxSet(data) >= 0 + /\ maxSet(count) >= 0 /\ maxSet(freeData) >= 0 @*/ +{ + *type = RPM_STRING_ARRAY_TYPE; + rpmfiBuildFDeps(h, RPMTAG_REQUIRENAME, (const char ***) data, count); + *freeData = 1; + return 0; +} + /* I18N look aside diversions */ /*@-exportlocal -exportheadervar@*/ @@ -708,17 +789,16 @@ int _nl_msg_cat_cntr; /* XXX GNU gettext voodoo */ static const char * language = "LANGUAGE"; /*@observer@*/ /*@unchecked@*/ -static const char * _macro_i18ndomains = - "%{?_i18ndomains:%{_i18ndomains}}"; +static const char * _macro_i18ndomains = "%{?_i18ndomains}"; /** * Retrieve i18n text. * @param h header * @param tag tag - * @retval type address of tag type - * @retval data address of tag value pointer - * @retval count address of no. of data items - * @retval freeData address of data-was-malloc'ed indicator + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator * @return 0 on success */ static int i18nTag(Header h, int_32 tag, /*@out@*/ rpmTagType * type, @@ -805,10 +885,10 @@ static int i18nTag(Header h, int_32 tag, /*@out@*/ rpmTagType * type, /** * Retrieve summary text. * @param h header - * @retval type address of tag type - * @retval data address of tag value pointer - * @retval count address of no. of data items - * @retval freeData address of data-was-malloc'ed indicator + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator * @return 0 on success */ static int summaryTag(Header h, /*@out@*/ rpmTagType * type, @@ -825,10 +905,10 @@ static int summaryTag(Header h, /*@out@*/ rpmTagType * type, /** * Retrieve description text. * @param h header - * @retval type address of tag type - * @retval data address of tag value pointer - * @retval count address of no. of data items - * @retval freeData address of data-was-malloc'ed indicator + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator * @return 0 on success */ static int descriptionTag(Header h, /*@out@*/ rpmTagType * type, @@ -845,10 +925,10 @@ static int descriptionTag(Header h, /*@out@*/ rpmTagType * type, /** * Retrieve group text. * @param h header - * @retval type address of tag type - * @retval data address of tag value pointer - * @retval count address of no. of data items - * @retval freeData address of data-was-malloc'ed indicator + * @retval *type tag type + * @retval *data tag value pointer + * @retval *count no. of data items + * @retval *freeData data-was-malloc'ed indicator * @return 0 on success */ static int groupTag(Header h, /*@out@*/ rpmTagType * type, @@ -864,23 +944,26 @@ static int groupTag(Header h, /*@out@*/ rpmTagType * type, /*@-type@*/ /* FIX: cast? */ const struct headerSprintfExtension_s rpmHeaderFormats[] = { - { HEADER_EXT_TAG, "RPMTAG_GROUP", { groupTag } }, - { HEADER_EXT_TAG, "RPMTAG_DESCRIPTION", { descriptionTag } }, - { HEADER_EXT_TAG, "RPMTAG_SUMMARY", { summaryTag } }, - { HEADER_EXT_TAG, "RPMTAG_FILENAMES", { filenamesTag } }, - { HEADER_EXT_TAG, "RPMTAG_FSSIZES", { fssizesTag } }, - { HEADER_EXT_TAG, "RPMTAG_FSNAMES", { fsnamesTag } }, - { HEADER_EXT_TAG, "RPMTAG_INSTALLPREFIX", { instprefixTag } }, - { HEADER_EXT_TAG, "RPMTAG_TRIGGERCONDS", { triggercondsTag } }, - { HEADER_EXT_TAG, "RPMTAG_TRIGGERTYPE", { triggertypeTag } }, - { HEADER_EXT_FORMAT, "armor", { armorFormat } }, - { HEADER_EXT_FORMAT, "base64", { base64Format } }, - { HEADER_EXT_FORMAT, "pgpsig", { pgpsigFormat } }, - { HEADER_EXT_FORMAT, "depflags", { depflagsFormat } }, - { HEADER_EXT_FORMAT, "fflags", { fflagsFormat } }, - { HEADER_EXT_FORMAT, "perms", { permsFormat } }, - { HEADER_EXT_FORMAT, "permissions", { permsFormat } }, - { HEADER_EXT_FORMAT, "triggertype", { triggertypeFormat } }, - { HEADER_EXT_MORE, NULL, { (void *) headerDefaultFormats } } + { HEADER_EXT_TAG, "RPMTAG_GROUP", { groupTag } }, + { HEADER_EXT_TAG, "RPMTAG_DESCRIPTION", { descriptionTag } }, + { HEADER_EXT_TAG, "RPMTAG_SUMMARY", { summaryTag } }, + { HEADER_EXT_TAG, "RPMTAG_FILECLASS", { fileclassTag } }, + { HEADER_EXT_TAG, "RPMTAG_FILENAMES", { filenamesTag } }, + { HEADER_EXT_TAG, "RPMTAG_FILEPROVIDE", { fileprovideTag } }, + { HEADER_EXT_TAG, "RPMTAG_FILEREQUIRE", { filerequireTag } }, + { HEADER_EXT_TAG, "RPMTAG_FSSIZES", { fssizesTag } }, + { HEADER_EXT_TAG, "RPMTAG_FSNAMES", { fsnamesTag } }, + { HEADER_EXT_TAG, "RPMTAG_INSTALLPREFIX", { instprefixTag } }, + { HEADER_EXT_TAG, "RPMTAG_TRIGGERCONDS", { triggercondsTag } }, + { HEADER_EXT_TAG, "RPMTAG_TRIGGERTYPE", { triggertypeTag } }, + { HEADER_EXT_FORMAT, "armor", { armorFormat } }, + { HEADER_EXT_FORMAT, "base64", { base64Format } }, + { HEADER_EXT_FORMAT, "pgpsig", { pgpsigFormat } }, + { HEADER_EXT_FORMAT, "depflags", { depflagsFormat } }, + { HEADER_EXT_FORMAT, "fflags", { fflagsFormat } }, + { HEADER_EXT_FORMAT, "perms", { permsFormat } }, + { HEADER_EXT_FORMAT, "permissions", { permsFormat } }, + { HEADER_EXT_FORMAT, "triggertype", { triggertypeFormat } }, + { HEADER_EXT_MORE, NULL, { (void *) headerDefaultFormats } } } ; /*@=type@*/ diff --git a/lib/misc.c b/lib/misc.c index e49dbfc6a..bb94c54b4 100644 --- a/lib/misc.c +++ b/lib/misc.c @@ -14,7 +14,7 @@ const char * RPMVERSION = VERSION; #include #include /* XXX for rpmGetPath */ #include - +#include "legacy.h" #include "misc.h" #include "debug.h" @@ -403,7 +403,7 @@ int rpmHeaderGetEntry(Header h, int_32 tag, int_32 *type, case RPMTAG_OLDFILENAMES: { const char ** fl = NULL; int count; - rpmBuildFileList(h, &fl, &count); + rpmfiBuildFNames(h, RPMTAG_BASENAMES, &fl, &count); if (count > 0) { *p = fl; if (c) *c = count; diff --git a/lib/package.c b/lib/package.c index 47e609a25..5b70fd6c6 100644 --- a/lib/package.c +++ b/lib/package.c @@ -12,7 +12,7 @@ #include "rpmts.h" #include "misc.h" /* XXX stripTrailingChar() */ -#include "legacy.h" /* XXX providePackageNVR() and compressFileList() */ +#include "legacy.h" /* XXX legacyRetrofit() */ #include "rpmlead.h" #include "header_internal.h" /* XXX headerCheck */ diff --git a/lib/psm.c b/lib/psm.c index 1c7ba590b..afbd0c03e 100644 --- a/lib/psm.c +++ b/lib/psm.c @@ -30,7 +30,7 @@ #include "rpmlead.h" /* writeLead proto */ #include "signature.h" /* signature constants */ -#include "legacy.h" /* XXX buildOrigFileList() */ +#include "legacy.h" /* XXX rpmfiBuildFNames() */ #include "ugid.h" /* XXX unameToUid() and gnameToGid() */ #include "misc.h" /* XXX stripTrailingChar() */ #include "rpmdb.h" /* XXX for db_chrootDone */ @@ -525,7 +525,7 @@ rpmRC rpmInstallSourcePackage(rpmts ts, FD_t fd, i = fi->fc; if (fi->h != NULL) { /* XXX can't happen */ - rpmBuildFileList(fi->h, &fi->apath, NULL); + rpmfiBuildFNames(fi->h, RPMTAG_BASENAMES, &fi->apath, NULL); if (headerIsEntry(fi->h, RPMTAG_COOKIE)) for (i = 0; i < fi->fc; i++) @@ -1670,9 +1670,9 @@ assert(psm->mi == NULL); CPIO_MAP_PATH | CPIO_MAP_MODE | CPIO_MAP_UID | CPIO_MAP_GID; if (headerIsEntry(fi->h, RPMTAG_ORIGBASENAMES)) - buildOrigFileList(fi->h, &fi->apath, NULL); + rpmfiBuildFNames(fi->h, RPMTAG_ORIGBASENAMES, &fi->apath, NULL); else - rpmBuildFileList(fi->h, &fi->apath, NULL); + rpmfiBuildFNames(fi->h, RPMTAG_BASENAMES, &fi->apath, NULL); if (fi->fuser == NULL) xx = hge(fi->h, RPMTAG_FILEUSERNAME, NULL, diff --git a/lib/rpmfi.c b/lib/rpmfi.c index 222c5e195..00901b3fa 100644 --- a/lib/rpmfi.c +++ b/lib/rpmfi.c @@ -11,6 +11,8 @@ #include "cpio.h" /* XXX CPIO_FOO */ #include "fsm.h" /* XXX newFSM() */ +#include "rpmds.h" + #define _RPMFI_INTERNAL #include "rpmfi.h" @@ -1141,3 +1143,179 @@ fprintf(stderr, "*** fi %p\t%s[%d]\n", fi, Type, (fi ? fi->fc : 0)); return rpmfiLink(fi, (fi ? fi->Type : NULL)); /*@=compdef =nullstate@*/ } + +void rpmfiBuildFClasses(Header h, + /*@out@*/ const char *** fclassp, /*@out@*/ int * fcp) +{ + HGE_t hge = (HGE_t)headerGetEntryMinMemory; + HFD_t hfd = headerFreeData; + const char ** cdict; + const int_32 * fcdictx; + int_32 ncdict, nfcdictx; + const char ** av; + int_32 ac = 0; + size_t nb; + rpmTagType fct, cdt; + char * t; + int i, j, xx; + + if (!hge(h, RPMTAG_FILESIZES, NULL, (void **) NULL, &ac) || ac == 0) { + if (fclassp) *fclassp = NULL; + if (fcp) *fcp = 0; + return; /* no file list */ + } + + fcdictx = NULL; + nfcdictx = 0; + xx = hge(h, RPMTAG_FILECLASS, &fct, (void **) &fcdictx, &nfcdictx); + cdict = NULL; + ncdict = 0; + xx = hge(h, RPMTAG_CLASSDICT, &cdt, (void **) &cdict, &ncdict); + + nb = (ac + 1) * sizeof(*av); + for (i = 0; i < ac; i++) { + if (fcdictx != NULL && cdict != NULL) { + j = fcdictx[i]; +assert(j < ncdict); + nb += strlen(cdict[j]); + } + nb += 1; + } + + av = xmalloc(nb); + t = ((char *) av) + ((ac + 1) * sizeof(*av)); + /*@-branchstate@*/ + for (i = 0; i < ac; i++) { + av[i] = t; + if (fcdictx != NULL && cdict != NULL) { + j = fcdictx[i]; + t = stpcpy(t, cdict[j]); + } + *t++ = '\0'; + } + av[ac] = NULL; + /*@=branchstate@*/ + + cdict = hfd(cdict, cdt); + fcdictx = hfd(fcdictx, fct); + + /*@-branchstate@*/ + if (fclassp) + *fclassp = av; + else + av = _free(av); + /*@=branchstate@*/ + if (fcp) *fcp = ac; +} + +void rpmfiBuildFDeps(Header h, rpmTag tagN, + /*@out@*/ const char *** fdepsp, /*@out@*/ int * fcp) +{ + HGE_t hge = (HGE_t)headerGetEntryMinMemory; + HFD_t hfd = headerFreeData; + int scareMem = 1; + char deptype = 'R'; + char mydt; + rpmds ds; + const char * DNEVR; + const int_32 * ddict; + const int_32 * fddictx; + const int_32 * fddictn; + int_32 nddict, nfddictx, nfddictn; + const char ** av; + int_32 ac = 0; + size_t nb; + rpmTagType ddt, fxt, fnt; + char * t; + int dx, ndx, i, ix, xx; + + if (!hge(h, RPMTAG_FILESIZES, NULL, (void **) NULL, &ac) || ac == 0) { + if (fdepsp) *fdepsp = NULL; + if (fcp) *fcp = 0; + return; /* no file list */ + } + + if (tagN == RPMTAG_PROVIDENAME) + deptype = 'P'; + else if (tagN == RPMTAG_REQUIRENAME) + deptype = 'R'; + ds = rpmdsNew(h, tagN, scareMem); + + fddictn = NULL; + nfddictn = 0; + xx = hge(h, RPMTAG_FILEDEPENDSN, &fnt, (void **) &fddictn, &nfddictn); + fddictx = NULL; + nfddictx = 0; + xx = hge(h, RPMTAG_FILEDEPENDSX, &fxt, (void **) &fddictx, &nfddictx); + ddict = NULL; + nddict = 0; + xx = hge(h, RPMTAG_DEPENDSDICT, &ddt, (void **) &ddict, &nddict); + + nb = (ac + 1) * sizeof(*av); + for (i = 0; i < ac; i++) { + if (fddictx != NULL && fddictn != NULL) { + dx = fddictx[i]; + ndx = fddictn[i]; + if (ddict != NULL) + while (ndx-- > 0) { + ix = ddict[dx++]; + mydt = ((ix >> 24) & 0xff); + if (mydt != deptype) + continue; + ix &= 0x00ffffff; + (void) rpmdsSetIx(ds, ix-1); + if (rpmdsNext(ds) < 0) + continue; + DNEVR = rpmdsDNEVR(ds) + 2; + if (DNEVR != NULL) + nb += strlen(DNEVR+2) + 1; + } + } + nb += 1; + } + + av = xmalloc(nb); + t = ((char *) av) + ((ac + 1) * sizeof(*av)); + /*@-branchstate@*/ + for (i = 0; i < ac; i++) { + av[i] = t; + if (fddictx != NULL && fddictn != NULL) { + dx = fddictx[i]; + ndx = fddictn[i]; + if (ddict != NULL) + while (ndx-- > 0) { + ix = ddict[dx++]; + mydt = ((ix >> 24) & 0xff); + if (mydt != deptype) + continue; + ix &= 0x00ffffff; + (void) rpmdsSetIx(ds, ix-1); + if (rpmdsNext(ds) < 0) + continue; + DNEVR = rpmdsDNEVR(ds) + 2; + if (DNEVR != NULL) { + t = stpcpy(t, DNEVR+2); + *t++ = ' '; + *t = '\0'; + } + } + } + *t++ = '\0'; + } + av[ac] = NULL; + /*@=branchstate@*/ + + ddict = hfd(ddict, ddt); + fddictx = hfd(fddictx, fxt); + fddictn = hfd(fddictn, fnt); + ds = rpmdsFree(ds); + + /*@-branchstate@*/ + if (fdepsp) + *fdepsp = av; + else + av = _free(av); + /*@=branchstate@*/ + if (fcp) *fcp = ac; +} + diff --git a/lib/rpmfi.h b/lib/rpmfi.h index 87b1f4370..3698a67ad 100644 --- a/lib/rpmfi.h +++ b/lib/rpmfi.h @@ -429,6 +429,33 @@ rpmfi rpmfiNew(/*@null@*/ rpmts ts, Header h, rpmTag tagN, int scareMem) /*@globals fileSystem @*/ /*@modifies ts, h, fileSystem @*/; +/** + * Retrieve file classes from header. + * + * This function is used to retrieve file classes from the header. + * + * @param h header + * @retval *fclassp array of file classes + * @retval *fcp number of files + */ +void rpmfiBuildFClasses(Header h, + /*@out@*/ const char *** fclassp, /*@out@*/ int * fcp) + /*@modifies *fclassp, *fcp @*/; + +/** + * Retrieve per-file dependencies from header. + * + * This function is used to retrieve per-file dependencies from the header. + * + * @param h header + * @param tagN RPMTAG_PROVIDENAME | RPMTAG_REQUIRENAME + * @retval *fdepsp array of file dependencies + * @retval *fcp number of files + */ +void rpmfiBuildFDeps(Header h, rpmTag tagN, + /*@out@*/ const char *** fdepsp, /*@out@*/ int * fcp) + /*@modifies *fdepsp, *fcp @*/; + /** * Return file type from mode_t. * @param mode file mode bits (from header) diff --git a/lib/rpmlib.h b/lib/rpmlib.h index 02d91a088..eb08e2716 100644 --- a/lib/rpmlib.h +++ b/lib/rpmlib.h @@ -138,23 +138,6 @@ void headerMergeLegacySigs(Header h, const Header sigh) Header headerRegenSigHeader(const Header h, int noArchiveSize) /*@modifies h @*/; -/** \ingroup header - * Retrieve file names from header. - * The representation of file names in package headers changed in rpm-4.0. - * Originally, file names were stored as an array of paths. In rpm-4.0, - * file names are stored as separate arrays of dirname's and basename's, - * with a dirname index to associate the correct dirname with each basname. - * This function is used to retrieve file names independent of how the - * file names are represented in the package header. - * - * @param h header - * @retval fileListPtr address of array of file names - * @retval fileCountPtr address of number of files - */ -void rpmBuildFileList(Header h, /*@out@*/ const char *** fileListPtr, - /*@out@*/ int * fileCountPtr) - /*@modifies *fileListPtr, *fileCountPtr @*/; - /** \ingroup header * Retrieve tag info from header. * This is a "dressed" entry to headerGetEntry to do: diff --git a/po/cs.po b/po/cs.po index 2756a9585..75c8e7905 100644 --- a/po/cs.po +++ b/po/cs.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 2001-07-24 10:02+0100\n" "Last-Translator: Milan Kerslager \n" "Language-Team: Czech \n" @@ -1410,26 +1410,26 @@ msgstr "========== pokra msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(není èíslo)" -#: lib/formats.c:161 +#: lib/formats.c:172 #, fuzzy msgid "(not base64)" msgstr "(není èíslo)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 #, fuzzy msgid "(not a blob)" msgstr "(není èíslo)" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "vynechat pøípadné PGP podpisy" @@ -2504,37 +2504,37 @@ msgstr " %s A %s\tB %s\n" msgid "package %s has unsatisfied %s: %s\n" msgstr "balíèek %s-%s-%s má nesplnìné po¾adavky: %s\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 #, fuzzy msgid "========== relocations\n" msgstr "========== ukládání tsort relací\n" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "OS je vyøazen: %s\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, fuzzy, c-format msgid "%5d relocate %s -> %s\n" msgstr "%s vytvoøen jako %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, fuzzy, c-format msgid "excluding multilib path %s%s\n" msgstr "Provádìní(%s): %s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, fuzzy, c-format msgid "excluding %s %s\n" msgstr "Provádìní(%s): %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, fuzzy, c-format msgid "relocating %s to %s\n" msgstr "Provádìní(%s): %s\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, fuzzy, c-format msgid "relocating directory %s to %s\n" msgstr "nemohu provést dotaz %s: %s\n" diff --git a/po/da.po b/po/da.po index 8f2e11cae..b0ae6241e 100644 --- a/po/da.po +++ b/po/da.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 2001-04-05 23:03GMT\n" "Last-Translator: Claus Hindsgaul \n" "Language-Team: Danish \n" @@ -1409,26 +1409,26 @@ msgstr "========== forts msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(ikke et tal)" -#: lib/formats.c:161 +#: lib/formats.c:172 #, fuzzy msgid "(not base64)" msgstr "(ikke et tal)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 #, fuzzy msgid "(not a blob)" msgstr "(ikke et tal)" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "overspring eventuelle PGP-signaturer" @@ -2517,36 +2517,36 @@ msgstr " %s A %s\tB %s\n" msgid "package %s has unsatisfied %s: %s\n" msgstr "pakke %s-%s-%s krav ikke opfyldt: %s\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "========== gemmer omrokeringer\n" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, c-format msgid "%5d exclude %s\n" msgstr "%5d ekskluderer %s\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, c-format msgid "%5d relocate %s -> %s\n" msgstr "%5d omrokerer %s -> %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "ekskluderer multilib-sti %s%s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, c-format msgid "excluding %s %s\n" msgstr "ekskluderer %s %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "omrokerer %s til %s\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, c-format msgid "relocating directory %s to %s\n" msgstr "omrokerer kataloget %s til %s\n" diff --git a/po/de.po b/po/de.po index 46ba13955..294158a69 100644 --- a/po/de.po +++ b/po/de.po @@ -37,7 +37,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 1998-08-03 18:02+02:00\n" "Last-Translator: Karl Eichwalder \n" "Language-Team: German \n" @@ -1536,26 +1536,26 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(keine Zahl)" -#: lib/formats.c:161 +#: lib/formats.c:172 #, fuzzy msgid "(not base64)" msgstr "(keine Zahl)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 #, fuzzy msgid "(not a blob)" msgstr "(keine Zahl)" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "alle PGP-Signaturen überspringen" @@ -2681,39 +2681,39 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "Paket %s wird nicht in %s aufgeführt" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" # , c-format -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "Hole %s heraus\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, fuzzy, c-format msgid "%5d relocate %s -> %s\n" msgstr "kann Datei %s nicht öffnen: " # , c-format -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, fuzzy, c-format msgid "excluding multilib path %s%s\n" msgstr "Hole %s heraus\n" # , c-format -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, fuzzy, c-format msgid "excluding %s %s\n" msgstr "Hole %s heraus\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, fuzzy, c-format msgid "relocating %s to %s\n" msgstr "Fehler beim Anlegen des Verzeichnisses %s: %s" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, fuzzy, c-format msgid "relocating directory %s to %s\n" msgstr "Fehler beim Anlegen des Verzeichnisses %s: %s" diff --git a/po/fi.po b/po/fi.po index 9824750db..6f05d5770 100644 --- a/po/fi.po +++ b/po/fi.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 1998-05-02 21:41:47-0400\n" "Last-Translator: Raimo Koski \n" "Language-Team: Finnish \n" @@ -1431,26 +1431,26 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(ei ole luku)" -#: lib/formats.c:161 +#: lib/formats.c:172 #, fuzzy msgid "(not base64)" msgstr "(ei ole luku)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 #, fuzzy msgid "(not a blob)" msgstr "(ei ole luku)" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "ohita PGP-allekirjoitukset" @@ -2560,36 +2560,36 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "paketti %s ei ole %s:ssä" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "Haen: %s\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, fuzzy, c-format msgid "%5d relocate %s -> %s\n" msgstr "en voinut avata tiedostoa %s: " -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, fuzzy, c-format msgid "excluding multilib path %s%s\n" msgstr "Haen: %s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, fuzzy, c-format msgid "excluding %s %s\n" msgstr "Haen: %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, fuzzy, c-format msgid "relocating %s to %s\n" msgstr "virhe luotaessa hakemistoa %s: %s" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, fuzzy, c-format msgid "relocating directory %s to %s\n" msgstr "virhe luotaessa hakemistoa %s: %s" diff --git a/po/fr.po b/po/fr.po index cf5152a36..0396c64d7 100644 --- a/po/fr.po +++ b/po/fr.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1457,24 +1457,24 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "" -#: lib/formats.c:161 +#: lib/formats.c:172 msgid "(not base64)" msgstr "" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 msgid "(not a blob)" msgstr "" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr " --sign - genre une signature PGP" @@ -2598,36 +2598,36 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "aucun package n'a t spcifi pour l'installation" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "impossible d'ouvrir: %s\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, fuzzy, c-format msgid "%5d relocate %s -> %s\n" msgstr "impossible d'ouvrir: %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, fuzzy, c-format msgid "excluding %s %s\n" msgstr "impossible d'ouvrir: %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, fuzzy, c-format msgid "relocating %s to %s\n" msgstr "impossible d'ouvrir: %s\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, fuzzy, c-format msgid "relocating directory %s to %s\n" msgstr "impossible d'ouvrir: %s\n" diff --git a/po/gl.po b/po/gl.po index 30005a6d3..b86adbfdb 100644 --- a/po/gl.po +++ b/po/gl.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.1\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 2001-01-13 22:31+0100\n" "Last-Translator: Jesús Bravo Álvarez \n" "Language-Team: Galician \n" @@ -1369,24 +1369,24 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "" -#: lib/formats.c:161 +#: lib/formats.c:172 msgid "(not base64)" msgstr "" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 msgid "(not a blob)" msgstr "" -#: lib/formats.c:311 +#: lib/formats.c:322 msgid "(not an OpenPGP signature)" msgstr "" @@ -2423,36 +2423,36 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, c-format msgid "%5d exclude %s\n" msgstr "" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, c-format msgid "%5d relocate %s -> %s\n" msgstr "" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, c-format msgid "excluding %s %s\n" msgstr "" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, c-format msgid "relocating directory %s to %s\n" msgstr "" diff --git a/po/is.po b/po/is.po index 2be66cd11..0ee269e4d 100644 --- a/po/is.po +++ b/po/is.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 2001-07-12 13:25+0000\n" "Last-Translator: Richard Allen \n" "Language-Team: is \n" @@ -1381,24 +1381,24 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "" -#: lib/formats.c:161 +#: lib/formats.c:172 msgid "(not base64)" msgstr "" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 msgid "(not a blob)" msgstr "" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "búa til undirskrift" @@ -2450,36 +2450,36 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "get ekki opnað pakka gagnagrunn í\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "%5d færa %s -> %s\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, c-format msgid "%5d relocate %s -> %s\n" msgstr "%5d færa %s -> %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, fuzzy, c-format msgid "excluding %s %s\n" msgstr "lína %d: %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, fuzzy, c-format msgid "relocating %s to %s\n" msgstr "%5d færa %s -> %s\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, fuzzy, c-format msgid "relocating directory %s to %s\n" msgstr "%5d færa %s -> %s\n" diff --git a/po/ja.po b/po/ja.po index eae4c4dd6..99de63ee6 100644 --- a/po/ja.po +++ b/po/ja.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 1999-12-01 22:49 +JST\n" "Last-Translator: Kanda Mitsuru \n" "Language-Team: JRPM \n" @@ -1454,26 +1454,26 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(¿ô»ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó)" -#: lib/formats.c:161 +#: lib/formats.c:172 #, fuzzy msgid "(not base64)" msgstr "(¿ô»ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 #, fuzzy msgid "(not a blob)" msgstr "(¿ô»ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó)" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "PGP ½ð̾¤ò¥¹¥­¥Ã¥×¤·¤Þ¤¹" @@ -2599,36 +2599,36 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "¥Ñ¥Ã¥±¡¼¥¸ %s ¤Ï require ¤¬Ëþ¤¿¤µ¤ì¤Æ¤¤¤Þ¤»¤ó: %s\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "OS ¤Ï½ü³°¤µ¤ì¤Æ¤¤¤Þ¤¹: %s" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, fuzzy, c-format msgid "%5d relocate %s -> %s\n" msgstr "%s ¤ò %s ¤ËºÆÇÛÃÖ¤·¤Æ¤¤¤Þ¤¹\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, fuzzy, c-format msgid "excluding multilib path %s%s\n" msgstr "¥Õ¥¡¥¤¥ë¤Î½ü³°: %s%s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, fuzzy, c-format msgid "excluding %s %s\n" msgstr "¥Õ¥¡¥¤¥ë¤Î½ü³°: %s%s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "%s ¤ò %s ¤ËºÆÇÛÃÖ¤·¤Æ¤¤¤Þ¤¹\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, fuzzy, c-format msgid "relocating directory %s to %s\n" msgstr "¥Ç¥£¥ì¥¯¥È¥ê %s ¤ò %s ¤ËºÆÇÛÃÖ¤·¤Æ¤¤¤Þ¤¹\n" diff --git a/po/ko.po b/po/ko.po index caf166ee6..a23fa8026 100644 --- a/po/ko.po +++ b/po/ko.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.4\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 2002-03-04 17:17+0900\n" "Last-Translator: Jong-Hoon Ryu \n" "Language-Team: GNU Translation project \n" @@ -1396,24 +1396,24 @@ msgstr "========== tsort msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(¼ýÀÚ°¡ ¾Æ´Õ´Ï´Ù)" -#: lib/formats.c:161 +#: lib/formats.c:172 msgid "(not base64)" msgstr "(base64°¡ ¾Æ´Õ´Ï´Ù)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "(ºÎÀûÇÕÇÑ Å¸ÀÔ)" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 msgid "(not a blob)" msgstr "(BLOB[Binary Large OBject]ÀÌ ¾Æ´Õ´Ï´Ù)" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "¾î¶°ÇÑ PGP ¼­¸íµµ °Ë»çÇÏÁö ¾Ê½À´Ï´Ù" @@ -2492,36 +2492,36 @@ msgstr " %s A %s\tB %s\n" msgid "package %s has unsatisfied %s: %s\n" msgstr "%s ÆÐÅ°ÁöÀÇ ÇÊ¿ä»çÇ×(³»¿ª)ÀÌ ¸¸Á·ÇÏÁö ¾ÊÀ½: %s\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "========== Àç¹èÄ¡\n" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, c-format msgid "%5d exclude %s\n" msgstr "%5d Á¦¿Ü %s\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, c-format msgid "%5d relocate %s -> %s\n" msgstr "%5d Àç¹èÄ¡ %s -> %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "%s%s multilib °æ·Î¸¦ Á¦¿Ü½Ãŵ´Ï´Ù\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, c-format msgid "excluding %s %s\n" msgstr "%s %s(À»)¸¦ Á¦¿Ü½Ãŵ´Ï´Ù\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "%s(À»)¸¦ %s(À¸)·Î Àç¹èÄ¡ ÇÕ´Ï´Ù\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, c-format msgid "relocating directory %s to %s\n" msgstr "%s µð·ºÅ丮¸¦ %s(À¸)·Î Àç¹èÄ¡ ÇÕ´Ï´Ù\n" diff --git a/po/no.po b/po/no.po index 3205a356a..75fe08dfa 100644 --- a/po/no.po +++ b/po/no.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 2001-06-27 12:24+0200\n" "Last-Translator: Kjartan Maraas \n" "Language-Team: Norwegian \n" @@ -1396,24 +1396,24 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "" -#: lib/formats.c:161 +#: lib/formats.c:172 msgid "(not base64)" msgstr "" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 msgid "(not a blob)" msgstr "" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "hopp over PGP-signaturer" @@ -2477,36 +2477,36 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "pakke %s er i konflikt: %s\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "eksluderer %s %s\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, c-format msgid "%5d relocate %s -> %s\n" msgstr "%5d omplasser %s -> %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "ekskluderer multilib-sti %s%s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, c-format msgid "excluding %s %s\n" msgstr "eksluderer %s %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "relokerer %s til %s\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, c-format msgid "relocating directory %s to %s\n" msgstr "relokerer katalog %s til %s\n" diff --git a/po/pl.po b/po/pl.po index 41420b4a5..40610a785 100644 --- a/po/pl.po +++ b/po/pl.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 1999-05-25 17:00+0100\n" "Last-Translator: Pawe³ Dziekoñski \n" "Language-Team: Polish \n" @@ -1436,26 +1436,26 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(nie jest liczb±)" -#: lib/formats.c:161 +#: lib/formats.c:172 #, fuzzy msgid "(not base64)" msgstr "(nie jest liczb±)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 #, fuzzy msgid "(not a blob)" msgstr "(nie jest liczb±)" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "pomiñ wszelkie sygnatury PGP" @@ -2560,36 +2560,36 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "zale¿no¶ci pakietu %s nie zosta³y spe³nione: %s\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "Ten OS nie jest wspierany: %s" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, fuzzy, c-format msgid "%5d relocate %s -> %s\n" msgstr "przesuwanie %s do %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, fuzzy, c-format msgid "excluding multilib path %s%s\n" msgstr "wy³±czanie %s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, fuzzy, c-format msgid "excluding %s %s\n" msgstr "wy³±czanie %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "przesuwanie %s do %s\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, fuzzy, c-format msgid "relocating directory %s to %s\n" msgstr "przesuwanie %s do %s\n" diff --git a/po/pt.po b/po/pt.po index bb072daaf..1b3ca3b00 100644 --- a/po/pt.po +++ b/po/pt.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 2002-02-14 10:51+0000\n" "Last-Translator: José Nuno Coelho Sanarra Pires \n" "Language-Team: pt %s\n" msgstr "%5d mudar de local %s -> %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "a exclur a directoria 'multilib' %s%s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, c-format msgid "excluding %s %s\n" msgstr "a excluir o %s %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "a mudar o %s para %s\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, c-format msgid "relocating directory %s to %s\n" msgstr "a mudar a directoria %s para %s\n" diff --git a/po/pt_BR.po b/po/pt_BR.po index 7eded9b6f..79a0724bb 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8-bit\n" @@ -1545,24 +1545,24 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "" -#: lib/formats.c:161 +#: lib/formats.c:172 msgid "(not base64)" msgstr "" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 msgid "(not a blob)" msgstr "" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "desconsidere quaisquer assinaturas PGP" @@ -2696,7 +2696,7 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "no foi passado pacote para instalao" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" @@ -2708,13 +2708,13 @@ msgstr "" # "Content-Type: text/plain; charset=ISO-8859-1\n" # "Content-Transfer-Encoding: 8-bit\n" # , c-format -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "RPM verso %s\n" # , c-format -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, fuzzy, c-format msgid "%5d relocate %s -> %s\n" msgstr "No consegui abrir: %s\n" @@ -2727,7 +2727,7 @@ msgstr "No consegui abrir: %s\n" # "Content-Type: text/plain; charset=ISO-8859-1\n" # "Content-Transfer-Encoding: 8-bit\n" # , c-format -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, fuzzy, c-format msgid "excluding multilib path %s%s\n" msgstr "RPM verso %s\n" @@ -2740,19 +2740,19 @@ msgstr "RPM verso %s\n" # "Content-Type: text/plain; charset=ISO-8859-1\n" # "Content-Transfer-Encoding: 8-bit\n" # , c-format -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, fuzzy, c-format msgid "excluding %s %s\n" msgstr "RPM verso %s\n" # , c-format -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, fuzzy, c-format msgid "relocating %s to %s\n" msgstr "No consegui abrir: %s\n" # , c-format -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, fuzzy, c-format msgid "relocating directory %s to %s\n" msgstr "No consegui abrir: %s\n" diff --git a/po/ro.po b/po/ro.po index a408dcf6e..ca3a054d6 100644 --- a/po/ro.po +++ b/po/ro.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 1999-04-10 12:00+EST\n" "Last-Translator: Cristian Gafton \n" "Language-Team: Romanian \n" @@ -1369,24 +1369,24 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "" -#: lib/formats.c:161 +#: lib/formats.c:172 msgid "(not base64)" msgstr "" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 msgid "(not a blob)" msgstr "" -#: lib/formats.c:311 +#: lib/formats.c:322 msgid "(not an OpenPGP signature)" msgstr "" @@ -2423,36 +2423,36 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, c-format msgid "%5d exclude %s\n" msgstr "" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, c-format msgid "%5d relocate %s -> %s\n" msgstr "" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, c-format msgid "excluding %s %s\n" msgstr "" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, c-format msgid "relocating directory %s to %s\n" msgstr "" diff --git a/po/rpm.pot b/po/rpm.pot index 6509b550a..8411bc203 100644 --- a/po/rpm.pot +++ b/po/rpm.pot @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1375,24 +1375,24 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "" -#: lib/formats.c:161 +#: lib/formats.c:172 msgid "(not base64)" msgstr "" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 msgid "(not a blob)" msgstr "" -#: lib/formats.c:311 +#: lib/formats.c:322 msgid "(not an OpenPGP signature)" msgstr "" @@ -2429,36 +2429,36 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, c-format msgid "%5d exclude %s\n" msgstr "" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, c-format msgid "%5d relocate %s -> %s\n" msgstr "" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, c-format msgid "excluding %s %s\n" msgstr "" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, c-format msgid "relocating directory %s to %s\n" msgstr "" diff --git a/po/ru.po b/po/ru.po index c364ae938..7416b9154 100644 --- a/po/ru.po +++ b/po/ru.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 2002-08-27 13:36-0400\n" "Last-Translator: Eugene Kanter, \n" "Language-Team: Black Cat Linux Team \n" @@ -1407,24 +1407,24 @@ msgstr "========== msgid "rpmtsOrder failed, %d elements remain\n" msgstr "ÏÛÉÂËÁ rpmtsOrder, ÏÓÔÁÌÏÓØ %d ÜÌÅÍÅÎÔÏ×\n" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(ÎÅ ÞÉÓÌÏ)" -#: lib/formats.c:161 +#: lib/formats.c:172 msgid "(not base64)" msgstr "(ÎÅ base64)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "(ÎÅÐÒÁ×ÉÌØÎÙÊ ÔÉÐ)" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 msgid "(not a blob)" msgstr "(not a blob)" -#: lib/formats.c:311 +#: lib/formats.c:322 msgid "(not an OpenPGP signature)" msgstr "(ÎÅ ÐÏÄÐÉÓØ ÆÏÒÍÁÔÁ OpenPGP)" @@ -2473,36 +2473,36 @@ msgstr " %s A %s\tB %s\n" msgid "package %s has unsatisfied %s: %s\n" msgstr "ÐÁËÅÔ %s ÓÏÄÅÒÖÉÔ ÎÅÕÄÏ×ÌÅÔ×ÏÒÅÎÎÙÅ %s: %s\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "========== ÐÅÒÅÍÅÝÅÎÉÊ\n" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, c-format msgid "%5d exclude %s\n" msgstr "%5d ÉÓËÌÀÞÅÎ %s\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, c-format msgid "%5d relocate %s -> %s\n" msgstr "%5d ÐÅÒÅÍÅÝÅÎÉÅ %s -> %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "ÉÓËÌÀÞÁÅÔÓÑ ÍÎÏÇÏÂÉÂÌÉÏÔÅÞÎÙÊ ÐÕÔØ %s%s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, c-format msgid "excluding %s %s\n" msgstr "ÉÓËÌÀÞÁÅÔÓÑ %s %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "ÐÅÒÅÍÅÝÁÅÔÓÑ %s × %s\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, c-format msgid "relocating directory %s to %s\n" msgstr "ÐÅÒÅÍÅÝÁÅÔÓÑ ËÁÔÁÌÏÇ %s × %s\n" diff --git a/po/sk.po b/po/sk.po index 7d62c6359..382728694 100644 --- a/po/sk.po +++ b/po/sk.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 1999-04-08 21:37+02:00\n" "Last-Translator: Stanislav Meduna \n" "Language-Team: Slovak \n" @@ -1434,26 +1434,26 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(nie je èíslo)" -#: lib/formats.c:161 +#: lib/formats.c:172 #, fuzzy msgid "(not base64)" msgstr "(nie je èíslo)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 #, fuzzy msgid "(not a blob)" msgstr "(nie je èíslo)" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "vynecha» akékoµvek PGP podpisy" @@ -2558,36 +2558,36 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "po¾iadavka balíka %s nie je uspokojená: %s\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "OS je vynechaný: %s" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, fuzzy, c-format msgid "%5d relocate %s -> %s\n" msgstr "presúva sa %s do %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, fuzzy, c-format msgid "excluding multilib path %s%s\n" msgstr "vynecháva sa %s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, fuzzy, c-format msgid "excluding %s %s\n" msgstr "vynecháva sa %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "presúva sa %s do %s\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, fuzzy, c-format msgid "relocating directory %s to %s\n" msgstr "presúva sa %s do %s\n" diff --git a/po/sl.po b/po/sl.po index a082e7cda..e6e65b40a 100644 --- a/po/sl.po +++ b/po/sl.po @@ -1,12 +1,12 @@ # -*- mode:po; coding:iso-latin-2; -*- Slovenian messages for Redhat pkg. mngr. # Copyright (C) 2000 Free Software Foundation, Inc. # Primo¾ Peterlin , 2000. -# $Id: sl.po,v 1.336 2002/12/18 16:19:10 jbj Exp $ +# $Id: sl.po,v 1.337 2002/12/18 22:54:48 jbj Exp $ # msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 2000-10-08 19:05+0200\n" "Last-Translator: Grega Fajdiga \n" "Language-Team: Slovenian \n" @@ -1437,26 +1437,26 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(ni ¹tevilo)" -#: lib/formats.c:161 +#: lib/formats.c:172 #, fuzzy msgid "(not base64)" msgstr "(ni ¹tevilo)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 #, fuzzy msgid "(not a blob)" msgstr "(ni ¹tevilo)" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "preskoèi vse podpise PGP" @@ -2560,36 +2560,36 @@ msgstr " %s A %s\tB %s\n" msgid "package %s has unsatisfied %s: %s\n" msgstr "Za paket %s-%s-%s: zahteva %s ni zadovoljena\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "OS je izkljuèen: %s" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, fuzzy, c-format msgid "%5d relocate %s -> %s\n" msgstr "premikanje %s v %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, fuzzy, c-format msgid "excluding multilib path %s%s\n" msgstr "izkljuèevanje datoteke %s%s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, fuzzy, c-format msgid "excluding %s %s\n" msgstr "izkljuèevanje datoteke %s%s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "premikanje %s v %s\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, c-format msgid "relocating directory %s to %s\n" msgstr "premiokanje imenika %s v %s\n" diff --git a/po/sr.po b/po/sr.po index 787be6a56..4a37cc6f8 100644 --- a/po/sr.po +++ b/po/sr.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-2\n" "Content-Transfer-Encoding: 8bit\n" @@ -1424,26 +1424,26 @@ msgstr "" msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(nije broj)" -#: lib/formats.c:161 +#: lib/formats.c:172 #, fuzzy msgid "(not base64)" msgstr "(nije broj)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 #, fuzzy msgid "(not a blob)" msgstr "(nije broj)" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "preskoèi sve PGP potpise" @@ -2551,36 +2551,36 @@ msgstr "" msgid "package %s has unsatisfied %s: %s\n" msgstr "paket %s nije naveden u %s" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, fuzzy, c-format msgid "%5d exclude %s\n" msgstr "Pribavljam %s\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, fuzzy, c-format msgid "%5d relocate %s -> %s\n" msgstr "Ne mogu da otvorim datoteku %s: " -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, fuzzy, c-format msgid "excluding multilib path %s%s\n" msgstr "Pribavljam %s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, fuzzy, c-format msgid "excluding %s %s\n" msgstr "Pribavljam %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, fuzzy, c-format msgid "relocating %s to %s\n" msgstr "gre¹ka kod kreiranja direktorijuma %s: %s" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, fuzzy, c-format msgid "relocating directory %s to %s\n" msgstr "gre¹ka kod kreiranja direktorijuma %s: %s" diff --git a/po/sv.po b/po/sv.po index 24f57fc2f..e64526472 100644 --- a/po/sv.po +++ b/po/sv.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.1\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 2002-08-19 22:26+0200\n" "Last-Translator: Göran Uddeborg \n" "Language-Team: Swedish \n" @@ -1393,24 +1393,24 @@ msgstr "========== forts msgid "rpmtsOrder failed, %d elements remain\n" msgstr "rpmtsOrder misslyckades, %d element återstår\n" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(inte ett tal)" -#: lib/formats.c:161 +#: lib/formats.c:172 msgid "(not base64)" msgstr "(inte base64)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "(felaktig typ)" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 msgid "(not a blob)" msgstr "(inte en klick)" -#: lib/formats.c:311 +#: lib/formats.c:322 msgid "(not an OpenPGP signature)" msgstr "(inte en OpenPGP-signatur)" @@ -2456,36 +2456,36 @@ msgstr " %s A %s\tB %s\n" msgid "package %s has unsatisfied %s: %s\n" msgstr "paket %s har ouppfyllda %s: %s\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "========== omflyttningar\n" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, c-format msgid "%5d exclude %s\n" msgstr "%5d utesluter %s\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, c-format msgid "%5d relocate %s -> %s\n" msgstr "%5d flyttar om %s -> %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "hoppar över multilib-sökväg %s%s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, c-format msgid "excluding %s %s\n" msgstr "hoppar över %s %s\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "flyttar %s till %s\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, c-format msgid "relocating directory %s to %s\n" msgstr "flyttar katalogen %s till %s\n" diff --git a/po/tr.po b/po/tr.po index dda9a153b..57d47ae2a 100644 --- a/po/tr.po +++ b/po/tr.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: rpm 4.0.3\n" -"POT-Creation-Date: 2002-12-18 11:10-0500\n" +"POT-Creation-Date: 2002-12-18 17:51-0500\n" "PO-Revision-Date: 2001-07-05 08:02+300\n" "Last-Translator: Nilgun Belma Buguner \n" "Language-Team: Turkish \n" @@ -1424,26 +1424,26 @@ msgstr "========== tsort s msgid "rpmtsOrder failed, %d elements remain\n" msgstr "" -#: lib/formats.c:34 lib/formats.c:60 lib/formats.c:95 lib/formats.c:387 +#: lib/formats.c:39 lib/formats.c:71 lib/formats.c:106 lib/formats.c:398 #: rpmdb/header.c:3237 rpmdb/header.c:3260 rpmdb/header.c:3284 msgid "(not a number)" msgstr "(bir sayý deðil)" -#: lib/formats.c:161 +#: lib/formats.c:172 #, fuzzy msgid "(not base64)" msgstr "(bir sayý deðil)" -#: lib/formats.c:171 +#: lib/formats.c:182 msgid "(invalid type)" msgstr "" -#: lib/formats.c:237 lib/formats.c:286 +#: lib/formats.c:248 lib/formats.c:297 #, fuzzy msgid "(not a blob)" msgstr "(bir sayý deðil)" -#: lib/formats.c:311 +#: lib/formats.c:322 #, fuzzy msgid "(not an OpenPGP signature)" msgstr "tüm PGP imzalarýný atlar" @@ -2521,36 +2521,36 @@ msgstr " %s A %s\tB %s\n" msgid "package %s has unsatisfied %s: %s\n" msgstr "paket %s-%s-%s gereksinimi tatmin edici deðil: %s\n" -#: lib/rpmfi.c:603 +#: lib/rpmfi.c:605 msgid "========== relocations\n" msgstr "========== yeniden konumlama\n" -#: lib/rpmfi.c:607 +#: lib/rpmfi.c:609 #, c-format msgid "%5d exclude %s\n" msgstr "%5d %s'i dýþlýyor\n" -#: lib/rpmfi.c:610 +#: lib/rpmfi.c:612 #, c-format msgid "%5d relocate %s -> %s\n" msgstr "%5d yeniden konumlandýrýlýyor: %s -> %s\n" -#: lib/rpmfi.c:680 +#: lib/rpmfi.c:682 #, c-format msgid "excluding multilib path %s%s\n" msgstr "multilib dosya yolu dýþlanýyor %s%s\n" -#: lib/rpmfi.c:746 +#: lib/rpmfi.c:748 #, c-format msgid "excluding %s %s\n" msgstr "%s %s dýþlanýyor\n" -#: lib/rpmfi.c:756 +#: lib/rpmfi.c:758 #, c-format msgid "relocating %s to %s\n" msgstr "%s %s'e konumlanýyor\n" -#: lib/rpmfi.c:835 +#: lib/rpmfi.c:837 #, c-format msgid "relocating directory %s to %s\n" msgstr "%s dizini %s de yeniden konumlanýyor\n" diff --git a/python/header-py.c b/python/header-py.c index 3788a2d4b..78bd0ea61 100644 --- a/python/header-py.c +++ b/python/header-py.c @@ -215,7 +215,7 @@ static void mungeFilelist(Header h) || !headerIsEntry (h, RPMTAG_DIRINDEXES)) compressFilelist(h); - rpmBuildFileList(h, &fileNames, &count); + rpmfiBuildFNames(h, RPMTAG_BASENAMES, &fileNames, &count); if (fileNames == NULL || count <= 0) return; diff --git a/rpm.spec.in b/rpm.spec.in index dbd237dbe..519bce99a 100644 --- a/rpm.spec.in +++ b/rpm.spec.in @@ -463,6 +463,7 @@ exit 0 %changelog * Wed Dec 18 2002 Jeff Johnson 4.2-0.29nptl - popt aliases for -U et al to achieve dynamic link with nptl. +- add --file{class,provide,require} popt aliases and header extensions * Tue Dec 17 2002 Jeff Johnson 4.2-0.28nptl - re-enable CDB locking, removing "private" from %%__dbi_cdb macro. diff --git a/rpmdb/legacy.c b/rpmdb/legacy.c index ebf0c4472..715d2f2e4 100644 --- a/rpmdb/legacy.c +++ b/rpmdb/legacy.c @@ -348,14 +348,8 @@ exit: } /*@=bounds@*/ -/* - * This is pretty straight-forward. The only thing that even resembles a trick - * is getting all of this into a single xmalloc'd block. - */ -static void doBuildFileList(Header h, /*@out@*/ const char *** fileListPtr, - /*@out@*/ int * fileCountPtr, rpmTag baseNameTag, - rpmTag dirNameTag, rpmTag dirIndexesTag) - /*@modifies *fileListPtr, *fileCountPtr @*/ +void rpmfiBuildFNames(Header h, rpmTag tagN, + /*@out@*/ const char *** fnp, /*@out@*/ int * fcp) { HGE_t hge = (HGE_t)headerGetEntryMinMemory; HFD_t hfd = headerFreeData; @@ -365,13 +359,23 @@ static void doBuildFileList(Header h, /*@out@*/ const char *** fileListPtr, int count; const char ** fileNames; int size; + rpmTag dirNameTag = 0; + rpmTag dirIndexesTag = 0; rpmTagType bnt, dnt; - char * data; + char * t; int i, xx; - if (!hge(h, baseNameTag, &bnt, (void **) &baseNames, &count)) { - if (fileListPtr) *fileListPtr = NULL; - if (fileCountPtr) *fileCountPtr = 0; + if (tagN == RPMTAG_BASENAMES) { + dirNameTag = RPMTAG_DIRNAMES; + dirIndexesTag = RPMTAG_DIRINDEXES; + } else if (tagN == RPMTAG_ORIGBASENAMES) { + dirNameTag = RPMTAG_ORIGDIRNAMES; + dirIndexesTag = RPMTAG_ORIGDIRINDEXES; + } + + if (!hge(h, tagN, &bnt, (void **) &baseNames, &count)) { + if (fnp) *fnp = NULL; + if (fcp) *fcp = 0; return; /* no file list */ } @@ -383,24 +387,24 @@ static void doBuildFileList(Header h, /*@out@*/ const char *** fileListPtr, size += strlen(baseNames[i]) + strlen(dirNames[dirIndexes[i]]) + 1; fileNames = xmalloc(size); - data = ((char *) fileNames) + (sizeof(*fileNames) * count); + t = ((char *) fileNames) + (sizeof(*fileNames) * count); /*@-branchstate@*/ for (i = 0; i < count; i++) { - fileNames[i] = data; - data = stpcpy( stpcpy(data, dirNames[dirIndexes[i]]), baseNames[i]); - *data++ = '\0'; + fileNames[i] = t; + t = stpcpy( stpcpy(t, dirNames[dirIndexes[i]]), baseNames[i]); + *t++ = '\0'; } /*@=branchstate@*/ baseNames = hfd(baseNames, bnt); dirNames = hfd(dirNames, dnt); /*@-branchstate@*/ - if (fileListPtr) - *fileListPtr = fileNames; + if (fnp) + *fnp = fileNames; else fileNames = _free(fileNames); /*@=branchstate@*/ - if (fileCountPtr) *fileCountPtr = count; + if (fcp) *fcp = count; } void expandFilelist(Header h) @@ -413,8 +417,7 @@ void expandFilelist(Header h) /*@-branchstate@*/ if (!headerIsEntry(h, RPMTAG_OLDFILENAMES)) { - doBuildFileList(h, &fileNames, &count, RPMTAG_BASENAMES, - RPMTAG_DIRNAMES, RPMTAG_DIRINDEXES); + rpmfiBuildFNames(h, RPMTAG_BASENAMES, &fileNames, &count); if (fileNames == NULL || count <= 0) return; xx = hae(h, RPMTAG_OLDFILENAMES, RPM_STRING_ARRAY_TYPE, @@ -428,19 +431,6 @@ void expandFilelist(Header h) xx = hre(h, RPMTAG_DIRINDEXES); } - -void rpmBuildFileList(Header h, const char *** fileListPtr, int * fileCountPtr) -{ - doBuildFileList(h, fileListPtr, fileCountPtr, RPMTAG_BASENAMES, - RPMTAG_DIRNAMES, RPMTAG_DIRINDEXES); -} - -void buildOrigFileList(Header h, const char *** fileListPtr, int * fileCountPtr) -{ - doBuildFileList(h, fileListPtr, fileCountPtr, RPMTAG_ORIGBASENAMES, - RPMTAG_ORIGDIRNAMES, RPMTAG_ORIGDIRINDEXES); -} - /* * Up to rpm 3.0.4, packages implicitly provided their own name-version-release. * Retrofit an explicit "Provides: name = epoch:version-release. diff --git a/rpmdb/legacy.h b/rpmdb/legacy.h index d9b933187..17737fbfb 100644 --- a/rpmdb/legacy.h +++ b/rpmdb/legacy.h @@ -38,24 +38,36 @@ void compressFilelist(Header h) /*@modifies h @*/; /** - * Convert (dirname,basename,dirindex) tags to absolute path tag. + * Retrieve file names from header. + * + * The representation of file names in package headers changed in rpm-4.0. + * Originally, file names were stored as an array of absolute paths. + * In rpm-4.0, file names are stored as separate arrays of dirname's and + * basename's, * with a dirname index to associate the correct dirname + * with each basname. + * + * This function is used to retrieve file names independent of how the + * file names are represented in the package header. + * * @param h header + * @param tagN RPMTAG_BASENAMES | PMTAG_ORIGBASENAMES + * @retval *fnp array of file names + * @retval *fcp number of files */ -void expandFilelist(Header h) - /*@modifies h @*/; +void rpmfiBuildFNames(Header h, rpmTag tagN, + /*@out@*/ const char *** fnp, /*@out@*/ int * fcp) + /*@modifies *fnp, *fcp @*/; /** + * Convert (dirname,basename,dirindex) tags to absolute path tags. * @param h header - * @retval fileListPtr list of files - * @retval fileCountPtr number of files */ -void buildOrigFileList(Header h, /*@out@*/ const char *** fileListPtr, - /*@out@*/ int * fileCountPtr) - /*@modifies *fileListPtr, *fileCountPtr @*/; +void expandFilelist(Header h) + /*@modifies h @*/; /** * Retrofit a Provides: name = version-release dependency into legacy - * packages. + * package headers. * @param h header */ void providePackageNVR(Header h) diff --git a/rpmpopt.in b/rpmpopt.in index 40a258b71..adbcaad76 100644 --- a/rpmpopt.in +++ b/rpmpopt.in @@ -86,6 +86,18 @@ rpm alias --last --qf '%|INSTALLTIME?{%{INSTALLTIME}}:{000000000}| %{NAME}-%{VER rpm alias --filesbypkg --qf '[%-25{=NAME} %{FILENAMES}\n]' \ --POPTdesc=$"list all files from each package" +rpm alias --fileclass --qf '[%{FILENAMES}\t%{FILECLASS}\n]' \ + --POPTdesc=$"list file names with classes" + +rpm alias --filecolor --qf '[%{FILENAMES}\t%{FILECOLOR}\n]' \ + --POPTdesc=$"list file names with colors" + +rpm alias --fileprovide --qf '[%{FILENAMES}\t%{FILEPROVIDE}\n]' \ + --POPTdesc=$"list file names with provides" + +rpm alias --filerequire --qf '[%{FILENAMES}\t%{FILEREQUIRE}\n]' \ + --POPTdesc=$"list file names with requires" + rpm alias --redhatprovides -q --define '_dbpath /usr/lib/rpmdb/%{_arch}-%{_vendor}-%{_os}/redhat' --whatprovides \ --POPTdesc=$"find package name that contains a provided capability (needs rpmdb-redhat package installed)" -- 2.34.1