50 lines
1.4 KiB
Diff
50 lines
1.4 KiB
Diff
--- ./lib/depends.c.no-dirname-dep 2007-02-28 23:19:55.821603774 +0100
|
|
+++ ./lib/depends.c 2007-02-28 23:21:23.838251442 +0100
|
|
@@ -53,6 +53,9 @@ const char *rpmEVR = VERSION;
|
|
/*@unchecked@*/
|
|
int rpmFLAGS = RPMSENSE_EQUAL;
|
|
|
|
+int no_dirname_deps = 1;
|
|
+int no_symlink_deps = 1;
|
|
+
|
|
/**
|
|
* Compare removed package instances (qsort/bsearch).
|
|
* @param a 1st instance address
|
|
@@ -951,6 +954,8 @@ static int checkPackageDeps(rpmts ts, co
|
|
}
|
|
}
|
|
|
|
+ if (!no_dirname_deps) {
|
|
+
|
|
dirnames = rpmdsInit(dirnames);
|
|
if (dirnames != NULL)
|
|
while (!ourrc && rpmdsNext(dirnames) >= 0) {
|
|
@@ -992,7 +997,9 @@ static int checkPackageDeps(rpmts ts, co
|
|
/*@switchbreak@*/ break;
|
|
}
|
|
}
|
|
+ }
|
|
|
|
+ if (!no_symlink_deps) {
|
|
linktos = rpmdsInit(linktos);
|
|
if (linktos != NULL)
|
|
while (!ourrc && rpmdsNext(linktos) >= 0) {
|
|
@@ -1010,6 +1017,7 @@ static int checkPackageDeps(rpmts ts, co
|
|
dscolor = rpmdsColor(linktos);
|
|
if (tscolor && dscolor && !(tscolor & dscolor))
|
|
continue;
|
|
+ }
|
|
|
|
rc = unsatisfiedDepend(ts, linktos, adding);
|
|
|
|
@@ -2058,6 +2066,9 @@ int rpmtsCheck(rpmts ts)
|
|
int xx;
|
|
int rc;
|
|
|
|
+ no_dirname_deps = rpmExpandNumeric("%{?_check_dirnames_deps:0}%{?!_check_dirnames_deps:1}");
|
|
+ no_symlink_deps = rpmExpandNumeric("%{?_check_symlink_deps:0}%{?!_check_symlink_deps:1}");
|
|
+
|
|
(void) rpmswEnter(rpmtsOp(ts, RPMTS_OP_CHECK), 0);
|
|
|
|
/* Do lazy, readonly, open of rpm database. */
|