Date: Mon, 7 Jan 2002 17:38:41 -0500 From: Garance A Drosihn <drosih@rpi.edu> To: Peter Pentchev <roam@ringlet.net>, arch@FreeBSD.ORG Cc: audit@FreeBSD.ORG Subject: Re: make(1) enhancement - an 'environment processor' option Message-ID: <p0510101ab85fcfdc2ad0@[128.113.24.47]> In-Reply-To: <20020106222002.E314@straylight.oblivion.bg> References: <20011225202925.F304@straylight.oblivion.bg> <20020106222002.E314@straylight.oblivion.bg>
next in thread | previous in thread | raw e-mail | index | archive | help
At 10:20 PM +0200 1/6/02, Peter Pentchev wrote: >Hi, > >No feedback on this proposed change to make(1)? :) I saw your earlier message, and even kept it around because I wanted to reply to it. The thing was, I wasn't quite sure what I wanted to say... Basically, I'm not comfortable with this being incorporated into make, although I don't have a specific reason that it should not be done. I guess it's more of "It just doesn't seem right". > > Basically, what it does is remember what variables you want set > > for a specific directory and then hand them in the environment of > > any program you want to run. This may be quite useful for ports, > > especially those with lots of tweakable knobs, like vpopmail or > > MySQL, since it won't let you miss one of those knobs the next > > time you rebuild the port. In the specific case of ports, the 'portupgrade' utility includes a way to keep track of such environment variables. Check the sample in /usr/local/etc/pkgtools.conf.sample if you have portupgrade installed (and it's definitely worth installing). There's also a 'man 5 pkgtools.conf', but it doesn't seem to say much... Here's an excerpt from that file: # MAKE_ARGS: hash # # This is a hash of ports glob => arguments mapping. portupgrade(1) # and portinstall(1) look it up to pick command line arguments to # pass to make(1). You can use wildcards ("ports glob"). If a # port/package matches multiple entries, all the arguments are # joined using the space as separator. # # cf. -m/--make-args of portupgrade(1), ports_glob(1) # # e.g.: # MAKE_ARGS = { # 'databases/mysql323-*' => 'WITH_CHARSET=ujis', # } This doesn't help for the more general case of "any directory", but the ports collection itself seems to be covered pretty well by this. Note that you could also create "extra categories" of ports, and put your own programs in those categories, and have them covered that way... (okay, that's not a perfect solution, but it would work for some things) portupgrade is a very nice package... :-) -- Garance Alistair Drosehn = gad@eclipse.acs.rpi.edu Senior Systems Programmer or gad@freebsd.org Rensselaer Polytechnic Institute or drosih@rpi.edu To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-audit" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?p0510101ab85fcfdc2ad0>