summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorewt <devnull@localhost>1996-06-10 17:43:11 +0000
committerewt <devnull@localhost>1996-06-10 17:43:11 +0000
commit83203543e52bb5b57b7f80a70a3bfcbfa6dd2d39 (patch)
tree1c8194a61bf710a37fd6dc415828c0b4c9db84b9 /lib
parentfa630a02d556c9f3f05c29ef3b7a4d82fce7601a (diff)
downloadrpm-83203543e52bb5b57b7f80a70a3bfcbfa6dd2d39.tar.gz
rpm-83203543e52bb5b57b7f80a70a3bfcbfa6dd2d39.tar.bz2
rpm-83203543e52bb5b57b7f80a70a3bfcbfa6dd2d39.zip
added interface for dependency checking
CVS patchset: 636 CVS date: 1996/06/10 17:43:11
Diffstat (limited to 'lib')
-rw-r--r--lib/rpmlib.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/lib/rpmlib.h b/lib/rpmlib.h
index b2c6e2ecd..217dbad15 100644
--- a/lib/rpmlib.h
+++ b/lib/rpmlib.h
@@ -108,7 +108,7 @@ extern const int rpmTagTableSize;
#define REQUIRE_LESS (1 << 1)
#define REQUIRE_GREATER (1 << 2)
#define REQUIRE_EQUAL (1 << 3)
-#define REQUIRE_PROVIDES (1 << 4)
+#define REQUIRE_PROVIDES (1 << 4) /* only used internally by builds */
/* Stuff for maintaining "variables" like SOURCEDIR, BUILDDIR, etc */
@@ -176,6 +176,21 @@ int rpmdbAdd(rpmdb db, Header dbentry);
int rpmdbUpdateRecord(rpmdb db, int secOffset, Header secHeader);
int rpmVerifyFile(char * prefix, Header h, int filenum, int * result);
+typedef struct rpmDependencyCheck * rpmDependencies;
+
+struct rpmDependencyConflict {
+ char * byName, * byVersion, * byRelease;
+ char * needsName, * needsVersion;
+ int needsFlags;
+} ;
+
+rpmDependencies rpmdepDependencies(rpmdb db); /* db may be NULL */
+void rpmdepAddPackage(rpmDependencies rpmdep, Header h);
+void rpmdepRemovePackage(rpmDependencies rpmdep, int dboffset);
+int rpmdepCheck(rpmDependencies rpmdep,
+ struct rpmDependencyConflict ** conflicts, int * numConflicts);
+void rpmdepDone(rpmDependencies rpmdep);
+
int mdfile(char *fn, unsigned char *digest);
#endif