From owner-freebsd-stable Mon Feb 28 21:30:53 2000 Delivered-To: freebsd-stable@freebsd.org Received: from cx344940-a.meta1.la.home.com (cx344940-a.meta1.la.home.com [24.6.21.74]) by hub.freebsd.org (Postfix) with ESMTP id 2483D37BA5E for ; Mon, 28 Feb 2000 21:30:49 -0800 (PST) (envelope-from conrads@cx344940-a.meta1.la.home.com) Received: (from conrads@localhost) by cx344940-a.meta1.la.home.com (8.9.3/8.9.2) id XAA01384; Mon, 28 Feb 2000 23:30:42 -0600 (CST) (envelope-from conrads) Date: Mon, 28 Feb 2000 23:30:42 -0600 From: Conrad Sabatier To: Gawel Cc: "freebsd-stable@FreeBSD.ORG" Subject: Re: make fetch + dependencies Message-ID: <20000228233042.C659@home.com> References: <38BA81C7.E7FA0940@sim.com.pl> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 1.0.1i In-Reply-To: <38BA81C7.E7FA0940@sim.com.pl>; from gawel@sim.com.pl on Mon, Feb 28, 2000 at 03:10:15PM +0100 Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Mon, Feb 28, 2000 at 03:10:15PM +0100, Gawel wrote: > Hello, > How to make fetch a single port with all dependencies? > (only download a port and and all dependencies ports) > Thanks. There are a couple of targets defined in /usr/ports/Mk/bsd.port.mk that you could use to do this: make build-depends-list make run-depends-list Each of these prints a list of the full pathnames to each of the ports your main port depends on, one per line. You could write a script that would call itself recursively for each listed pathname, fetching all the requisite packages. For example, say you name your script "fetch-all". You cd to the directory of the port you wish to build and run "fetch-all", which does something like the following: -----------snip------------ #!/bin/sh # Fetch the main package make fetch # Fetch all dependencies for d in `make build-depends-list run-depends-list` do cd $d && fetch-all done -----------snip------------ This is, of course, a very simplistic version of such a script, in that it would most likely do a lot of unnecessary fetching of packages for ports that are already installed. But just to give you an idea of how it might be done. Hope this helps. By the way, why did you choose the stable list to ask this question in? -- Conrad Sabatier http://members.home.net/conrads/ ICQ# 1147270 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message