summaryrefslogtreecommitdiff
path: root/pkgtools/pkg_install
diff options
context:
space:
mode:
authorrillig <rillig>2007-12-17 09:42:03 +0000
committerrillig <rillig>2007-12-17 09:42:03 +0000
commit23ff903935ccd32328d70215abeb7337841ec5b8 (patch)
tree92cc10eefbb5638d30b892b140d13462b14624f4 /pkgtools/pkg_install
parentb6f6b2510e18ef390b09e1e330c8f2dfdddbb8d5 (diff)
downloadpkgsrc-23ff903935ccd32328d70215abeb7337841ec5b8.tar.gz
Documented struct package_conflict and added a note about the
inefficiency when reading all the +REQUIRED_BY files.
Diffstat (limited to 'pkgtools/pkg_install')
-rw-r--r--pkgtools/pkg_install/files/lib/conflicts.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/pkgtools/pkg_install/files/lib/conflicts.c b/pkgtools/pkg_install/files/lib/conflicts.c
index 3be2d976e14..bffa448c8bf 100644
--- a/pkgtools/pkg_install/files/lib/conflicts.c
+++ b/pkgtools/pkg_install/files/lib/conflicts.c
@@ -1,3 +1,12 @@
+/*
+ * XXX: Reading the +REQUIRED_BY files of all installed packages is
+ * rather slow. Since this check is necessary to avoid conflicting
+ * packages, it should not be removed.
+ *
+ * TODO: Put all the information that is currently in the +REQUIRED_BY
+ * files into one large file or another database.
+ */
+
#if HAVE_CONFIG_H
#include "config.h"
#endif
@@ -11,6 +20,14 @@
#include "dewey.h"
#include "lib.h"
+/**
+ * Data structure to keep the intermediate result of the conflict
+ * search. ''pkgname'' is the package in question. The first
+ * installed package that conflicts is filled into
+ * ''conflicting_pkgname''. The pattern that leads to the conflict is
+ * also filled in to help the user in deciding what to do with the
+ * conflict.
+ */
struct package_conflict {
const char *pkgname;
char **conflicting_pkgname;