summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build/files.c447
-rw-r--r--build/names.c4
-rw-r--r--build/rpmbuild.h6
-rw-r--r--lib/Makefile.am4
-rw-r--r--lib/Makefile.in15
-rw-r--r--lib/md5.h8
-rw-r--r--lib/md5sum.c10
-rw-r--r--lib/signature.c2
-rw-r--r--po/rpm.pot554
-rw-r--r--popt/po/popt.pot2
-rwxr-xr-xrpm.c6
11 files changed, 517 insertions, 541 deletions
diff --git a/build/files.c b/build/files.c
index cf9fa8ba9..5f700bd87 100644
--- a/build/files.c
+++ b/build/files.c
@@ -12,36 +12,36 @@
#define MAXDOCDIR 1024
-struct FileListRec {
- char *diskName; /* get file from here */
- char *fileName; /* filename in cpio archive */
+typedef struct {
+ const char *diskName; /* get file from here */
+ const char *fileName; /* filename in cpio archive */
mode_t mode;
uid_t uid;
gid_t gid;
dev_t device;
ino_t inode;
- char *uname;
- char *gname;
+ const char *uname;
+ const char *gname;
int flags;
int verifyFlags;
int size;
int mtime;
dev_t rdev;
- char *lang;
-};
+ const char *lang;
+} FileListRec;
struct AttrRec {
- char *PmodeString;
+ const char *PmodeString;
int Pmode;
- char *PdirmodeString;
+ const char *PdirmodeString;
int Pdirmode;
- char *Uname;
- char *Gname;
+ const char *Uname;
+ const char *Gname;
};
struct FileList {
- char *buildRoot;
- char *prefix;
+ const char *buildRoot;
+ const char *prefix;
int fileCount;
int totalFileSize;
@@ -57,14 +57,14 @@ struct FileList {
struct AttrRec current;
struct AttrRec def;
int defVerifyFlags;
- char *currentLang;
+ const char *currentLang;
/* Hard coded limit of MAXDOCDIR docdirs. */
/* If you break it you are doing something wrong. */
char *docDirs[MAXDOCDIR];
int docDirCount;
- struct FileListRec *fileList;
+ FileListRec *fileList;
int fileListRecsAlloced;
int fileListRecsUsed;
};
@@ -72,9 +72,9 @@ struct FileList {
#ifdef DYING
static int processPackageFiles(Spec spec, Package pkg,
int installSpecialDoc, int test);
-static void freeFileList(struct FileListRec *fileList, int count);
+static void freeFileList(FileListRec *fileList, int count);
static int compareFileListRecs(const void *ap, const void *bp);
-static int isDoc(struct FileList *fl, char *fileName);
+static int isDoc(struct FileList *fl, const char *fileName);
static int processBinaryFile(Package pkg, struct FileList *fl, char *fileName);
static int addFile(struct FileList *fl, char *name, struct stat *statp);
static int parseForSimple(Spec spec, Package pkg, char *buf,
@@ -197,18 +197,16 @@ static void timeCheck(int tc, Header h)
currentTime = time(NULL);
- x = 0;
- while (x < count) {
+ for (x = 0; x < count; x++) {
if (currentTime - mtime[x] > tc) {
rpmMessage(RPMMESS_WARNING, _("TIMECHECK failure: %s\n"), file[x]);
}
- x++;
}
}
static int parseForVerify(char *buf, struct FileList *fl)
{
- char *p, *start, *end, *name;
+ char *p, *q, *start, *end, *name;
char ourbuf[BUFSIZ];
int not, verifyFlags;
int *resultVerify;
@@ -252,10 +250,12 @@ static int parseForVerify(char *buf, struct FileList *fl)
*start++ = ' ';
}
- p = strtok(ourbuf, ", \n\t");
not = 0;
verifyFlags = RPMVERIFY_NONE;
- while (p) {
+
+ q = ourbuf;
+ while ((p = strtok(q, ", \n\t")) != NULL) {
+ q = NULL;
if (!strcmp(p, "not")) {
not = 1;
} else if (!strcmp(p, "md5")) {
@@ -279,7 +279,6 @@ static int parseForVerify(char *buf, struct FileList *fl)
fl->processingFailed = 1;
return RPMERR_BADSPEC;
}
- p = strtok(NULL, ", \n\t");
}
*resultVerify = not ? ~(verifyFlags) : verifyFlags;
@@ -695,15 +694,15 @@ static int parseForSimple(Spec spec, Package pkg, char *buf,
static int compareFileListRecs(const void *ap, const void *bp)
{
- char *a, *b;
+ const char *a, *b;
- a = ((struct FileListRec *)ap)->fileName;
- b = ((struct FileListRec *)bp)->fileName;
+ a = ((FileListRec *)ap)->fileName;
+ b = ((FileListRec *)bp)->fileName;
return strcmp(a, b);
}
-static int isDoc(struct FileList *fl, char *fileName)
+static int isDoc(struct FileList *fl, const char *fileName)
{
int x = fl->docDirCount;
@@ -719,10 +718,10 @@ static void genCpioListAndHeader(struct FileList *fl,
struct cpioFileMapping **cpioList,
int *cpioCount, Header h, int isSrc)
{
- int skipLen = 0;
- struct FileListRec *p;
+ int skipLen;
int count;
- struct cpioFileMapping *cpioListPtr;
+ FileListRec *flp;
+ struct cpioFileMapping *clp;
char *s, buf[BUFSIZ];
/* Sort the big list */
@@ -730,128 +729,119 @@ static void genCpioListAndHeader(struct FileList *fl,
sizeof(*(fl->fileList)), compareFileListRecs);
/* Generate the cpio list and the header */
+ skipLen = 0;
if (! isSrc) {
- if (fl->prefix) {
- skipLen = 1 + strlen(fl->prefix);
- } else {
- skipLen = 1;
- }
+ skipLen = 1;
+ if (fl->prefix)
+ skipLen += strlen(fl->prefix);
}
- *cpioList = malloc(sizeof(**cpioList) * fl->fileListRecsUsed);
+
*cpioCount = 0;
- cpioListPtr = *cpioList;
- p = fl->fileList;
- count = fl->fileListRecsUsed;
- while (count) {
- if ((count > 1) && !strcmp(p->fileName, p[1].fileName)) {
- rpmError(RPMERR_BADSPEC, _("File listed twice: %s"), p->fileName);
+ clp = *cpioList = malloc(sizeof(**cpioList) * fl->fileListRecsUsed);
+
+ for (flp = fl->fileList, count = fl->fileListRecsUsed; count > 0; flp++, count--) {
+ if ((count > 1) && !strcmp(flp->fileName, flp[1].fileName)) {
+ rpmError(RPMERR_BADSPEC, _("File listed twice: %s"), flp->fileName);
fl->processingFailed = 1;
}
/* Make the cpio list */
- if (! (p->flags & RPMFILE_GHOST)) {
- cpioListPtr->fsPath = strdup(p->diskName);
- cpioListPtr->archivePath = strdup(p->fileName + skipLen);
- cpioListPtr->finalMode = p->mode;
- cpioListPtr->finalUid = p->uid;
- cpioListPtr->finalGid = p->gid;
- cpioListPtr->mapFlags = CPIO_MAP_PATH | CPIO_MAP_MODE |
+ if (! (flp->flags & RPMFILE_GHOST)) {
+ clp->fsPath = strdup(flp->diskName);
+ clp->archivePath = strdup(flp->fileName + skipLen);
+ clp->finalMode = flp->mode;
+ clp->finalUid = flp->uid;
+ clp->finalGid = flp->gid;
+ clp->mapFlags = CPIO_MAP_PATH | CPIO_MAP_MODE |
CPIO_MAP_UID | CPIO_MAP_GID;
if (isSrc) {
- cpioListPtr->mapFlags |= CPIO_FOLLOW_SYMLINKS;
+ clp->mapFlags |= CPIO_FOLLOW_SYMLINKS;
}
- cpioListPtr++;
+ clp++;
(*cpioCount)++;
}
/* Make the header */
headerAddOrAppendEntry(h, RPMTAG_FILENAMES, RPM_STRING_ARRAY_TYPE,
- &(p->fileName), 1);
+ &(flp->fileName), 1);
headerAddOrAppendEntry(h, RPMTAG_FILESIZES, RPM_INT32_TYPE,
- &(p->size), 1);
+ &(flp->size), 1);
headerAddOrAppendEntry(h, RPMTAG_FILEUSERNAME, RPM_STRING_ARRAY_TYPE,
- &(p->uname), 1);
+ &(flp->uname), 1);
headerAddOrAppendEntry(h, RPMTAG_FILEGROUPNAME, RPM_STRING_ARRAY_TYPE,
- &(p->gname), 1);
+ &(flp->gname), 1);
headerAddOrAppendEntry(h, RPMTAG_FILEMTIMES, RPM_INT32_TYPE,
- &(p->mtime), 1);
- if (sizeof(p->mode) != sizeof(uint_16)) {
- uint_16 pmode = (uint_16)p->mode;
+ &(flp->mtime), 1);
+ if (sizeof(flp->mode) != sizeof(uint_16)) {
+ uint_16 pmode = (uint_16)flp->mode;
headerAddOrAppendEntry(h, RPMTAG_FILEMODES, RPM_INT16_TYPE,
&(pmode), 1);
} else {
headerAddOrAppendEntry(h, RPMTAG_FILEMODES, RPM_INT16_TYPE,
- &(p->mode), 1);
+ &(flp->mode), 1);
}
- if (sizeof(p->rdev) != sizeof(uint_16)) {
- uint_16 prdev = (uint_16)p->rdev;
+ if (sizeof(flp->rdev) != sizeof(uint_16)) {
+ uint_16 prdev = (uint_16)flp->rdev;
headerAddOrAppendEntry(h, RPMTAG_FILERDEVS, RPM_INT16_TYPE,
&(prdev), 1);
} else {
headerAddOrAppendEntry(h, RPMTAG_FILERDEVS, RPM_INT16_TYPE,
- &(p->rdev), 1);
+ &(flp->rdev), 1);
}
- if (sizeof(p->device) != sizeof(uint_32)) {
- uint_32 pdevice = (uint_32)p->device;
+ if (sizeof(flp->device) != sizeof(uint_32)) {
+ uint_32 pdevice = (uint_32)flp->device;
headerAddOrAppendEntry(h, RPMTAG_FILEDEVICES, RPM_INT32_TYPE,
&(pdevice), 1);
} else {
headerAddOrAppendEntry(h, RPMTAG_FILEDEVICES, RPM_INT32_TYPE,
- &(p->device), 1);
+ &(flp->device), 1);
}
headerAddOrAppendEntry(h, RPMTAG_FILEINODES, RPM_INT32_TYPE,
- &(p->inode), 1);
+ &(flp->inode), 1);
headerAddOrAppendEntry(h, RPMTAG_FILELANGS, RPM_STRING_ARRAY_TYPE,
- &(p->lang), 1);
+ &(flp->lang), 1);
/* We used to add these, but they should not be needed */
/* headerAddOrAppendEntry(h, RPMTAG_FILEUIDS,
- * RPM_INT32_TYPE, &(p->uid), 1);
+ * RPM_INT32_TYPE, &(flp->uid), 1);
* headerAddOrAppendEntry(h, RPMTAG_FILEGIDS,
- * RPM_INT32_TYPE, &(p->gid), 1);
+ * RPM_INT32_TYPE, &(flp->gid), 1);
*/
buf[0] = '\0';
+ if (S_ISREG(flp->mode))
+ mdfile(flp->diskName, buf);
s = buf;
- if (S_ISREG(p->mode)) {
- mdfile(p->diskName, buf);
- }
headerAddOrAppendEntry(h, RPMTAG_FILEMD5S, RPM_STRING_ARRAY_TYPE,
&s, 1);
buf[0] = '\0';
+ if (S_ISLNK(flp->mode))
+ buf[readlink(flp->diskName, buf, BUFSIZ)] = '\0';
s = buf;
- if (S_ISLNK(p->mode)) {
- buf[readlink(p->diskName, buf, BUFSIZ)] = '\0';
- }
headerAddOrAppendEntry(h, RPMTAG_FILELINKTOS, RPM_STRING_ARRAY_TYPE,
&s, 1);
- if (p->flags & RPMFILE_GHOST) {
- p->verifyFlags &= ~(RPMVERIFY_MD5 | RPMVERIFY_FILESIZE |
+ if (flp->flags & RPMFILE_GHOST) {
+ flp->verifyFlags &= ~(RPMVERIFY_MD5 | RPMVERIFY_FILESIZE |
RPMVERIFY_LINKTO | RPMVERIFY_MTIME);
}
headerAddOrAppendEntry(h, RPMTAG_FILEVERIFYFLAGS, RPM_INT32_TYPE,
- &(p->verifyFlags), 1);
+ &(flp->verifyFlags), 1);
- if (!isSrc && isDoc(fl, p->fileName)) {
- p->flags |= RPMFILE_DOC;
- }
- if (p->mode & S_IFDIR) {
- p->flags &= ~RPMFILE_CONFIG;
- p->flags &= ~RPMFILE_DOC;
- }
+ if (!isSrc && isDoc(fl, flp->fileName))
+ flp->flags |= RPMFILE_DOC;
+ if (S_ISDIR(flp->mode))
+ flp->flags &= ~(RPMFILE_CONFIG|RPMFILE_DOC);
+
headerAddOrAppendEntry(h, RPMTAG_FILEFLAGS, RPM_INT32_TYPE,
- &(p->flags), 1);
-
- p++;
- count--;
+ &(flp->flags), 1);
}
headerAddEntry(h, RPMTAG_SIZE, RPM_INT32_TYPE,
&(fl->totalFileSize), 1);
}
-static void freeFileList(struct FileListRec *fileList, int count)
+static void freeFileList(FileListRec *fileList, int count)
{
while (count--) {
FREE(fileList[count].diskName);
@@ -863,9 +853,9 @@ static void freeFileList(struct FileListRec *fileList, int count)
static int addFile(struct FileList *fl, char *name, struct stat *statp)
{
+ FileListRec *flp;
char fileName[BUFSIZ];
char diskName[BUFSIZ];
- char *prefixTest, *prefixPtr;
struct stat statbuf;
int_16 fileMode;
int fileUid, fileGid;
@@ -895,8 +885,8 @@ static int addFile(struct FileList *fl, char *name, struct stat *statp)
/* If we are using a prefix, validate the file */
if (!fl->inFtw && fl->prefix) {
- prefixTest = fileName;
- prefixPtr = fl->prefix;
+ const char *prefixTest = fileName;
+ const char *prefixPtr = fl->prefix;
while (*prefixPtr && *prefixTest && (*prefixTest == *prefixPtr)) {
prefixPtr++;
@@ -929,79 +919,82 @@ static int addFile(struct FileList *fl, char *name, struct stat *statp)
myftw(diskName, 16, (myftwFunc) addFile, fl);
fl->isDir = 0;
fl->inFtw = 0;
- } else {
- fileMode = statp->st_mode;
- fileUid = statp->st_uid;
- fileGid = statp->st_gid;
-
- /* %attr ? */
- if (S_ISDIR(fileMode) && fl->current.PdirmodeString) {
- if (fl->current.PdirmodeString[0] != '-') {
- fileMode &= S_IFMT;
- fileMode |= fl->current.Pdirmode;
- }
- } else {
- if (fl->current.PmodeString) {
- fileMode &= S_IFMT;
- fileMode |= fl->current.Pmode;
- }
- }
- if (fl->current.Uname) {
- fileUname = getUnameS(fl->current.Uname);
- } else {
- fileUname = getUname(fileUid);
+ return 0;
+ }
+
+ fileMode = statp->st_mode;
+ fileUid = statp->st_uid;
+ fileGid = statp->st_gid;
+
+ /* %attr ? */
+ if (S_ISDIR(fileMode) && fl->current.PdirmodeString) {
+ if (fl->current.PdirmodeString[0] != '-') {
+ fileMode &= S_IFMT;
+ fileMode |= fl->current.Pdirmode;
}
- if (fl->current.Gname) {
- fileGname = getGnameS(fl->current.Gname);
- } else {
- fileGname = getGname(fileGid);
+ } else {
+ if (fl->current.PmodeString) {
+ fileMode &= S_IFMT;
+ fileMode |= fl->current.Pmode;
}
+ }
+ if (fl->current.Uname) {
+ fileUname = getUnameS(fl->current.Uname);
+ } else {
+ fileUname = getUname(fileUid);
+ }
+ if (fl->current.Gname) {
+ fileGname = getGnameS(fl->current.Gname);
+ } else {
+ fileGname = getGname(fileGid);
+ }
- if (! (fileUname && fileGname)) {
- rpmError(RPMERR_BADSPEC, _("Bad owner/group: %s\n"), diskName);
- fl->processingFailed = 1;
- return RPMERR_BADSPEC;
- }
+ if (! (fileUname && fileGname)) {
+ rpmError(RPMERR_BADSPEC, _("Bad owner/group: %s\n"), diskName);
+ fl->processingFailed = 1;
+ return RPMERR_BADSPEC;
+ }
- rpmMessage(RPMMESS_DEBUG, _("File %d: %s\n"), fl->fileCount, fileName);
-
- /* Add to the file list */
- if (fl->fileListRecsUsed == fl->fileListRecsAlloced) {
- fl->fileListRecsAlloced += 128;
- fl->fileList = realloc(fl->fileList,
- fl->fileListRecsAlloced *
- sizeof(*(fl->fileList)));
- }
+ rpmMessage(RPMMESS_DEBUG, _("File %d: %s\n"), fl->fileCount, fileName);
+
+ /* Add to the file list */
+ if (fl->fileListRecsUsed == fl->fileListRecsAlloced) {
+ fl->fileListRecsAlloced += 128;
+ fl->fileList = realloc(fl->fileList,
+ fl->fileListRecsAlloced * sizeof(*(fl->fileList)));
+ }
- fl->fileList[fl->fileListRecsUsed].fileName = strdup(fileName);
- fl->fileList[fl->fileListRecsUsed].diskName = strdup(diskName);
- fl->fileList[fl->fileListRecsUsed].mode = fileMode;
- fl->fileList[fl->fileListRecsUsed].uid = fileUid;
- fl->fileList[fl->fileListRecsUsed].gid = fileGid;
- fl->fileList[fl->fileListRecsUsed].uname = fileUname;
- fl->fileList[fl->fileListRecsUsed].gname = fileGname;
-
- if (fl->currentLang) {
- fl->fileList[fl->fileListRecsUsed].lang = strdup(fl->currentLang);
- } else if (! parseForRegexLang(fileName, &lang)) {
- fl->fileList[fl->fileListRecsUsed].lang = strdup(lang);
- } else {
- fl->fileList[fl->fileListRecsUsed].lang = strdup("");
- }
+ flp = &fl->fileList[fl->fileListRecsUsed];
+
+ flp->fileName = strdup(fileName);
+ flp->diskName = strdup(diskName);
+ flp->mode = fileMode;
+ flp->uid = fileUid;
+ flp->gid = fileGid;
+ flp->uname = fileUname;
+ flp->gname = fileGname;
+
+ if (fl->currentLang) {
+ flp->lang = strdup(fl->currentLang);
+ } else if (! parseForRegexLang(fileName, &lang)) {
+ flp->lang = strdup(lang);
+ } else {
+ flp->lang = strdup("");
+ }
- fl->fileList[fl->fileListRecsUsed].flags = fl->currentFlags;
- fl->fileList[fl->fileListRecsUsed].verifyFlags =
- fl->currentVerifyFlags;
- fl->fileList[fl->fileListRecsUsed].size = statp->st_size;
- fl->fileList[fl->fileListRecsUsed].mtime = statp->st_mtime;
- fl->fileList[fl->fileListRecsUsed].rdev = statp->st_rdev;
- fl->fileList[fl->fileListRecsUsed].device = statp->st_dev;
- fl->fileList[fl->fileListRecsUsed].inode = statp->st_ino;
- fl->fileListRecsUsed++;
+ flp->flags = fl->currentFlags;
+ flp->verifyFlags = fl->currentVerifyFlags;
- fl->totalFileSize += statp->st_size;
- fl->fileCount++;
- }
+ flp->size = statp->st_size;
+ flp->mtime = statp->st_mtime;
+ flp->rdev = statp->st_rdev;
+ flp->device = statp->st_dev;
+ flp->inode = statp->st_ino;
+
+ fl->fileListRecsUsed++;
+
+ fl->totalFileSize += flp->size;
+ fl->fileCount++;
return 0;
}
@@ -1036,10 +1029,8 @@ static int processBinaryFile(Package pkg, struct FileList *fl, char *fileName)
return 1;
}
- x = 0;
- while (x < glob_result.gl_pathc) {
+ for (x = 0; x < glob_result.gl_pathc; x++) {
rc = addFile(fl, &(glob_result.gl_pathv[x][offset]), NULL);
- x++;
}
globfree(&glob_result);
} else {
@@ -1134,14 +1125,12 @@ static int processPackageFiles(Spec spec, Package pkg,
s = getStringBuf(pkg->fileList);
files = splitString(s, strlen(s), '\n');
- fp = files;
- while (*fp) {
+ for (fp = files; *fp != NULL; fp++) {
s = *fp;
SKIPSPACE(s);
- if (! *s) {
- fp++; continue;
- }
+ if (*s == '\0')
+ continue;
fileName = NULL;
strcpy(buf, s);
@@ -1153,42 +1142,33 @@ static int processPackageFiles(Spec spec, Package pkg,
fl.current.Pmode = fl.def.Pmode;
fl.current.Pdirmode = fl.def.Pdirmode;
fl.isSpecialDoc = 0;
+
FREE(fl.current.PmodeString);
FREE(fl.current.PdirmodeString);
FREE(fl.current.Uname);
FREE(fl.current.Gname);
FREE(fl.currentLang);
- if (fl.def.PmodeString) {
+ if (fl.def.PmodeString)
fl.current.PmodeString = strdup(fl.def.PmodeString);
- }
- if (fl.def.PdirmodeString) {
+ if (fl.def.PdirmodeString)
fl.current.PdirmodeString = strdup(fl.def.PdirmodeString);
- }
- if (fl.def.Uname) {
+ if (fl.def.Uname)
fl.current.Uname = strdup(fl.def.Uname);
- }
- if (fl.def.Gname) {
+ if (fl.def.Gname)
fl.current.Gname = strdup(fl.def.Gname);
- }
- if (parseForVerify(buf, &fl)) {
- fp++; continue;
- }
- if (parseForAttr(buf, &fl)) {
- fp++; continue;
- }
- if (parseForConfig(buf, &fl)) {
- fp++; continue;
- }
- if (parseForLang(buf, &fl)) {
- fp++; continue;
- }
- if (parseForSimple(spec, pkg, buf, &fl, &fileName)) {
- fp++; continue;
- }
- if (! fileName) {
- fp++; continue;
- }
+ if (parseForVerify(buf, &fl))
+ continue;
+ if (parseForAttr(buf, &fl))
+ continue;
+ if (parseForConfig(buf, &fl))
+ continue;
+ if (parseForLang(buf, &fl))
+ continue;
+ if (parseForSimple(spec, pkg, buf, &fl, &fileName))
+ continue;
+ if (fileName == NULL)
+ continue;
if (fl.isSpecialDoc) {
/* Save this stuff for last */
@@ -1211,8 +1191,6 @@ static int processPackageFiles(Spec spec, Package pkg,
} else {
processBinaryFile(pkg, &fl, fileName);
}
-
- fp++;
}
/* Now process special doc, if there is one */
@@ -1269,7 +1247,6 @@ int processSourceFiles(Spec spec)
int x, isSpec = 1;
struct FileList fl;
char *s, **files, **fp, *fn;
- struct stat sb;
HeaderIterator hi;
int tag, type, count;
Package pkg;
@@ -1357,7 +1334,7 @@ int processSourceFiles(Spec spec)
spec->sourceCpioList = NULL;
spec->sourceCpioCount = 0;
- fl.fileList = malloc((spec->numSources + 1) * sizeof(struct FileListRec));
+ fl.fileList = malloc((spec->numSources + 1) * sizeof(FileListRec));
fl.processingFailed = 0;
fl.fileListRecsUsed = 0;
fl.totalFileSize = 0;
@@ -1365,54 +1342,58 @@ int processSourceFiles(Spec spec)
s = getStringBuf(sourceFiles);
files = splitString(s, strlen(s), '\n');
- fp = files;
/* The first source file is the spec file */
x = 0;
- while (*fp) {
+ for (fp = files; *fp != NULL; fp++) {
+ FileListRec *flp;
s = *fp;
SKIPSPACE(s);
- if (! *s) {
- fp++; continue;
- }
+ if (! *s)
+ continue;
- fl.fileList[x].flags = isSpec ? RPMFILE_SPECFILE : 0;
+ flp = &fl.fileList[x];
+
+ flp->flags = isSpec ? RPMFILE_SPECFILE : 0;
/* files with leading ! are no source files */
if (*s == '!') {
- fl.fileList[x].flags |= RPMFILE_GHOST;
+ flp->flags |= RPMFILE_GHOST;
s++;
}
- fl.fileList[x].diskName = strdup(s);
+ flp->diskName = strdup(s);
fn = strrchr(s, '/');
if (fn) {
fn++;
} else {
fn = s;
}
- fl.fileList[x].fileName = strdup(fn);
- fl.fileList[x].verifyFlags = RPMVERIFY_ALL;
+ flp->fileName = strdup(fn);
+ flp->verifyFlags = RPMVERIFY_ALL;
+
+ { struct stat sb;
stat(s, &sb);
- fl.fileList[x].mode = sb.st_mode;
- fl.fileList[x].uid = sb.st_uid;
- fl.fileList[x].gid = sb.st_gid;
- fl.fileList[x].uname = getUname(sb.st_uid);
- fl.fileList[x].gname = getGname(sb.st_gid);
- fl.fileList[x].size = sb.st_size;
- fl.fileList[x].mtime = sb.st_mtime;
- fl.fileList[x].rdev = sb.st_rdev;
- fl.fileList[x].device = sb.st_dev;
- fl.fileList[x].inode = sb.st_ino;
- fl.fileList[x].lang = strdup("");
+ flp->mode = sb.st_mode;
+ flp->uid = sb.st_uid;
+ flp->gid = sb.st_gid;
+ flp->size = sb.st_size;
+ flp->mtime = sb.st_mtime;
+ flp->rdev = sb.st_rdev;
+ flp->device = sb.st_dev;
+ flp->inode = sb.st_ino;
+ }
+
+ flp->uname = getUname(flp->uid);
+ flp->gname = getGname(flp->gid);
+ flp->lang = strdup("");
- fl.totalFileSize += sb.st_size;
+ fl.totalFileSize += flp->size;
- if (! (fl.fileList[x].uname && fl.fileList[x].gname)) {
+ if (! (flp->uname && flp->gname)) {
rpmError(RPMERR_BADSPEC, _("Bad owner/group: %s"), s);
fl.processingFailed = 1;
}
isSpec = 0;
- fp++;
x++;
}
fl.fileListRecsUsed = x;
@@ -1566,14 +1547,13 @@ static int generateAutoReqProv(Spec spec, Package pkg,
return RPMERR_EXEC;
}
- f = fsave = splitString(getStringBuf(readBuf),
+ fsave = splitString(getStringBuf(readBuf),
strlen(getStringBuf(readBuf)), '\n');
freeStringBuf(readBuf);
- while (*f) {
+ for (f = fsave; *f != NULL; f++) {
if (**f) {
addReqProv(spec, pkg, RPMSENSE_PROVIDES, *f, NULL, 0);
}
- f++;
}
freeSplitString(fsave);
}
@@ -1593,14 +1573,13 @@ static int generateAutoReqProv(Spec spec, Package pkg,
return RPMERR_EXEC;
}
- f = fsave = splitString(getStringBuf(readBuf),
+ fsave = splitString(getStringBuf(readBuf),
strlen(getStringBuf(readBuf)), '\n');
freeStringBuf(readBuf);
- while (*f) {
+ for (f = fsave; *f != NULL; f++) {
if (**f) {
addReqProv(spec, pkg, RPMSENSE_ANY, *f, NULL, 0);
}
- f++;
}
freeSplitString(fsave);
}
@@ -1624,10 +1603,8 @@ static void printReqs(Spec spec, Package pkg)
if (headerGetEntry(pkg->header, RPMTAG_PROVIDES,
NULL, (void **) &names, &count)) {
rpmMessage(RPMMESS_NORMAL, _("Provides:"));
- x = 0;
- while (x < count) {
+ for (x = 0; x < count; x++) {
rpmMessage(RPMMESS_NORMAL, " %s", names[x]);
- x++;
}
rpmMessage(RPMMESS_NORMAL, "\n");
FREE(names);
@@ -1637,8 +1614,7 @@ static void printReqs(Spec spec, Package pkg)
NULL, (void **) &names, &count)) {
headerGetEntry(pkg->header, RPMTAG_REQUIREFLAGS,
NULL, (void **) &flags, NULL);
- x = 0;
- while (x < count) {
+ for (x = 0; x < count; x++) {
if (flags[x] & RPMSENSE_PREREQ) {
if (! startedPreReq) {
rpmMessage(RPMMESS_NORMAL, _("Prereqs:"));
@@ -1646,13 +1622,11 @@ static void printReqs(Spec spec, Package pkg)
}
rpmMessage(RPMMESS_NORMAL, " %s", names[x]);
}
- x++;
}
if (startedPreReq) {
rpmMessage(RPMMESS_NORMAL, "\n");
}
- x = 0;
- while (x < count) {
+ for (x = 0; x < count; x++) {
if (! (flags[x] & RPMSENSE_PREREQ)) {
if (! startedReq) {
rpmMessage(RPMMESS_NORMAL, _("Requires:"));
@@ -1660,7 +1634,6 @@ static void printReqs(Spec spec, Package pkg)
}
rpmMessage(RPMMESS_NORMAL, " %s", names[x]);
}
- x++;
}
rpmMessage(RPMMESS_NORMAL, "\n");
FREE(names);
diff --git a/build/names.c b/build/names.c
index 22e1ddeab..b30d8a770 100644
--- a/build/names.c
+++ b/build/names.c
@@ -48,7 +48,7 @@ char *getUname(uid_t uid)
* getUnameS() takes a username, gets the uid, and creates an entry in the
* table to hold a string containing the user name.
*/
-char *getUnameS(char *uname)
+char *getUnameS(const char *uname)
{
struct passwd *pw;
int x;
@@ -113,7 +113,7 @@ char *getGname(gid_t gid)
* getGnameS() takes a group name, gets the gid, and creates an entry in the
* table to hold a string containing the group name.
*/
-char *getGnameS(char *gname)
+char *getGnameS(const char *gname)
{
struct group *gr;
int x;
diff --git a/build/rpmbuild.h b/build/rpmbuild.h
index 395250a3a..36fe07b95 100644
--- a/build/rpmbuild.h
+++ b/build/rpmbuild.h
@@ -28,7 +28,7 @@
#include <ctype.h>
-#define FREE(x) { if (x) free(x); x = NULL; }
+#define FREE(x) { if (x) free((void *)x); x = NULL; }
#define SKIPSPACE(s) { while (*(s) && isspace(*(s))) (s)++; }
#define SKIPNONSPACE(s) { while (*(s) && !isspace(*(s))) (s)++; }
#define SKIPTONEWLINE(s) { while (*s && *s != '\n') s++; }
@@ -70,9 +70,9 @@ extern "C" {
/* from build/names.h */
char *getUname(uid_t uid);
-char *getUnameS(char *uname);
+char *getUnameS(const char *uname);
char *getGname(gid_t gid);
-char *getGnameS(char *gname);
+char *getGnameS(const char *gname);
char *const buildHost(void);
time_t *const getBuildTime(void);
diff --git a/lib/Makefile.am b/lib/Makefile.am
index e9e393988..be04ee43b 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -9,7 +9,7 @@ rpminc_HEADERS = dbindex.h header.h misc.h rpmlib.h rpmmacro.h stringbuf.h
noinst_HEADERS = \
cpio.h depends.h falloc.h install.h \
md5.h oldheader.h oldrpmdb.h rpm_malloc.h \
- rpmdb.h rpmlead.h signature.h tread.h
+ rpmdb.h rpmio.h rpmlead.h signature.h tread.h
lib_LIBRARIES = librpm.a
librpm_a_SOURCES = \
@@ -17,7 +17,7 @@ librpm_a_SOURCES = \
formats.c fs.c header.c install.c \
lookup.c macro.c md5.c md5sum.c \
messages.c misc.c oldheader.c package.c query.c \
- rebuilddb.c rpmdb.c rpmerr.c rpmlead.c \
+ rebuilddb.c rpmdb.c rpmerr.c rpmio.c rpmlead.c \
rpmrc.c signature.c stringbuf.c tagtable.c \
tread.c uninstall.c verify.c
diff --git a/lib/Makefile.in b/lib/Makefile.in
index b142ae896..d23c6e64a 100644
--- a/lib/Makefile.in
+++ b/lib/Makefile.in
@@ -127,7 +127,7 @@ rpminc_HEADERS = dbindex.h header.h misc.h rpmlib.h rpmmacro.h stringbuf.h
noinst_HEADERS = \
cpio.h depends.h falloc.h install.h \
md5.h oldheader.h oldrpmdb.h rpm_malloc.h \
- rpmdb.h rpmlead.h signature.h tread.h
+ rpmdb.h rpmio.h rpmlead.h signature.h tread.h
lib_LIBRARIES = librpm.a
librpm_a_SOURCES = \
@@ -135,7 +135,7 @@ librpm_a_SOURCES = \
formats.c fs.c header.c install.c \
lookup.c macro.c md5.c md5sum.c \
messages.c misc.c oldheader.c package.c query.c \
- rebuilddb.c rpmdb.c rpmerr.c rpmlead.c \
+ rebuilddb.c rpmdb.c rpmerr.c rpmio.c rpmlead.c \
rpmrc.c signature.c stringbuf.c tagtable.c \
tread.c uninstall.c verify.c
@@ -152,8 +152,9 @@ LDFLAGS = @LDFLAGS@
librpm_a_LIBADD =
librpm_a_OBJECTS = cpio.o dbindex.o depends.o falloc.o formats.o fs.o \
header.o install.o lookup.o macro.o md5.o md5sum.o messages.o misc.o \
-oldheader.o package.o query.o rebuilddb.o rpmdb.o rpmerr.o rpmlead.o \
-rpmrc.o signature.o stringbuf.o tagtable.o tread.o uninstall.o verify.o
+oldheader.o package.o query.o rebuilddb.o rpmdb.o rpmerr.o rpmio.o \
+rpmlead.o rpmrc.o signature.o stringbuf.o tagtable.o tread.o \
+uninstall.o verify.o
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
LINK = $(CC) $(CFLAGS) $(LDFLAGS) -o $@
@@ -171,9 +172,9 @@ DEP_FILES = .deps/cpio.P .deps/dbindex.P .deps/depends.P .deps/falloc.P \
.deps/lookup.P .deps/macro.P .deps/md5.P .deps/md5sum.P \
.deps/messages.P .deps/misc.P .deps/oldheader.P .deps/package.P \
.deps/query.P .deps/rebuilddb.P .deps/rpmdb.P .deps/rpmerr.P \
-.deps/rpmlead.P .deps/rpmrc.P .deps/signature.P .deps/stringbuf.P \
-.deps/tagtable .deps/tagtable.P .deps/tread.P .deps/uninstall.P \
-.deps/verify.P
+.deps/rpmio.P .deps/rpmlead.P .deps/rpmrc.P .deps/signature.P \
+.deps/stringbuf.P .deps/tagtable .deps/tagtable.P .deps/tread.P \
+.deps/uninstall.P .deps/verify.P
SOURCES = $(librpm_a_SOURCES)
OBJECTS = $(librpm_a_OBJECTS)
diff --git a/lib/md5.h b/lib/md5.h
index 4e6f5e0d3..203c1f577 100644
--- a/lib/md5.h
+++ b/lib/md5.h
@@ -20,13 +20,13 @@ void MD5Update(struct MD5Context *context, unsigned char const *buf,
void MD5Final(unsigned char digest[16], struct MD5Context *context);
void MD5Transform(uint32 buf[4], uint32 const in[16]);
-int mdfile(char *fn, unsigned char *digest);
-int mdbinfile(char *fn, unsigned char *bindigest);
+int mdfile(const char *fn, unsigned char *digest);
+int mdbinfile(const char *fn, unsigned char *bindigest);
/* These assume a little endian machine and return incorrect results!
They are here for compatibility with old (broken) versions of RPM */
-int mdfileBroken(char *fn, unsigned char *digest);
-int mdbinfileBroken(char *fn, unsigned char *bindigest);
+int mdfileBroken(const char *fn, unsigned char *digest);
+int mdbinfileBroken(const char *fn, unsigned char *bindigest);
/*
* This is needed to make RSAREF happy on some MS-DOS compilers.
diff --git a/lib/md5sum.c b/lib/md5sum.c
index 137c9becd..df07fb564 100644
--- a/lib/md5sum.c
+++ b/lib/md5sum.c
@@ -14,7 +14,7 @@
#include "md5.h"
-static int domd5(char * fn, unsigned char * digest, int asAscii,
+static int domd5(const char * fn, unsigned char * digest, int asAscii,
int brokenEndian) {
unsigned char buf[1024];
unsigned char bindigest[16];
@@ -52,18 +52,18 @@ static int domd5(char * fn, unsigned char * digest, int asAscii,
return 0;
}
-int mdbinfile(char *fn, unsigned char *bindigest) {
+int mdbinfile(const char *fn, unsigned char *bindigest) {
return domd5(fn, bindigest, 0, 0);
}
-int mdbinfileBroken(char *fn, unsigned char *bindigest) {
+int mdbinfileBroken(const char *fn, unsigned char *bindigest) {
return domd5(fn, bindigest, 0, 1);
}
-int mdfile(char *fn, unsigned char *digest) {
+int mdfile(const char *fn, unsigned char *digest) {
return domd5(fn, digest, 1, 0);
}
-int mdfileBroken(char *fn, unsigned char *digest) {
+int mdfileBroken(const char *fn, unsigned char *digest) {
return domd5(fn, digest, 1, 1);
}
diff --git a/lib/signature.c b/lib/signature.c
index 3e0760321..8c425a070 100644
--- a/lib/signature.c
+++ b/lib/signature.c
@@ -20,7 +20,7 @@
#include "rpmlead.h"
#include "signature.h"
-typedef int (*md5func)(char * fn, unsigned char * digest);
+typedef int (*md5func)(const char * fn, unsigned char * digest);
static int makePGPSignature(char *file, void **sig, int_32 *size,
char *passPhrase);
diff --git a/po/rpm.pot b/po/rpm.pot
index 7e4bc168b..1739f6985 100644
--- a/po/rpm.pot
+++ b/po/rpm.pot
@@ -2,12 +2,12 @@
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
-#: ../rpm.c:181 ../rpm.c:260
+#: ../rpm.c:183 ../rpm.c:262
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 1998-11-23 16:37-0500\n"
+"POT-Creation-Date: 1998-11-24 14:20-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"
@@ -295,989 +295,989 @@ msgstr ""
msgid " conflicts with %s-%s-%s\n"
msgstr ""
-#: ../rpm.c:158
+#: ../rpm.c:160
#, c-format
msgid "rpm: %s\n"
msgstr ""
-#: ../rpm.c:169
+#: ../rpm.c:171
#, c-format
msgid "RPM version %s\n"
msgstr ""
-#: ../rpm.c:173
+#: ../rpm.c:175
msgid "Copyright (C) 1998 - Red Hat Software"
msgstr ""
-#: ../rpm.c:174
+#: ../rpm.c:176
msgid ""
"This may be freely redistributed under the terms of the GNU Public License"
msgstr ""
-#: ../rpm.c:183
+#: ../rpm.c:185
msgid "usage: rpm {--help}"
msgstr ""
-#: ../rpm.c:184
+#: ../rpm.c:186
msgid " rpm {--version}"
msgstr ""
-#: ../rpm.c:185
+#: ../rpm.c:187
msgid " rpm {--initdb} [--dbpath <dir>]"
msgstr ""
-#: ../rpm.c:186
+#: ../rpm.c:188
msgid ""
" rpm {--install -i} [-v] [--hash -h] [--percent] [--force] [--test]"
msgstr ""
-#: ../rpm.c:187
+#: ../rpm.c:189
msgid " [--replacepkgs] [--replacefiles] [--root <dir>]"
msgstr ""
-#: ../rpm.c:188
+#: ../rpm.c:190
msgid " [--excludedocs] [--includedocs] [--noscripts]"
msgstr ""
-#: ../rpm.c:189
+#: ../rpm.c:191
msgid ""
" [--rcfile <file>] [--ignorearch] [--dbpath <dir>]"
msgstr ""
-#: ../rpm.c:190
+#: ../rpm.c:192
msgid ""
" [--prefix <dir>] [--ignoreos] [--nodeps] [--allfiles]"
msgstr ""
-#: ../rpm.c:191
+#: ../rpm.c:193
msgid ""
" [--ftpproxy <host>] [--ftpport <port>] [--justdb]"
msgstr ""
-#: ../rpm.c:192 ../rpm.c:200
+#: ../rpm.c:194 ../rpm.c:202
msgid " [--noorder] [--relocate oldpath=newpath]"
msgstr ""
-#: ../rpm.c:193
+#: ../rpm.c:195
msgid ""
" [--badreloc] [--notriggers] file1.rpm ... fileN.rpm"
msgstr ""
-#: ../rpm.c:194
+#: ../rpm.c:196
msgid ""
" rpm {--upgrade -U} [-v] [--hash -h] [--percent] [--force] [--test]"
msgstr ""
-#: ../rpm.c:195
+#: ../rpm.c:197
msgid " [--oldpackage] [--root <dir>] [--noscripts]"
msgstr ""
-#: ../rpm.c:196
+#: ../rpm.c:198
msgid ""
" [--excludedocs] [--includedocs] [--rcfile <file>]"
msgstr ""
-#: ../rpm.c:197
+#: ../rpm.c:199
msgid ""
" [--ignorearch] [--dbpath <dir>] [--prefix <dir>] "
msgstr ""
-#: ../rpm.c:198
+#: ../rpm.c:200
msgid " [--ftpproxy <host>] [--ftpport <port>]"
msgstr ""
-#: ../rpm.c:199
+#: ../rpm.c:201
msgid " [--ignoreos] [--nodeps] [--allfiles] [--justdb]"
msgstr ""
-#: ../rpm.c:201
+#: ../rpm.c:203
msgid " [--badreloc] file1.rpm ... fileN.rpm"
msgstr ""
-#: ../rpm.c:202
+#: ../rpm.c:204
msgid " rpm {--query -q} [-afpg] [-i] [-l] [-s] [-d] [-c] [-v] [-R]"
msgstr ""
-#: ../rpm.c:203
+#: ../rpm.c:205
msgid " [--scripts] [--root <dir>] [--rcfile <file>]"
msgstr ""
-#: ../rpm.c:204
+#: ../rpm.c:206
msgid " [--whatprovides] [--whatrequires] [--requires]"
msgstr ""
-#: ../rpm.c:205
+#: ../rpm.c:207
msgid ""
" [--triggeredby] [--ftpuseport] [--ftpproxy <host>]"
msgstr ""
-#: ../rpm.c:206
+#: ../rpm.c:208
msgid ""
" [--ftpport <port>] [--provides] [--triggers] [--dump]"
msgstr ""
-#: ../rpm.c:207
+#: ../rpm.c:209
msgid " [--changelog] [--dbpath <dir>] [targets]"
msgstr ""
-#: ../rpm.c:208
+#: ../rpm.c:210
msgid " rpm {--verify -V -y} [-afpg] [--root <dir>] [--rcfile <file>]"
msgstr ""
-#: ../rpm.c:209
+#: ../rpm.c:211
msgid ""
" [--dbpath <dir>] [--nodeps] [--nofiles] [--noscripts]"
msgstr ""
-#: ../rpm.c:210
+#: ../rpm.c:212
msgid " [--nomd5] [targets]"
msgstr ""
-#: ../rpm.c:211
+#: ../rpm.c:213
msgid " rpm {--setperms} [-afpg] [target]"
msgstr ""
-#: ../rpm.c:212
+#: ../rpm.c:214
msgid " rpm {--setugids} [-afpg] [target]"
msgstr ""
-#: ../rpm.c:213
+#: ../rpm.c:215
msgid " rpm {--erase -e} [--root <dir>] [--noscripts] [--rcfile <file>]"
msgstr ""
-#: ../rpm.c:214
+#: ../rpm.c:216
msgid " [--dbpath <dir>] [--nodeps] [--allmatches]"
msgstr ""
-#: ../rpm.c:215
+#: ../rpm.c:217
msgid ""
" [--justdb] [--notriggers] rpackage1 ... packageN"
msgstr ""
-#: ../rpm.c:216
+#: ../rpm.c:218
msgid ""
" rpm {-b|t}[plciba] [-v] [--short-circuit] [--clean] [--rcfile <file>]"
msgstr ""
-#: ../rpm.c:217
+#: ../rpm.c:219
msgid " [--sign] [--test] [--timecheck <s>] ]"
msgstr ""
-#: ../rpm.c:218
+#: ../rpm.c:220
msgid " [--buildplatform=platform1[,platform2...]]"
msgstr ""
-#: ../rpm.c:219
+#: ../rpm.c:221
msgid " [--rmsource] specfile"
msgstr ""
-#: ../rpm.c:220
+#: ../rpm.c:222
msgid " rpm {--rmsource} [--rcfile <file>] [-v] specfile"
msgstr ""
-#: ../rpm.c:221
+#: ../rpm.c:223
msgid ""
" rpm {--rebuild} [--rcfile <file>] [-v] source1.rpm ... sourceN.rpm"
msgstr ""
-#: ../rpm.c:222
+#: ../rpm.c:224
msgid ""
" rpm {--recompile} [--rcfile <file>] [-v] source1.rpm ... sourceN.rpm"
msgstr ""
-#: ../rpm.c:223
+#: ../rpm.c:225
msgid " rpm {--resign} [--rcfile <file>] package1 package2 ... packageN"
msgstr ""
-#: ../rpm.c:224
+#: ../rpm.c:226
msgid " rpm {--addsign} [--rcfile <file>] package1 package2 ... packageN"
msgstr ""
-#: ../rpm.c:225
+#: ../rpm.c:227
msgid " rpm {--checksig -K} [--nopgp] [--nomd5] [--rcfile <file>]"
msgstr ""
-#: ../rpm.c:226
+#: ../rpm.c:228
msgid " package1 ... packageN"
msgstr ""
-#: ../rpm.c:227
+#: ../rpm.c:229
msgid " rpm {--rebuilddb} [--rcfile <file>] [--dbpath <dir>]"
msgstr ""
-#: ../rpm.c:228
+#: ../rpm.c:230
msgid " rpm {--querytags}"
msgstr ""
-#: ../rpm.c:262
+#: ../rpm.c:264
msgid "usage:"
msgstr ""
-#: ../rpm.c:264
+#: ../rpm.c:266
msgid "print this message"
msgstr ""
-#: ../rpm.c:266
+#: ../rpm.c:268
msgid "print the version of rpm being used"
msgstr ""
-#: ../rpm.c:267
+#: ../rpm.c:269
msgid " all modes support the following arguments:"
msgstr ""
-#: ../rpm.c:268
+#: ../rpm.c:270
msgid " --rcfile <file> "
msgstr ""
-#: ../rpm.c:269
+#: ../rpm.c:271
msgid "use <file> instead of /etc/rpmrc and $HOME/.rpmrc"
msgstr ""
-#: ../rpm.c:271
+#: ../rpm.c:273
msgid "be a little more verbose"
msgstr ""
-#: ../rpm.c:273
+#: ../rpm.c:275
msgid "be incredibly verbose (for debugging)"
msgstr ""
-#: ../rpm.c:275
+#: ../rpm.c:277
msgid "query mode"
msgstr ""
-#: ../rpm.c:276 ../rpm.c:334 ../rpm.c:394 ../rpm.c:422
+#: ../rpm.c:278 ../rpm.c:336 ../rpm.c:396 ../rpm.c:424
msgid " --root <dir> "
msgstr ""
-#: ../rpm.c:277 ../rpm.c:335 ../rpm.c:395 ../rpm.c:423 ../rpm.c:483
+#: ../rpm.c:279 ../rpm.c:337 ../rpm.c:397 ../rpm.c:425 ../rpm.c:485
msgid "use <dir> as the top level directory"
msgstr ""
-#: ../rpm.c:278 ../rpm.c:332 ../rpm.c:360 ../rpm.c:410 ../rpm.c:480
+#: ../rpm.c:280 ../rpm.c:334 ../rpm.c:362 ../rpm.c:412 ../rpm.c:482
msgid " --dbpath <dir> "
msgstr ""
-#: ../rpm.c:279 ../rpm.c:333 ../rpm.c:361 ../rpm.c:411 ../rpm.c:481
+#: ../rpm.c:281 ../rpm.c:335 ../rpm.c:363 ../rpm.c:413 ../rpm.c:483
msgid "use <dir> as the directory for the database"
msgstr ""
-#: ../rpm.c:280
+#: ../rpm.c:282
msgid " --queryformat <qfmt>"
msgstr ""
-#: ../rpm.c:281
+#: ../rpm.c:283
msgid "use <qfmt> as the header format (implies -i)"
msgstr ""
-#: ../rpm.c:282
+#: ../rpm.c:284
msgid ""
" install, upgrade and query (with -p) allow ftp URL's to be used in place"
msgstr ""
-#: ../rpm.c:283
+#: ../rpm.c:285
msgid " of file names as well as the following options:"
msgstr ""
-#: ../rpm.c:284
+#: ../rpm.c:286
msgid " --ftpproxy <host> "
msgstr ""
-#: ../rpm.c:285
+#: ../rpm.c:287
msgid "hostname or IP of ftp proxy"
msgstr ""
-#: ../rpm.c:286
+#: ../rpm.c:288
msgid " --ftpport <port> "
msgstr ""
-#: ../rpm.c:287
+#: ../rpm.c:289
msgid "port number of ftp server (or proxy)"
msgstr ""
-#: ../rpm.c:288
+#: ../rpm.c:290
msgid " Package specification options:"
msgstr ""
-#: ../rpm.c:290
+#: ../rpm.c:292
msgid "query all packages"
msgstr ""
-#: ../rpm.c:291
+#: ../rpm.c:293
msgid " -f <file>+ "
msgstr ""
-#: ../rpm.c:292
+#: ../rpm.c:294
msgid "query package owning <file>"
msgstr ""
-#: ../rpm.c:293
+#: ../rpm.c:295
msgid " -p <packagefile>+ "
msgstr ""
-#: ../rpm.c:294
+#: ../rpm.c:296
msgid "query (uninstalled) package <packagefile>"
msgstr ""
-#: ../rpm.c:295
+#: ../rpm.c:297
msgid " --triggeredby <pkg>"
msgstr ""
-#: ../rpm.c:296
+#: ../rpm.c:298
msgid "query packages triggered by <pkg>"
msgstr ""
-#: ../rpm.c:297
+#: ../rpm.c:299
msgid " --whatprovides <cap>"
msgstr ""
-#: ../rpm.c:298
+#: ../rpm.c:300
msgid "query packages which provide <cap> capability"
msgstr ""
-#: ../rpm.c:299
+#: ../rpm.c:301
msgid " --whatrequires <cap>"
msgstr ""
-#: ../rpm.c:300
+#: ../rpm.c:302
msgid "query packages which require <cap> capability"
msgstr ""
-#: ../rpm.c:301
+#: ../rpm.c:303
msgid " Information selection options:"
msgstr ""
-#: ../rpm.c:303
+#: ../rpm.c:305
msgid "display package information"
msgstr ""
-#: ../rpm.c:305
+#: ../rpm.c:307
msgid "display the package's change log"
msgstr ""
-#: ../rpm.c:307
+#: ../rpm.c:309
msgid "display package file list"
msgstr ""
-#: ../rpm.c:309
+#: ../rpm.c:311
msgid "show file states (implies -l)"
msgstr ""
-#: ../rpm.c:311
+#: ../rpm.c:313
msgid "list only documentation files (implies -l)"
msgstr ""
-#: ../rpm.c:313
+#: ../rpm.c:315
msgid "list only configuration files (implies -l)"
msgstr ""
-#: ../rpm.c:315
+#: ../rpm.c:317
msgid ""
"show all verifiable information for each file (must be used with -l, -c, or "
"-d)"
msgstr ""
-#: ../rpm.c:317
+#: ../rpm.c:319
msgid "list capabilities package provides"
msgstr ""
-#: ../rpm.c:318
+#: ../rpm.c:320
msgid " --requires"
msgstr ""
-#: ../rpm.c:320
+#: ../rpm.c:322
msgid "list package dependencies"
msgstr ""
-#: ../rpm.c:322
+#: ../rpm.c:324
msgid "print the various [un]install scripts"
msgstr ""
-#: ../rpm.c:324
+#: ../rpm.c:326
msgid "show the trigger scripts contained in the package"
msgstr ""
-#: ../rpm.c:328
+#: ../rpm.c:330
msgid " --pipe <cmd> "
msgstr ""
-#: ../rpm.c:329
+#: ../rpm.c:331
msgid "send stdout to <cmd>"
msgstr ""
-#: ../rpm.c:331
+#: ../rpm.c:333
msgid ""
"verify a package installation using the same same package specification "
"options as -q"
msgstr ""
-#: ../rpm.c:337 ../rpm.c:381 ../rpm.c:415
+#: ../rpm.c:339 ../rpm.c:383 ../rpm.c:417
msgid "do not verify package dependencies"
msgstr ""
-#: ../rpm.c:339
+#: ../rpm.c:341
msgid "do not verify file md5 checksums"
msgstr ""
-#: ../rpm.c:341
+#: ../rpm.c:343
msgid "do not verify file attributes"
msgstr ""
-#: ../rpm.c:344
+#: ../rpm.c:346
msgid ""
"set the file permissions to those in the package database using the same "
"package specification options as -q"
msgstr ""
-#: ../rpm.c:347
+#: ../rpm.c:349
msgid ""
"set the file owner and group to those in the package database using the same "
"package specification options as -q"
msgstr ""
-#: ../rpm.c:351
+#: ../rpm.c:353
msgid " --install <packagefile>"
msgstr ""
-#: ../rpm.c:352
+#: ../rpm.c:354
msgid " -i <packagefile> "
msgstr ""
-#: ../rpm.c:353
+#: ../rpm.c:355
msgid "install package"
msgstr ""
-#: ../rpm.c:354
+#: ../rpm.c:356
msgid " --relocate <oldpath>=<newpath>"
msgstr ""
-#: ../rpm.c:355
+#: ../rpm.c:357
msgid "relocate files from <oldpath> to <newpath>"
msgstr ""
-#: ../rpm.c:357
+#: ../rpm.c:359
msgid "relocate files even though the package doesn't allow it"
msgstr ""
-#: ../rpm.c:358
+#: ../rpm.c:360
msgid " --prefix <dir> "
msgstr ""
-#: ../rpm.c:359
+#: ../rpm.c:361
msgid "relocate the package to <dir>, if relocatable"
msgstr ""
-#: ../rpm.c:363
+#: ../rpm.c:365
msgid "do not install documentation"
msgstr ""
-#: ../rpm.c:365
+#: ../rpm.c:367
msgid "short hand for --replacepkgs --replacefiles"
msgstr ""
-#: ../rpm.c:368
+#: ../rpm.c:370
msgid "print hash marks as package installs (good with -v)"
msgstr ""
-#: ../rpm.c:370
+#: ../rpm.c:372
msgid "install all files, even configurations which might otherwise be skipped"
msgstr ""
-#: ../rpm.c:373
+#: ../rpm.c:375
msgid "don't verify package architecture"
msgstr ""
-#: ../rpm.c:375
+#: ../rpm.c:377
msgid "don't verify package operating system"
msgstr ""
-#: ../rpm.c:377
+#: ../rpm.c:379
msgid "install documentation"
msgstr ""
-#: ../rpm.c:379 ../rpm.c:413
+#: ../rpm.c:381 ../rpm.c:415
msgid "update the database, but do not modify the filesystem"
msgstr ""
-#: ../rpm.c:383 ../rpm.c:417
+#: ../rpm.c:385 ../rpm.c:419
msgid "do not reorder package installation to satisfy dependencies"
msgstr ""
-#: ../rpm.c:385
+#: ../rpm.c:387
msgid "don't execute any installation scripts"
msgstr ""
-#: ../rpm.c:387 ../rpm.c:421
+#: ../rpm.c:389 ../rpm.c:423
msgid "don't execute any scripts triggered by this package"
msgstr ""
-#: ../rpm.c:389
+#: ../rpm.c:391
msgid "print percentages as package installs"
msgstr ""
-#: ../rpm.c:391
+#: ../rpm.c:393
msgid "install even if the package replaces installed files"
msgstr ""
-#: ../rpm.c:393
+#: ../rpm.c:395
msgid "reinstall if the package is already present"
msgstr ""
-#: ../rpm.c:397
+#: ../rpm.c:399
msgid "don't install, but tell if it would work or not"
msgstr ""
-#: ../rpm.c:399
+#: ../rpm.c:401
msgid " --upgrade <packagefile>"
msgstr ""
-#: ../rpm.c:400
+#: ../rpm.c:402
msgid " -U <packagefile> "
msgstr ""
-#: ../rpm.c:401
+#: ../rpm.c:403
msgid "upgrade package (same options as --install, plus)"
msgstr ""
-#: ../rpm.c:403
+#: ../rpm.c:405
msgid ""
"upgrade to an old version of the package (--force on upgrades does this "
"automatically)"
msgstr ""
-#: ../rpm.c:405
+#: ../rpm.c:407
msgid " --erase <package>"
msgstr ""
-#: ../rpm.c:407
+#: ../rpm.c:409
msgid "erase (uninstall) package"
msgstr ""
-#: ../rpm.c:409
+#: ../rpm.c:411
msgid ""
"remove all packages which match <package> (normally an error is generated if "
"<package> specified multiple packages)"
msgstr ""
-#: ../rpm.c:419
+#: ../rpm.c:421
msgid "do not execute any package specific scripts"
msgstr ""
-#: ../rpm.c:425
+#: ../rpm.c:427
msgid " -b<stage> <spec> "
msgstr ""
-#: ../rpm.c:426
+#: ../rpm.c:428
msgid " -t<stage> <tarball> "
msgstr ""
-#: ../rpm.c:427
+#: ../rpm.c:429
msgid "build package, where <stage> is one of:"
msgstr ""
-#: ../rpm.c:429
+#: ../rpm.c:431
msgid "prep (unpack sources and apply patches)"
msgstr ""
-#: ../rpm.c:431
+#: ../rpm.c:433
#, c-format
msgid "list check (do some cursory checks on %files)"
msgstr ""
-#: ../rpm.c:433
+#: ../rpm.c:435
msgid "compile (prep and compile)"
msgstr ""
-#: ../rpm.c:435
+#: ../rpm.c:437
msgid "install (prep, compile, install)"
msgstr ""
-#: ../rpm.c:437
+#: ../rpm.c:439
msgid "binary package (prep, compile, install, package)"
msgstr ""
-#: ../rpm.c:439
+#: ../rpm.c:441
msgid "bin/src package (prep, compile, install, package)"
msgstr ""
-#: ../rpm.c:441
+#: ../rpm.c:443
msgid "skip straight to specified stage (only for c,i)"
msgstr ""
-#: ../rpm.c:443
+#: ../rpm.c:445
msgid "remove build tree when done"
msgstr ""
-#: ../rpm.c:445
+#: ../rpm.c:447
msgid "remove sources and spec file when done"
msgstr ""
-#: ../rpm.c:447
+#: ../rpm.c:449
msgid "generate PGP signature"
msgstr ""
-#: ../rpm.c:448
+#: ../rpm.c:450
msgid " --buildroot <dir> "
msgstr ""
-#: ../rpm.c:449
+#: ../rpm.c:451
msgid "use <dir> as the build root"
msgstr ""
-#: ../rpm.c:450
+#: ../rpm.c:452
msgid " --platform=<platform>+"
msgstr ""
-#: ../rpm.c:451
+#: ../rpm.c:453
msgid "build the packages for the platform1...platformN build targets."
msgstr ""
-#: ../rpm.c:453
+#: ../rpm.c:455
msgid "do not execute any stages"
msgstr ""
-#: ../rpm.c:454
+#: ../rpm.c:456
msgid " --timecheck <secs> "
msgstr ""
-#: ../rpm.c:455
+#: ../rpm.c:457
msgid "set the time check to <secs> seconds (0 disables)"
msgstr ""
-#: ../rpm.c:457
+#: ../rpm.c:459
msgid " --rebuild <src_pkg> "
msgstr ""
-#: ../rpm.c:458
+#: ../rpm.c:460
msgid ""
"install source package, build binary package and remove spec file, sources, "
"patches, and icons."
msgstr ""
-#: ../rpm.c:459
+#: ../rpm.c:461
msgid " --rmsource <spec> "
msgstr ""
-#: ../rpm.c:460
+#: ../rpm.c:462
msgid "remove sources and spec file"
msgstr ""
-#: ../rpm.c:461
+#: ../rpm.c:463
msgid " --recompile <src_pkg> "
msgstr ""
-#: ../rpm.c:462
+#: ../rpm.c:464
msgid "like --rebuild, but don't build any package"
msgstr ""
-#: ../rpm.c:463
+#: ../rpm.c:465
msgid " --resign <pkg>+ "
msgstr ""
-#: ../rpm.c:464
+#: ../rpm.c:466
msgid "sign a package (discard current signature)"
msgstr ""
-#: ../rpm.c:465
+#: ../rpm.c:467
msgid " --addsign <pkg>+ "
msgstr ""
-#: ../rpm.c:466
+#: ../rpm.c:468
msgid "add a signature to a package"
msgstr ""
-#: ../rpm.c:468
+#: ../rpm.c:470
msgid " --checksig <pkg>+ "
msgstr ""
-#: ../rpm.c:469
+#: ../rpm.c:471
msgid "verify package signature"
msgstr ""
-#: ../rpm.c:471
+#: ../rpm.c:473
msgid "skip any PGP signatures"
msgstr ""
-#: ../rpm.c:473
+#: ../rpm.c:475
msgid "skip any MD5 signatures"
msgstr ""
-#: ../rpm.c:475
+#: ../rpm.c:477
msgid "list the tags that can be used in a query format"
msgstr ""
-#: ../rpm.c:477
+#: ../rpm.c:479
msgid "make sure a valid database exists"
msgstr ""
-#: ../rpm.c:479
+#: ../rpm.c:481
msgid "rebuild database from existing database"
msgstr ""
-#: ../rpm.c:628 ../rpm.c:634 ../rpm.c:641 ../rpm.c:647 ../rpm.c:656
-#: ../rpm.c:663 ../rpm.c:709 ../rpm.c:715 ../rpm.c:779 ../rpm.c:786
-#: ../rpm.c:792 ../rpm.c:800 ../rpm.c:806 ../rpm.c:814 ../rpm.c:839
-#: ../rpm.c:885 ../rpm.c:892
+#: ../rpm.c:630 ../rpm.c:636 ../rpm.c:643 ../rpm.c:649 ../rpm.c:658
+#: ../rpm.c:665 ../rpm.c:711 ../rpm.c:717 ../rpm.c:781 ../rpm.c:788
+#: ../rpm.c:794 ../rpm.c:802 ../rpm.c:808 ../rpm.c:816 ../rpm.c:841
+#: ../rpm.c:887 ../rpm.c:894
msgid "only one major mode may be specified"
msgstr ""
-#: ../rpm.c:649
+#: ../rpm.c:651
msgid "-u and --uninstall are deprecated and no longer work.\n"
msgstr ""
-#: ../rpm.c:651
+#: ../rpm.c:653
msgid "Use -e or --erase instead.\n"
msgstr ""
-#: ../rpm.c:667
+#: ../rpm.c:669
msgid "--build (-b) requires one of a,b,i,c,p,l as its sole argument"
msgstr ""
-#: ../rpm.c:671
+#: ../rpm.c:673
msgid "--tarbuild (-t) requires one of a,b,i,c,p,l as its sole argument"
msgstr ""
-#: ../rpm.c:722 ../rpm.c:729 ../rpm.c:737 ../rpm.c:745 ../rpm.c:755
-#: ../rpm.c:763 ../rpm.c:771 ../rpm.c:899
+#: ../rpm.c:724 ../rpm.c:731 ../rpm.c:739 ../rpm.c:747 ../rpm.c:757
+#: ../rpm.c:765 ../rpm.c:773 ../rpm.c:901
msgid "one type of query/verify may be performed at a time"
msgstr ""
-#: ../rpm.c:822
+#: ../rpm.c:824
msgid "arguments to --dbpath must begin with a /"
msgstr ""
-#: ../rpm.c:845
+#: ../rpm.c:847
msgid "relocations must begin with a /"
msgstr ""
-#: ../rpm.c:847
+#: ../rpm.c:849
msgid "relocations must contain a ="
msgstr ""
-#: ../rpm.c:850
+#: ../rpm.c:852
msgid "relocations must have a / following the ="
msgstr ""
-#: ../rpm.c:862
+#: ../rpm.c:864
msgid "Internal error in argument processing :-(\n"
msgstr ""
-#: ../rpm.c:912
+#: ../rpm.c:914
msgid "--dbpath given for operation that does not use a database"
msgstr ""
-#: ../rpm.c:917
+#: ../rpm.c:919
msgid "--timecheck may only be used during package builds"
msgstr ""
-#: ../rpm.c:920 ../rpm.c:923
+#: ../rpm.c:922 ../rpm.c:925
msgid "unexpected query specifiers"
msgstr ""
-#: ../rpm.c:927
+#: ../rpm.c:929
msgid "unexpected query source"
msgstr ""
-#: ../rpm.c:931
+#: ../rpm.c:933
msgid "only installation, upgrading and rmsource may be forced"
msgstr ""
-#: ../rpm.c:935
+#: ../rpm.c:937
msgid "files may only be relocated during package installation"
msgstr ""
-#: ../rpm.c:938
+#: ../rpm.c:940
msgid "only one of --prefix or --relocate may be used"
msgstr ""
-#: ../rpm.c:941
+#: ../rpm.c:943
msgid "--relocate may only be used when installing new packages"
msgstr ""
-#: ../rpm.c:944
+#: ../rpm.c:946
msgid "--prefix may only be used when installing new packages"
msgstr ""
-#: ../rpm.c:947
+#: ../rpm.c:949
msgid "arguments to --prefix must begin with a /"
msgstr ""
-#: ../rpm.c:950
+#: ../rpm.c:952
msgid "--hash (-h) may only be specified during package installation"
msgstr ""
-#: ../rpm.c:954
+#: ../rpm.c:956
msgid "--percent may only be specified during package installation"
msgstr ""
-#: ../rpm.c:958
+#: ../rpm.c:960
msgid "--replacefiles may only be specified during package installation"
msgstr ""
-#: ../rpm.c:962
+#: ../rpm.c:964
msgid "--replacepkgs may only be specified during package installation"
msgstr ""
-#: ../rpm.c:966
+#: ../rpm.c:968
msgid "--excludedocs may only be specified during package installation"
msgstr ""
-#: ../rpm.c:970
+#: ../rpm.c:972
msgid "--includedocs may only be specified during package installation"
msgstr ""
-#: ../rpm.c:974
+#: ../rpm.c:976
msgid "only one of --excludedocs and --includedocs may be specified"
msgstr ""
-#: ../rpm.c:978
+#: ../rpm.c:980
msgid "--ignorearch may only be specified during package installation"
msgstr ""
-#: ../rpm.c:982
+#: ../rpm.c:984
msgid "--ignoreos may only be specified during package installation"
msgstr ""
-#: ../rpm.c:986
+#: ../rpm.c:988
msgid "--allmatches may only be specified during package erasure"
msgstr ""
-#: ../rpm.c:990
+#: ../rpm.c:992
msgid "--allfiles may only be specified during package installation"
msgstr ""
-#: ../rpm.c:994
+#: ../rpm.c:996
msgid "--justdb may only be specified during package installation and erasure"
msgstr ""
-#: ../rpm.c:999
+#: ../rpm.c:1001
msgid ""
"--noscripts may only be specified during package installation, erasure, and "
"verification"
msgstr ""
-#: ../rpm.c:1003
+#: ../rpm.c:1005
msgid ""
"--notriggers may only be specified during package installation, erasure, and "
"verification"
msgstr ""
-#: ../rpm.c:1008
+#: ../rpm.c:1010
msgid ""
"--nodeps may only be specified during package installation, erasure, and "
"verification"
msgstr ""
-#: ../rpm.c:1012
+#: ../rpm.c:1014
msgid "--nofiles may only be specified during package verification"
msgstr ""
-#: ../rpm.c:1017
+#: ../rpm.c:1019
msgid ""
"--test may only be specified during package installation, erasure, and "
"building"
msgstr ""
-#: ../rpm.c:1022
+#: ../rpm.c:1024
msgid ""
"--root (-r) may only be specified during installation, erasure, querying, "
"and database rebuilds"
msgstr ""
-#: ../rpm.c:1027
+#: ../rpm.c:1029
msgid "arguments to --root (-r) must begin with a /"
msgstr ""
-#: ../rpm.c:1030
+#: ../rpm.c:1032
msgid "--clean may only be used with -b and -t"
msgstr ""
-#: ../rpm.c:1033
+#: ../rpm.c:1035
msgid "--rmsource may only be used with -b and -t"
msgstr ""
-#: ../rpm.c:1036
+#: ../rpm.c:1038
msgid "--short-circuit may only be used during package building"
msgstr ""
-#: ../rpm.c:1040
+#: ../rpm.c:1042
msgid "--short-circuit may only be used with -bc, -bi, -bs, -tc -ti, or -ts"
msgstr ""
-#: ../rpm.c:1045
+#: ../rpm.c:1047
msgid "--oldpackage may only be used during upgrades"
msgstr ""
-#: ../rpm.c:1050
+#: ../rpm.c:1052
msgid ""
"ftp options can only be used during package queries, installs, and upgrades"
msgstr ""
-#: ../rpm.c:1057
+#: ../rpm.c:1059
msgid "--nopgp may only be used during signature checking"
msgstr ""
-#: ../rpm.c:1060
+#: ../rpm.c:1062
msgid ""
"--nopgp may only be used during signature checking and package verification"
msgstr ""
-#: ../rpm.c:1073
+#: ../rpm.c:1075
msgid "Pass phrase check failed\n"
msgstr ""
-#: ../rpm.c:1076
+#: ../rpm.c:1078
msgid "Pass phrase is good.\n"
msgstr ""
-#: ../rpm.c:1088
+#: ../rpm.c:1090
msgid "--sign may only be used during package building"
msgstr ""
-#: ../rpm.c:1103
+#: ../rpm.c:1105
msgid "exec failed\n"
msgstr ""
-#: ../rpm.c:1122
+#: ../rpm.c:1124
msgid "unexpected arguments to --querytags "
msgstr ""
-#: ../rpm.c:1133
+#: ../rpm.c:1135
msgid "no packages given for signature check"
msgstr ""
-#: ../rpm.c:1140
+#: ../rpm.c:1142
msgid "no packages given for signing"
msgstr ""
-#: ../rpm.c:1149
+#: ../rpm.c:1151
msgid "no packages files given for rebuild"
msgstr ""
-#: ../rpm.c:1212
+#: ../rpm.c:1214
msgid "no spec files given for build"
msgstr ""
-#: ../rpm.c:1214
+#: ../rpm.c:1216
msgid "no tar files given for build"
msgstr ""
-#: ../rpm.c:1227
+#: ../rpm.c:1229
msgid "no packages given for uninstall"
msgstr ""
-#: ../rpm.c:1267
+#: ../rpm.c:1269
msgid "no packages given for install"
msgstr ""
-#: ../rpm.c:1289
+#: ../rpm.c:1291
msgid "extra arguments given for query of all packages"
msgstr ""
-#: ../rpm.c:1295
+#: ../rpm.c:1297
msgid "no arguments given for query"
msgstr ""
-#: ../rpm.c:1313
+#: ../rpm.c:1315
msgid "no arguments given for verify"
msgstr ""
@@ -1467,13 +1467,13 @@ msgstr ""
msgid "syntax error in expression"
msgstr ""
-#: ../build/files.c:203
+#: ../build/files.c:202
#, c-format
msgid "TIMECHECK failure: %s\n"
msgstr ""
-#: ../build/files.c:232 ../build/files.c:244 ../build/files.c:316
-#: ../build/files.c:328 ../build/files.c:355
+#: ../build/files.c:230 ../build/files.c:242 ../build/files.c:315
+#: ../build/files.c:327 ../build/files.c:354
#, c-format
msgid "Bad %s() syntax: %s"
msgstr ""
@@ -1483,155 +1483,155 @@ msgstr ""
msgid "Invalid %s token: %s"
msgstr ""
-#: ../build/files.c:339
+#: ../build/files.c:338
msgid "No files after %%defattr(): %s"
msgstr ""
-#: ../build/files.c:367
+#: ../build/files.c:366
#, c-format
msgid "Bad %s() mode spec: %s"
msgstr ""
-#: ../build/files.c:385
+#: ../build/files.c:384
#, c-format
msgid "Bad %s() dirmode spec: %s"
msgstr ""
-#: ../build/files.c:440
+#: ../build/files.c:439
msgid "Bad %%config() syntax: %s"
msgstr ""
-#: ../build/files.c:458
+#: ../build/files.c:457
msgid "Invalid %%config token: %s"
msgstr ""
-#: ../build/files.c:481 ../build/files.c:493 ../build/files.c:506
+#: ../build/files.c:480 ../build/files.c:492 ../build/files.c:505
msgid "Bad %%lang() syntax: %s"
msgstr ""
-#: ../build/files.c:512
+#: ../build/files.c:511
msgid "%%lang() entries are 2 characters: %s"
msgstr ""
-#: ../build/files.c:518
+#: ../build/files.c:517
msgid "Only one entry in %%lang(): %s"
msgstr ""
-#: ../build/files.c:608
+#: ../build/files.c:607
msgid "Hit limit for %%docdir"
msgstr ""
-#: ../build/files.c:614
+#: ../build/files.c:613
msgid "Only one arg for %%docdir"
msgstr ""
-#: ../build/files.c:640
+#: ../build/files.c:639
#, c-format
msgid "Two files on one line: %s"
msgstr ""
-#: ../build/files.c:653
+#: ../build/files.c:652
#, c-format
msgid "File must begin with \"/\": %s"
msgstr ""
-#: ../build/files.c:665
+#: ../build/files.c:664
msgid "Can't mix special %%doc with other forms: %s"
msgstr ""
-#: ../build/files.c:747
+#: ../build/files.c:744
#, c-format
msgid "File listed twice: %s"
msgstr ""
-#: ../build/files.c:906
+#: ../build/files.c:896
#, c-format
msgid "File doesn't match prefix (%s): %s"
msgstr ""
-#: ../build/files.c:916 ../build/files.c:1033
+#: ../build/files.c:906 ../build/files.c:1026
#, c-format
msgid "File not found: %s"
msgstr ""
-#: ../build/files.c:961
+#: ../build/files.c:953
#, c-format
msgid "Bad owner/group: %s\n"
msgstr ""
-#: ../build/files.c:966
+#: ../build/files.c:958
#, c-format
msgid "File %d: %s\n"
msgstr ""
-#: ../build/files.c:1017
+#: ../build/files.c:1010
#, c-format
msgid "File needs leading \"/\": %s"
msgstr ""
-#: ../build/files.c:1077
+#: ../build/files.c:1068
msgid "Could not open %%files file: %s"
msgstr ""
-#: ../build/files.c:1083 ../build/pack.c:451
+#: ../build/files.c:1074 ../build/pack.c:451
#, c-format
msgid "line: %s"
msgstr ""
-#: ../build/files.c:1410 ../build/parsePrep.c:40
+#: ../build/files.c:1392 ../build/parsePrep.c:40
#, c-format
msgid "Bad owner/group: %s"
msgstr ""
-#: ../build/files.c:1465
+#: ../build/files.c:1446
#, c-format
msgid "Couldn't exec %s"
msgstr ""
-#: ../build/files.c:1469
+#: ../build/files.c:1450
#, c-format
msgid "Couldn't fork %s"
msgstr ""
-#: ../build/files.c:1519
+#: ../build/files.c:1500
#, c-format
msgid "%s failed"
msgstr ""
-#: ../build/files.c:1523
+#: ../build/files.c:1504
#, c-format
msgid "failed to write all data to %s"
msgstr ""
-#: ../build/files.c:1557
+#: ../build/files.c:1538
msgid "Finding provides...\n"
msgstr ""
-#: ../build/files.c:1564
+#: ../build/files.c:1545
msgid "Failed to find provides"
msgstr ""
-#: ../build/files.c:1584
+#: ../build/files.c:1564
msgid "Finding requires...\n"
msgstr ""
-#: ../build/files.c:1591
+#: ../build/files.c:1571
msgid "Failed to find requires"
msgstr ""
-#: ../build/files.c:1626
+#: ../build/files.c:1605
msgid "Provides:"
msgstr ""
-#: ../build/files.c:1644
+#: ../build/files.c:1620
msgid "Prereqs:"
msgstr ""
-#: ../build/files.c:1658
+#: ../build/files.c:1632
msgid "Requires:"
msgstr ""
-#: ../build/files.c:1683
+#: ../build/files.c:1656
#, c-format
msgid "Processing files: %s\n"
msgstr ""
diff --git a/popt/po/popt.pot b/popt/po/popt.pot
index a23c3beba..f9857f95c 100644
--- a/popt/po/popt.pot
+++ b/popt/po/popt.pot
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 1998-11-19 18:16-0500\n"
+"POT-Creation-Date: 1998-11-23 17:24-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"
diff --git a/rpm.c b/rpm.c
index ade952b11..5e2488f6a 100755
--- a/rpm.c
+++ b/rpm.c
@@ -72,6 +72,7 @@ static int shortCircuit;
static int showrc;
static int signIt;
static int test;
+static int useCatalog;
static int rpm_version;
@@ -79,9 +80,10 @@ static struct rpmQueryArguments queryArgs;
/* the structure describing the options we take and the defaults */
static struct poptOption optionsTable[] = {
{ "addsign", '\0', 0, 0, GETOPT_ADDSIGN, NULL, NULL},
+/* all and allmatches both using 'a' is dumb */
{ "all", 'a', 0, 0, 'a', NULL, NULL},
{ "allfiles", '\0', 0, &allFiles, 0, NULL, NULL},
- { "allmatches", 'a', 0, &allMatches, 0, NULL, NULL},
+ { "allmatches", '\0', 0, &allMatches, 0, NULL, NULL},
{ "badreloc", '\0', 0, &badReloc, 0, NULL, NULL},
{ "build", 'b', POPT_ARG_STRING, 0, 'b', NULL, NULL},
{ "buildarch", '\0', POPT_ARG_STRING, &arch, GETOPT_BUILDARCH, NULL, NULL},
@@ -139,6 +141,7 @@ static struct poptOption optionsTable[] = {
{ "timecheck", '\0', POPT_ARG_STRING, 0, GETOPT_TIMECHECK, NULL, NULL},
{ "upgrade", 'U', 0, 0, 'U', NULL, NULL},
{ "uninstall", 'u', 0, 0, 'u', NULL, NULL},
+ { "usecatalog", '\0', 0, &useCatalog, 0, NULL, NULL},
{ "verbose", 'v', 0, 0, 'v', NULL, NULL},
{ "verify", 'V', 0, 0, 'V', NULL, NULL},
{ NULL, 'y', 0, 0, 'V', NULL, NULL},
@@ -151,7 +154,6 @@ static struct poptOption optionsTable[] = {
};
-
static void argerror(char * desc);
static void argerror(char * desc) {