diff options
author | hubertf <hubertf@pkgsrc.org> | 2004-01-04 01:49:38 +0000 |
---|---|---|
committer | hubertf <hubertf@pkgsrc.org> | 2004-01-04 01:49:38 +0000 |
commit | 04dec02447563d6f6467b9c482143406c5b67451 (patch) | |
tree | acce3c548221562512cce063c551307d0649b1c2 /pkgtools/pkg_install | |
parent | f4b171fc2d59e340311a2b7e89f197cb61934c3f (diff) | |
download | pkgsrc-04dec02447563d6f6467b9c482143406c5b67451.tar.gz |
In the "quick depends pre-scan", first print all bad matching depends,
then exit (instead printing one conflicting pkg/version on each run).
Diffstat (limited to 'pkgtools/pkg_install')
-rw-r--r-- | pkgtools/pkg_install/files/add/perform.c | 18 | ||||
-rw-r--r-- | pkgtools/pkg_install/files/lib/version.h | 4 |
2 files changed, 13 insertions, 9 deletions
diff --git a/pkgtools/pkg_install/files/add/perform.c b/pkgtools/pkg_install/files/add/perform.c index 7471e65fbc5..3bd555b9d56 100644 --- a/pkgtools/pkg_install/files/add/perform.c +++ b/pkgtools/pkg_install/files/add/perform.c @@ -1,4 +1,4 @@ -/* $NetBSD: perform.c,v 1.13 2003/12/20 04:23:05 grant Exp $ */ +/* $NetBSD: perform.c,v 1.14 2004/01/04 01:49:38 hubertf Exp $ */ #if HAVE_CONFIG_H #include "config.h" @@ -11,7 +11,7 @@ #if 0 static const char *rcsid = "from FreeBSD Id: perform.c,v 1.44 1997/10/13 15:03:46 jkh Exp"; #else -__RCSID("$NetBSD: perform.c,v 1.13 2003/12/20 04:23:05 grant Exp $"); +__RCSID("$NetBSD: perform.c,v 1.14 2004/01/04 01:49:38 hubertf Exp $"); #endif #endif @@ -128,7 +128,7 @@ pkg_do(const char *pkg) char dbdir[FILENAME_MAX]; const char *exact, *extra1; FILE *cfile; - int errc; + int errc, err_prescan; plist_t *p; struct stat sb; struct utsname host_uname; @@ -544,6 +544,7 @@ ignore_replace_depends_check: /* Quick pre-check if any conflicting dependencies are installed * (e.g. version X is installed, but version Y is required) */ + err_prescan=0; for (p = Plist.head; p; p = p->next) { char installed[FILENAME_MAX]; @@ -596,15 +597,18 @@ ignore_replace_depends_check: if (Force) { warnx("Proceeding anyway."); - } else { - warnx("Please resolve this conflict!"); - errc = 1; - goto success; /* close enough */ + } else { + err_prescan++; } } } } } + if (err_prescan > 0) { + warnx("Please resolve this conflict!"); + errc += err_prescan; + goto success; /* close enough */ + } /* Now check the packing list for dependencies */ diff --git a/pkgtools/pkg_install/files/lib/version.h b/pkgtools/pkg_install/files/lib/version.h index 3f64134570c..8e5d496bfe1 100644 --- a/pkgtools/pkg_install/files/lib/version.h +++ b/pkgtools/pkg_install/files/lib/version.h @@ -1,4 +1,4 @@ -/* $NetBSD: version.h,v 1.19 2003/12/20 04:23:05 grant Exp $ */ +/* $NetBSD: version.h,v 1.20 2004/01/04 01:49:38 hubertf Exp $ */ /* * Copyright (c) 2001 Thomas Klausner. All rights reserved. @@ -33,6 +33,6 @@ #ifndef _INST_LIB_VERSION_H_ #define _INST_LIB_VERSION_H_ -#define PKGTOOLS_VERSION "20031220" +#define PKGTOOLS_VERSION "20040104" #endif /* _INST_LIB_VERSION_H_ */ |