summaryrefslogtreecommitdiff
path: root/build
diff options
context:
space:
mode:
authorroot <devnull@localhost>1996-11-14 21:55:41 +0000
committerroot <devnull@localhost>1996-11-14 21:55:41 +0000
commit35f133a8cb4fbb5be7bfa22488d4a64d81f9e851 (patch)
tree1933b49d9002b604fef04ccd57afeaeb9d1571ac /build
parent468a4386fef259bfff019168f2aeec004fec6614 (diff)
downloadrpm-35f133a8cb4fbb5be7bfa22488d4a64d81f9e851.tar.gz
rpm-35f133a8cb4fbb5be7bfa22488d4a64d81f9e851.tar.bz2
rpm-35f133a8cb4fbb5be7bfa22488d4a64d81f9e851.zip
specFile tagging
CVS patchset: 1161 CVS date: 1996/11/14 21:55:41
Diffstat (limited to 'build')
-rw-r--r--build/files.c10
-rw-r--r--build/files.h2
2 files changed, 10 insertions, 2 deletions
diff --git a/build/files.c b/build/files.c
index 3c8d9f0ca..04a74ca85 100644
--- a/build/files.c
+++ b/build/files.c
@@ -32,6 +32,7 @@ struct file_entry {
char file[1024];
int isdoc;
int isconf;
+ int isspecfile;
int verify_flags;
char *uname; /* reference -- do not free */
char *gname; /* reference -- do not free */
@@ -56,7 +57,8 @@ static int isDoc(char *filename);
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;
@@ -232,6 +234,9 @@ int process_filelist(Header header, struct PackageRec *pr,
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);
@@ -349,6 +354,8 @@ int process_filelist(Header header, struct PackageRec *pr,
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;
@@ -539,6 +546,7 @@ static int add_file(struct file_entry **festack, const char *name,
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);
diff --git a/build/files.h b/build/files.h
index aa06e6679..e9cd63e5f 100644
--- a/build/files.h
+++ b/build/files.h
@@ -7,6 +7,6 @@
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_