[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Naming: a rose by any other ...
From: |
Boris Kolpackov |
Subject: |
Re: Naming: a rose by any other ... |
Date: |
Fri, 14 Sep 2007 19:38:15 +0000 (UTC) |
User-agent: |
nn/6.7.3 |
"=?UTF-8?Q?Ram=C3=B3n_Garc=C3=ADa?=" <address@hidden> writes:
> I find it too flexible.
It's the first time I see someone complain about this.
> My favorite behaviour would be that the first line after the rule says
> how much spaces (or tabs or whatever) are used for indenting, and any
> following lines with that indentation or more would belong to the
> recipe. In this way, a user who just types spaces instead of tabs
> would see make just working without obscure settings.
Don't you think a user who managed to learn about this new make extension
would also know about the potential tabs/spaces problem? Also I don't
see much difference between what you propose and setting a global
variable that says use spaces instead of tabs in recipes.
> Although this behaviour cannot be the default for backward
> compatibility. But this is issue can be solved. When make detects that
> the user is using spaces instead of tabs, make would warn the user and
> advice to use the correct flag.
Make grammar is not regular enough to allow such detection without
a million of false positives. Consider for example this:
ifeq ($(baz),y)
foo: bar
baz := hello
endif
Also, on a more general note, I think make is too low level for
anyone who cannot overcome the tabs problem. So perhaps you are
trying to solve a problem that does not exist. Or, to put in
another way, tabs is just a first "problem" that you will have
to solve to make GNU make accessible to a wider audience.
Boris