[nycbug-talk] Undefining a variable set in make.conf
Wed Aug 31 02:02:58 EDT 2005
On 8/31/05, Scott Robbins <scottro at nyc.rr.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> On Wed, Aug 31, 2005 at 12:01:35AM -0400, Marc Spitzer wrote:
> > this:
> > .if defined(WITH_RUBY)
> > shoud be this:
> > .if (defined(WITH_RUBY) && (WITH_RUBY == "YES"))
> > or even better:
> > .if (defined(WITH_SUBVERSION_RUBY) && (WITH_SUBVERSION_RUBY == "YES"))
> > file a bugreport, feel free to send in a patch also
> > and my make is very rusty so there might be a syntax issue.
> I was about to post a followup to this. One of the most knowledgeable
> people on the forums posted an answer quite similar to yours, suggesting
> that the original poster send in a PR, though his suggested syntax was a
> bit different, simply adding an .if defined(WITHOUT_RUBY).
I disagree, there is no way to unset a set make variable from the
command line, from what I read in the man page, and that can, and
will, lead to problems. after all on other ports you want ruby.
Now with the WITH_SUBVERSION_RUBY way you have control over the switch
on a per port basis and you can override the defaults with a make -E
VAR=no or some such thing.
> My make is almost non-existant, so I'm not sure which solution would be
> best, though I rather like the && RUBY== "YES" better.
nope too general, from a maintenance POV you *want* to control this on
a per port basis, going foward you will be much happier. You will
have one consistant way to control how the port builds. For some you
want X for others you don't.
I got this from pkgsrc on netbsd.
> Either way, I have my answer which is, that as things are, it would
> involve hacking the Makefile.
I would not call this hacking, trimming perhaps.
"We trained very hard, but it seemed that every time we were beginning to
form into teams we would be reorganized. I was to learn later in life that
we tend to meet any new situation by reorganizing, and a wonderful method it
can be for creating the illusion of progress, while producing confusion,
inefficiency and demoralization."
-Gaius Petronius, 1st Century AD
More information about the talk