Mail Archives: djgpp/2000/01/07/09:45:40
Damian Yerrick wrote:
>
> "Peter Karp" <karpfenteich AT gmx DOT de> wrote:
> >
> > Note that there's a space after and before the :
> > In the second line you have to start with a TAB;
> > spaces will give you an error message.
>
> This is a "known issue" in GNU make. Will this be fixed?
> Or is there a good reason for make not to support spaces?
This won't be ``fixed'', because there are at least two good reasons for such
behavior:
1) The Posix standard requires the leading TAB.
2) Lots of Makefiles out there rely on that feature, and will be instantly
broken if it is changed. For example, take a look at the Makefiles in the X
distribution. You will see lots of stuff like this:
foo = FOO
foobar = FOOBAR
foobarbaz = FOOBARBAZ
etc., you get the idea. These are all variable assignments, which someone
aligned on the equals sign, presumablyly for beauty. If the leading blanks were
to be interpreted as a beginning of a command, all these Makefiles would be
broken.
The latest release of GNU Make v3.78.1 adds a helpful hint to the usual "missing
separator" message by mentioning the possibility of TAB being replaced by 8
spaces. (There's no precompiled DJGPP binary of this version, but people who
cannot wait can download the distribution from the GNU FTP sites which supports
DJGPP out of the box.)
This is all in the FAQ, btw (section 22.17).
- Raw text -