CVS patchset: 6918
CVS date: 2003/06/24 19:29:36
This commit is contained in:
jbj 2003-06-24 19:29:36 +00:00
parent 86704da569
commit 85a5a1cfe3
7 changed files with 1466 additions and 2398 deletions

View File

@ -15,7 +15,9 @@
- add version check for package with provides and obsoletes.
- x86_64 -> athlon, ppc64[ip]series -> ppc64 arch compatibility.
- treat missing epoch's exactly the same as Epoch: 0.
- add ".arch" suffix to erase colored packages with identical NEVR.
- update ja man pages (#92261).
- brp-python-bytecompile to automagically bytecode compile python.
4.1 -> 4.2:
- set cachesize without a dbenv, the default is far too small.

View File

@ -774,18 +774,21 @@ int rpmErase(rpmts ts, struct rpmInstallArguments_s * ia,
/* XXX HACK to get rpmdbFindByLabel out of the API */
mi = rpmtsInitIterator(ts, RPMDBI_LABEL, *arg, 0);
count = rpmdbGetIteratorCount(mi);
if (count <= 0) {
if (mi == NULL) {
rpmMessage(RPMMESS_ERROR, _("package %s is not installed\n"), *arg);
numFailed++;
} else if (!(count == 1 || (ia->eraseInterfaceFlags & UNINSTALL_ALLMATCHES))) {
rpmMessage(RPMMESS_ERROR, _("\"%s\" specifies multiple packages\n"),
*arg);
numFailed++;
} else {
Header h; /* XXX iterator owns the reference */
count = 0;
while ((h = rpmdbNextIterator(mi)) != NULL) {
unsigned int recOffset = rpmdbGetIteratorOffset(mi);
if (!(count++ == 0 || (ia->eraseInterfaceFlags & UNINSTALL_ALLMATCHES))) {
rpmMessage(RPMMESS_ERROR, _("\"%s\" specifies multiple packages\n"),
*arg);
numFailed++;
break;
}
if (recOffset) {
(void) rpmtsAddEraseElement(ts, h, recOffset);
numPackages++;

View File

@ -185,15 +185,113 @@ int rpmtsVerifyDB(rpmts ts)
return rpmdbVerify(ts->rootDir);
}
static int isArch(const char * arch)
/*@*/
{
const char ** av;
static const char *arches[] = {
"i386", "i486", "i586", "i686", "athlon", "x86_64",
"alpha", "alphaev5", "alphaev56", "alphapca56", "alphaev6", "alphaev67",
"sparc", "sun4", "sun4m", "sun4c", "sun4d", "sparcv9",
"sparc64", "sun4u",
"mips", "mipsel", "IP",
"ppc", "ppciseries", "ppcpseries",
"ppc64", "ppc64iseries", "ppc64pseries",
"m68k",
"rs6000",
"ia64",
"armv3l", "armv4b", "armv4l",
"s390", "i370", "s390x",
"sh", "xtensa",
"noarch",
NULL,
};
for (av = arches; *av != NULL; av++) {
if (!strcmp(arch, *av))
return 1;
}
return 0;
}
rpmdbMatchIterator rpmtsInitIterator(const rpmts ts, rpmTag rpmtag,
const void * keyp, size_t keylen)
{
rpmdbMatchIterator mi;
const char * arch = NULL;
int xx;
if (ts->rdb == NULL && rpmtsOpenDB(ts, ts->dbmode))
return NULL;
/* Parse out "N(EVR).A" tokens from a label key. */
/*@-branchstate@*/
if (rpmtag == RPMDBI_LABEL && keyp != NULL) {
const char * s = keyp;
const char *se;
size_t slen = strlen(s);
char *t = alloca(slen+1);
int level = 0;
int c;
keyp = t;
while ((c = *s++) != '\0') {
switch (c) {
default:
*t++ = c;
break;
case '(':
/* XXX Fail if nested parens. */
if (level++ != 0) {
rpmError(RPMERR_QFMT, _("extra '(' in package label: %s\n"), keyp);
return NULL;
}
/* Parse explicit epoch. */
for (se = s; *se && xisdigit(*se); se++)
;
if (*se == ':') {
/* XXX skip explicit epoch's (for now) */
*t++ = '-';
s = se + 1;
} else {
/* No Epoch: found. Convert '(' to '-' and chug. */
*t++ = '-';
}
break;
case ')':
/* XXX Fail if nested parens. */
if (--level != 0) {
rpmError(RPMERR_QFMT, _("missing '(' in package label: %s\n"), keyp);
return NULL;
}
/* Don't copy trailing ')' */
break;
}
}
if (level) {
rpmError(RPMERR_QFMT, _("missing ')' in package label: %s\n"), keyp);
return NULL;
}
*t = '\0';
t = (char *) keyp;
t = strrchr(t, '.');
/* Is this a valid ".arch" suffix? */
if (t != NULL && isArch(t+1)) {
*t++ = '\0';
arch = t;
}
}
/*@=branchstate@*/
mi = rpmdbInitIterator(ts->rdb, rpmtag, keyp, keylen);
/* Verify header signature/digest during retrieve (if not disabled). */
if (mi && !(ts->vsflags & RPMVSF_NOHDRCHK))
(void) rpmdbSetHdrChk(mi, ts, headerCheck);
/* Select specified arch only. */
if (arch != NULL)
xx = rpmdbSetIteratorRE(mi, RPMTAG_ARCH, RPMMIRE_DEFAULT, arch);
return mi;
}

3669
po/fr.po

File diff suppressed because it is too large Load Diff

View File

@ -1,116 +1,121 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# A French translation for rpm messages
# Copyright (C) 2003 Free Software Foundation, Inc.
# This file is distributed under the same license as the RPM package.
# RPM French Translation <rpm-fr@livna.org>, 2003.
# JBJ : THANX A LOT !!!
#
# N'hésitez pas à m'envoyez un courriel si vous avez des
# suggestions/corrections.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.3\n"
"POT-Creation-Date: 2003-03-19 11:03-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Project-Id-Version: popt 1.8.1\n"
"POT-Creation-Date: 2003-03-19 12:16-0500\n"
"PO-Revision-Date: 2003-06-22 23:43+0200\n"
"Last-Translator: RPM French Translation <rpm-fr@livna.org>\n"
"Language-Team: RPM French Translation <rpm-fr@livna.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
#: popt.c:34
msgid "unknown errno"
msgstr ""
msgstr "errno inconnu"
#: popt.c:940
#, c-format
msgid "option type (%d) not implemented in popt\n"
msgstr ""
msgstr "type(%d) d'option non implémenté dans popt\n"
#: popt.c:1160
msgid "missing argument"
msgstr ""
msgstr "argument manquant"
#: popt.c:1162
msgid "unknown option"
msgstr ""
msgstr "option iconnue"
#: popt.c:1164
msgid "mutually exclusive logical operations requested"
msgstr ""
msgstr "opérations logiques mutuellement exclusives requises"
#: popt.c:1166
msgid "opt->arg should not be NULL"
msgstr ""
msgstr "opt->arg ne devrait pas être NULL"
#: popt.c:1168
msgid "aliases nested too deeply"
msgstr ""
msgstr "les alias sont trop entremellés"
#: popt.c:1170
msgid "error in parameter quoting"
msgstr ""
msgstr "erreur en citant les paramètres"
#: popt.c:1172
msgid "invalid numeric value"
msgstr ""
msgstr "valeur numérique invalide"
#: popt.c:1174
msgid "number too large or too small"
msgstr ""
msgstr "nombre trop grand ou trop petit"
#: popt.c:1176
msgid "memory allocation failed"
msgstr ""
msgstr "échec de l'allocation de mémoire"
#: popt.c:1180
msgid "unknown error"
msgstr ""
msgstr "erreur inconnue"
#: popthelp.c:57
msgid "Show this help message"
msgstr ""
msgstr "Montre ce message d'aide"
#: popthelp.c:58
msgid "Display brief usage message"
msgstr ""
msgstr "Affiche un bref descriptif de l'utilisation"
#: popthelp.c:61
msgid "Display option defaults in message"
msgstr ""
msgstr "Afficher les valeurs par défaut des options dans le message"
#: popthelp.c:103
msgid "NONE"
msgstr ""
msgstr "RIEN"
#: popthelp.c:105
msgid "VAL"
msgstr ""
msgstr "VAL"
#: popthelp.c:109
msgid "INT"
msgstr ""
msgstr "ENTIER"
#: popthelp.c:110
msgid "LONG"
msgstr ""
msgstr "LONG"
#: popthelp.c:111
msgid "STRING"
msgstr ""
msgstr "CHAINE"
#: popthelp.c:112
msgid "FLOAT"
msgstr ""
msgstr "FLOTTANT"
#: popthelp.c:113
msgid "DOUBLE"
msgstr ""
msgstr "DOUBLE"
#: popthelp.c:114
msgid "ARG"
msgstr ""
msgstr "ARG"
#: popthelp.c:486
msgid "Usage:"
msgstr ""
msgstr "Utilisation:"
#: popthelp.c:510
msgid "[OPTION...]"
msgstr ""
msgstr "[OPTION...]"

View File

@ -36,7 +36,8 @@ BuildRequires: elfutils-libelf
BuildRequires: zlib-devel
BuildRequires: beecrypt-devel >= 0:3.0.0-0.20030603
BuildRequires: beecrypt-devel >= 0:3.0.0-2
Requires: beecrypt-devel >= 0:3.0.0-2
# XXX Red Hat 5.2 has not bzip2 or python
%if %{with_bzip2}

View File

@ -501,7 +501,7 @@ ssize_t fdWrite(void * cookie, const char * buf, size_t count)
int fdClose( /*@only@*/ void * cookie)
/*@globals errno, fileSystem, systemState, internalState @*/
/*@modifies *cookie, errno, fileSystem, systemState, internalState @*/;
#define fdCLose(_fd) fdio->close(_fd)
#define fdClose(_fd) fdio->close(_fd)
/**
*/