char file[1024];
int isdoc;
int isconf;
+ int isspecfile;
int verify_flags;
char *uname; /* reference -- do not free */
char *gname; /* reference -- do not free */
int process_filelist(Header header, struct PackageRec *pr,
StringBuf sb, int *size, char *name,
- char *version, char *release, int type, char *prefix)
+ char *version, char *release, int type,
+ char *prefix, char *specFile)
{
char buf[1024];
char **files, **fp;
fest = malloc(sizeof(struct file_entry));
fest->isdoc = 0;
fest->isconf = 0;
+ if (!strcmp(filename, specFile)) {
+ fest->isspecfile = 1;
+ }
fest->verify_flags = 0; /* XXX - something else? */
stat(filename, &fest->statbuf);
fest->uname = getUname(fest->statbuf.st_uid);
fileFlagsList[c] |= RPMFILE_DOC;
if (fest->isconf)
fileFlagsList[c] |= RPMFILE_CONFIG;
+ if (fest->isspecfile)
+ fileFlagsList[c] |= RPMFILE_SPECFILE;
fileModesList[c] = fest->statbuf.st_mode;
fileRDevsList[c] = fest->statbuf.st_rdev;
p->isdoc = isdoc;
p->isconf = isconf;
+ p->isspecfile = 0; /* source packages are done by hand */
p->verify_flags = verify_flags;
if (getVar(RPMVAR_ROOT)) {
sprintf(fullname, "%s%s", getVar(RPMVAR_ROOT), name);
int process_filelist(Header header, struct PackageRec *pr, StringBuf sb,
int *size, char *name, char *version,
- char *release, int type, char *prefix);
+ char *release, int type, char *prefix, char *specFile);
#endif _FILES_H_