From owner-freebsd-ports Thu Mar 2 23:49:54 1995 Return-Path: ports-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.9/8.6.6) id XAA04094 for ports-outgoing; Thu, 2 Mar 1995 23:49:54 -0800 Received: from time.cdrom.com (time.cdrom.com [192.216.223.46]) by freefall.cdrom.com (8.6.9/8.6.6) with ESMTP id XAA04088 for ; Thu, 2 Mar 1995 23:49:53 -0800 Received: (from jkh@localhost) by time.cdrom.com (8.6.10/8.6.9) id XAA02499 for ports@freefall; Thu, 2 Mar 1995 23:49:50 -0800 Date: Thu, 2 Mar 1995 23:49:50 -0800 From: "Jordan K. Hubbard" Message-Id: <199503030749.XAA02499@time.cdrom.com> To: ports@freefall.cdrom.com Subject: Ok, I'm stumped. Sender: ports-owner@FreeBSD.org Precedence: bulk You know the problem - some stupid port keeps blowing up while you're trying to verify a build from the top and it's driving you nuts. Sure, you can take it out of the Makefile but what you'd *really* like to do is just skip over it after you've verified that it doesn't work for the duration of your build session. You don't want to have to modify Makefiles to disable it if you can possibly avoid it. To this end, I set out to try and create a "NO_" variable that would cause the port to be skipped in the same way that IS_INTERACTIVE ports are switched off when BATCH is set. The problem is that I'm kinda stumped on how to do it. Setting a variable called NO_foobar to disable the foobar port is all well and good, but we've got no variable anywhere that defines a port as simply "foobar"! :-( We've got ${DISTNAME} but that's unfortunately often set to things like foobar_11b-20.1 which doesn't make a good shell variable name. Or we've got ${.CURDIR}, but that's set to /usr/ports/blah/bar/foobar. Sigh. What would be neat would be some way of picking off the `entry' in bsd.port.subdir.mk and checking to see if the value of "X${NO_$${ENTRY}}" = "X", but I don't see any easy way of doing the recursive shell variable expansion. Any suggestions? This is where my knowledge of `sh' leaves off! :-( Jordan