From owner-freebsd-ports@FreeBSD.ORG Fri Jun 11 15:01:25 2010 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9CF481065670 for ; Fri, 11 Jun 2010 15:01:25 +0000 (UTC) (envelope-from roam@ringlet.net) Received: from praag.hoster.bg (praag.hoster.bg [77.77.142.10]) by mx1.freebsd.org (Postfix) with ESMTP id 178648FC1A for ; Fri, 11 Jun 2010 15:01:24 +0000 (UTC) Received: from middenheim.hoster.bg (middenheim.hoster.bg [77.77.142.11]) by praag.hoster.bg (Postfix) with ESMTP id 2201C8C904 for ; Fri, 11 Jun 2010 17:42:03 +0300 (EEST) Received: from waylight.m.ringlet.net (office.hoster.bg [78.90.131.77]) (Authenticated sender: roam@hoster.bg) by mail.hoster.bg (Postfix) with ESMTP id 498515C264 for ; Fri, 11 Jun 2010 17:41:55 +0300 (EEST) Received: from roam (uid 1000) (envelope-from roam@ringlet.net) id 5e8fab by waylight.m.ringlet.net (DragonFly Mail Agent) Fri, 11 Jun 2010 17:41:45 +0300 Date: Fri, 11 Jun 2010 17:41:45 +0300 From: Peter Pentchev To: Greg Larkin Message-ID: <20100611144144.GA4167@waylight.m.ringlet.net> Mail-Followup-To: Greg Larkin , Jesse Smith , freebsd-ports References: <1276264730.2503.20.camel@hp-laptop> <4C12458A.10109@FreeBSD.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="8t9RHnE3ZwKMSgU+" Content-Disposition: inline In-Reply-To: <4C12458A.10109@FreeBSD.org> User-Agent: Mutt/1.5.20 (2009-06-14) X-MailScanner-ID: 498515C264.8C400 X-hoster-MailScanner: Found to be clean X-hoster-MailScanner-SpamCheck: not spam, SpamAssassin (cached, score=0.001, required 10, autolearn=disabled, UNPARSEABLE_RELAY 0.00) X-hoster-MailScanner-From: roam@ringlet.net X-hoster-MailScanner-To: freebsd-ports@freebsd.org X-Spam-Status: No Cc: freebsd-ports , Jesse Smith Subject: Re: Data files and ports X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Jun 2010 15:01:25 -0000 --8t9RHnE3ZwKMSgU+ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jun 11, 2010 at 10:17:46AM -0400, Greg Larkin wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 >=20 > Jesse Smith wrote: > > I'm trying to teach myself how to build a FreeBSD port and, with a lot > > of help from the manual, it's going well. I have a question though > > concerning policy/style. > >=20 > > I'm trying to port a program which is distributed in two separate > > packages from the upstream project. One package contains the executable > > program and the other contains data files. The Data package rarely > > changes. The idea being packaging them together would use up a lot of > > extra bandwidth. > >=20 > > Which brings me to the question: Since the executable relies on the data > > files being in place before it's run, how should I handle that in the > > port? Should I just get the executable to install and let the user > > manually get the data files? Should I create a second port for the data > > package? Or should I find some way of making the executable's makefile > > download and unpack the data package? > >=20 > > My instinct is to create a separate port for the Data package and list > > it as a dependency for the Executable port. I'd appreciate some > > guidance. > >=20 > > Thanks. >=20 > Hi Jesse, >=20 > Welcome to the fray, and I'm glad to hear that you're learning how to > develop FreeBSD ports! >=20 > To answer your question - your port Makefile can download multiple > distribution files from the upstream download site. For a couple of > examples, see these Makefiles: [snip] All good points, and good examples. However... :) Well, I do believe that if "the Data package rarely changes", then it would be unnecessary not only to distribute it each time as a port's source distfile, but also to include it (unchanged) in different releases of the *packages* that the port builds. Thus, IMHO it would be best to make a separate port for the data file and have the main program (port) depend on it. This would make sure that not only people who build the port "by hand" do not download the data file more often than necessary, but also the people who use packages do not download needlessly big packages for each program update with no data change. Hope that came out clear enough; I know I'm not thinking straight today. G'luck, Peter --=20 Peter Pentchev roam@ringlet.net roam@space.bg roam@FreeBSD.org PGP key: http://people.FreeBSD.org/~roam/roam.key.asc Key fingerprint FDBA FD79 C26F 3C51 C95E DF9E ED18 B68D 1619 4553 --8t9RHnE3ZwKMSgU+ Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) iQIcBAEBCgAGBQJMEksjAAoJEGUe77AlJ98T62kQAL2Nxd9hSJPG7I5iixWgVYzX MEtnkMQhwEOfPi7MckCUiENLQ5hpJhzTWgiLG3/xuhzDnwQZtwxlr3shQuE2eQqN 3bghdjTUr6AupOq3knLcY0/lTSp+OzzAGvP+Hidcfj70sweHqu9yCPmn+NSCaCFY DuIC2r4kArAplyKZykYJw99TxRBj1XofOGQDOCyIuMUv/oE8Dmjk73GBPTFAcIve 7xr6KPehhAphlmq8UuEZt6Z0Uv2X6sXn3zYRJAS0qPeaDuvMBLP0A7foeLO4GSal 0L5oVxBpU+B9E0EovnBIZWzGCYqCSvKCE72w+2xgZnJuT3Q4zNfLj1z6vTXh/5vc w0XMpoNfROZp3mO8xR12d7PEaYujNcAFRSac4uidSgzBOycw1YQJDDkFkMB2zf1I AhOEN67yUr5ty2wUC3kwnNY2/G1wR47zMRjkkXdO+rm+WoMg8cZVN0DA12WQcv82 //OvNqbz4pZPiQdCOciXU/DcvAxwMpvS0msTMbIKKc2v7sBj65nfnrkYZhXUg1ru YGKr6+mBuPRskkVayFII+E0q+wPFlpsuSuilRh5k3UnzmOdE99bZnnU6GLDXXw11 QDLSkdgpCYIl8fshkT330z1y5kOtHBFFpfJGsB7QmTCLc8y/siW+mIJgSyQFB3RV M/NofDPg/i55Y4ugtne1 =Y1FY -----END PGP SIGNATURE----- --8t9RHnE3ZwKMSgU+--