Date: Sat, 5 Jan 2008 18:06:02 GMT From: Garrett Cooper <gcooper@FreeBSD.org> To: freebsd-gnats-submit@FreeBSD.org Subject: misc/119368: [PATCH] pkg_add(1) doesn't keep dependent packages with -K flag Message-ID: <200801051806.m05I62Xb006020@www.freebsd.org> Resent-Message-ID: <200801051810.m05IA1nH019956@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 119368 >Category: misc >Synopsis: [PATCH] pkg_add(1) doesn't keep dependent packages with -K flag >Confidential: no >Severity: non-critical >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sat Jan 05 18:10:01 UTC 2008 >Closed-Date: >Last-Modified: >Originator: Garrett Cooper >Release: Affects FreeBSD 4.x~5.x+ >Organization: n/a >Environment: n/a >Description: pkg_add(1) in its current form doesn't keep The 'bug' is a usage bug, and is solved using the following patch: <http://students.washington.edu/youshi10/posted/pkg_add_keep_flag_prop.patch>. The patch was originally requested by Maslan [1], and due to lack of feedback a PR wasn't filed. This trivial patch has been tested and is functionally correct, as noted by Jason C Wells [2]. Please note that the link above will only be available until March~April 2008 as I have graduated and my student account at the University of Washington will expire then. 1. hackers@ discussion thread: <http://lists.freebsd.org/pipermail/freebsd-hackers/2007-November/022133.html>. 2. ports@ discussion thread: <http://lists.freebsd.org/pipermail/freebsd-ports/2008-January/046019.html>. >How-To-Repeat: n/a >Fix: See link/enclosed patch noted. Patch attached with submission follows: --- add/perform.c 2007-11-09 18:46:02.000000000 -0800 +++ add/perform.c.old 2007-11-09 18:44:10.000000000 -0800 @@ -343,7 +343,7 @@ if (!Force) ++code; } - else if (vsystem("(pwd; /bin/cat +CONTENTS) | %s %s %s %s -S", PkgAddCmd, Verbose ? "-v" : "", PrefixRecursive ? prefixArg : "", KeepPackage ? "-K" : "")) { + else if (vsystem("(pwd; /bin/cat +CONTENTS) | %s %s %s -S", PkgAddCmd, Verbose ? "-v" : "", PrefixRecursive ? prefixArg : "")) { warnx("pkg_add of dependency '%s' failed%s", p->name, Force ? " (proceeding anyway)" : "!"); if (!Force) >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200801051806.m05I62Xb006020>