From owner-freebsd-ports@FreeBSD.ORG Fri Dec 12 10:38:52 2008 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 9F4031065670 for ; Fri, 12 Dec 2008 10:38:52 +0000 (UTC) (envelope-from amdmi3@amdmi3.ru) Received: from smtp.timeweb.ru (smtp.timeweb.ru [217.170.79.85]) by mx1.freebsd.org (Postfix) with ESMTP id 1BB698FC16 for ; Fri, 12 Dec 2008 10:38:52 +0000 (UTC) (envelope-from amdmi3@amdmi3.ru) Received: from [213.148.20.85] (helo=hive.panopticon) by smtp.timeweb.ru with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from ) id 1LB5Q4-00005A-CT; Fri, 12 Dec 2008 13:38:52 +0300 Received: from hades.panopticon (hades.panopticon [192.168.0.32]) by hive.panopticon (Postfix) with ESMTP id E80451E92; Fri, 12 Dec 2008 13:37:38 +0300 (MSK) Received: by hades.panopticon (Postfix, from userid 1000) id BCB451702D; Fri, 12 Dec 2008 13:38:27 +0300 (MSK) Date: Fri, 12 Dec 2008 13:38:27 +0300 From: Dmitry Marakasov To: Ashish Shukla =?utf-8?B?4KSG4KS24KWA4KS3IOCktuClgeCkleCljeCksg==?= Message-ID: <20081212103827.GD7422@hades.panopticon> References: <20081209222042.GC29817@hades.panopticon> <8763lsi10m.fsf@chateau.d.lf> <20081210181125.GA86341@hades.panopticon> <87zlj3heor.fsf@chateau.d.lf> <20081210223522.GA6367@hades.panopticon> <87vdtrhb6r.fsf@chateau.d.lf> <20081211082325.GA6167@hades.panopticon> <6161f3180812110156n43803ee9s88443b6777bd0743@mail.gmail.com> <20081211113556.GA7422@hades.panopticon> <87vdtqls4g.fsf@chateau.d.lf> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <87vdtqls4g.fsf@chateau.d.lf> User-Agent: Mutt/1.5.18 (2008-05-17) Content-Transfer-Encoding: quoted-printable Cc: "Andrew W. Nosenko" , FreeBSD Ports Mailing List Subject: Re: [PROPOSAL] Ports using SCM repositories as source instead of distfiles 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, 12 Dec 2008 10:38:52 -0000 * Ashish Shukla =E0=A4=86=E0=A4=B6=E0=A5=80=E0=A4=B7 =E0=A4=B6=E0=A5=81=E0= =A4=95=E0=A5=8D=E0=A4=B2 (wahjava.ml@gmail.com) wrote: > Yes, that is why I mentioned having a variable which enables this > behaviour, by default it is disabled. I mean ports which are okay > with providing static plists are fine, but ports which aren't > predictable with what files are going to installed can go with this > dynamic plist support, where ports infrastructure will only help in > generating a plist from an already setup directory tree > (/var/tmp/${portname}), now it is maintainer's responsibility to make > sure that all files will be installed in /var/tmp/${portname} which > {s,}he can do by either using 'make install DESTDIR=3D/var/tmp/${portna= me}' > or something similar if supported by port's upstream or {s,}he has to > add installation commands in ports Makefile rather than going with > upstream's way of installing things. I really don't see any point in supporting this only in individual ports. If you can do something, you expect (and should be able) to do it with any and all ports. > > See > > http://lists.freebsd.org/pipermail/freebsd-ports/2006-August/034745.h= tml > > those are some real examples of complexity and resulting confusion, > > from first variant of DESTDIR support in ports. Now, when we have > > one DESTDIR implementation, adding another will likely make some head= s > > explode, just think of variable naming. >=20 > The DESTDIR issue in above link refers to the DESTDIR support[1] presen= t in > FreeBSD Ports system, and the one which I'm talking about has nothing t= o > do with that. Yes, I just meant that that'll bring too much confusion. > > I'll remind that what we are talking about is automatic plist generat= ion, > > and I think that this can be done without any hacks like installing a > > port into intermediate directory before real installation just by > > logging all writes to the filesystem.=20 >=20 > Yes that intermediate directory is what DESTDIR is. And if you're > capable of logging all writes in the DESTDIR, then its cool, but No. If there's DESTDIR, you don't need to log writes to it, as you can just use `find` to see what's there after installation as in quote below. The idea is that if we log all writes to the fulesystem during port installation, we don't need intermediate directory at all. > remember you're also talking about installing port in an intermediate > directory. After the port gets installed in intermediate directory, the > plist can be generated with your filesystem writes logger component or = a > well tested version of following simply command line: >=20 > % find /var/tmp/${PORTNAME} -type f |sed -e \ > "s[/var/tmp/${PORTNAME}${PREFIX}/[[g" > plist.tmp --=20 Dmitry Marakasov . 55B5 0596 FF1E 8D84 5F56 9510 D35A 80DD F9D2 F77D amdmi3@amdmi3.ru ..: jabber: amdmi3@jabber.ru http://www.amdmi3.ru