From owner-freebsd-ports Tue Mar 12 0:49:52 2002 Delivered-To: freebsd-ports@freebsd.org Received: from snipe.prod.itd.earthlink.net (snipe.mail.pas.earthlink.net [207.217.120.62]) by hub.freebsd.org (Postfix) with ESMTP id 13A8B37B402; Tue, 12 Mar 2002 00:49:49 -0800 (PST) Received: from sdn-ar-007dcwashp260.dialsprint.net ([63.178.90.150] helo=moo.holy.cow) by snipe.prod.itd.earthlink.net with esmtp (Exim 3.33 #1) id 16khye-0006B7-00; Tue, 12 Mar 2002 00:49:48 -0800 Received: by moo.holy.cow (Postfix, from userid 1001) id A4CF950BDA; Tue, 12 Mar 2002 03:51:04 -0500 (EST) Date: Tue, 12 Mar 2002 03:51:04 -0500 From: parv To: Kris Kennaway , freebsd-gnats-submit@FreeBSD.org Cc: f-ports Subject: Re: ports/35767: make_index script does not deal with symlinked PORTSDIR Message-ID: <20020312085104.GA59773@moo.holy.cow> Mail-Followup-To: Kris Kennaway , freebsd-gnats-submit@FreeBSD.org, f-ports Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Sender: owner-freebsd-ports@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org kris k. wrote on 11 Mar 2002 13:35:18 -0800 thusly... > ... > Having /usr/ports hardcoded is useful because the indexes > generated by this script need to be 'canonical' (i.e. I want to > use this script to generate official indexes to commit to the > repo). Well, actually I can see that this might still be useful, > but it's not the problem I was attempting to solve :) oops. i am sorry for sending otherwise useless patch as i didn't understand the situation on the first try. obviously. after kris's explanation, situation is clearer. currently i am working on to make the current version of make_index to run flawlessly w/ warnings & "use strict;" pragma; i am almost done. > The problem is that the script fails if PORTSDIR is a path which > contains a symlink, because in 'make describe' it doesn't get > expanded to the realpath, whereas it does in the make_index > script, so you get two paths which don't match and the script > fails. ... i have /usr/ports symlinked to /source/ports; after temporarily commenting out PORTSDIR in /etc/make.conf, i get .... # cd /usr/ports # make -d v describe | head -400 | fgrep 'Global:PORTSDIR' | sort -u Global:PORTSDIR = /usr/ports # make describe | head -3 ===> archivers ===> archivers/9e 9e-1.0|/source/ports/archivers/9e|/usr/local|Explode Plan9 archives|/source/ports/archivers/9e/pkg-descr|gehicks@cisco.com|archivers|||http://www.eecs.harvard.edu/~wkj/Software/9e/ ...and you wan to have "/usr/ports" in place of "/source/ports". right? problem seems to be in ports/Mk/bsd.port.mk, describe target around line 3160, variable ${.CURDIR}. if problems appears, to me, to be more related to make magic, i would not be of much help. in other words, if somebody else comes up first w/ the solution for this pr, more power to them. - parv To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message