bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: make cannot handle prerequisites that contain a colon


From: Markus Kuhn
Subject: Re: make cannot handle prerequisites that contain a colon
Date: Wed, 20 Oct 2004 13:18:12 +0100

"Paul D. Smith" wrote on 2004-10-19 19:31 UTC:
> I'm not really sure what would be involved with providing support for
> full UTF-8 character sets in make; I'd have to think about it more.

I believe make works already pretty well with UTF-8 as it is. The only thing
you really need to think about is whether make depends anywhere on the
assumption that

  1 byte = 1 character = 1 terminal cell position

because both of these equalities are true for ASCII and ISO 8859-1,
but not for UTF-8.

Is make using anywhere strlen() to estimate how long a string will
be on the output terminal? I don't think it does any form of
column formatting, or the like.

Does make have any form of regular-expression matching or globbing,
where a sing '.' or '?' is meant to refer to a single character,
not a single byte? In that case, these matching algorithms may
have to become slightly locale dependent.

Does make convert anywhere between uppercase and lowercase characters
or make decisions based on some classification of characters?

Other than that, there is usually no need to support UTF-8 properly.

See

  http://www.cl.cam.ac.uk/~mgk25/unicode.html

and under Linux also "man utf-8" for some introductory information on
the subject.

> The idea I had involves changing escaped special characters like spaces
> into "impossible" byte values in make's internal string representation.
> That way all of make's current manipulation would continue to work
> as-is: when searching for whitespace to break up words for example it
> would not see the "impossible" byte values as whitespace, so it wouldn't
> break on that character.
> 
> Then, at the very last minute before make invokes a commandline, etc. it
> would un-translate the string and replace the impossible bytes with the
> special characters again.
> 
> Of course, there are many details to work out, such as the user
> interface for escaping special characters, exactly when the translation
> back is done, etc.

That sounds at first glance quite feasible to be (but then, I'm not
really familiar with make's internals).

Markus

-- 
Markus Kuhn, Computer Lab, Univ of Cambridge, GB
http://www.cl.cam.ac.uk/~mgk25/ | __oo_O..O_oo__





reply via email to

[Prev in Thread] Current Thread [Next in Thread]