Dear GNUrus,

Wouldn't it be nice if GNU make had:
1) lockable (immutable) variables
        SRC := /foo/bar
        lock SRC
        SRC := /ram/beau  <-- error!
        (Should there be a matching 'unlock'?  I dunno.)

2) locally scoped variables
        I know, this means scoping.  My selfish interest:  One Big Make with
a project of 1000+ source files in 50+ directories upon 5 different
platforms (HP/UX, AIX, SunOS, Linux, WinNT).  How to implement:  I dunno.

3) transformational subroutines, by name (in addition to implicit
transformation steps)
        Note:  I know the "FOO = magic $@" deferred macros go a long way
towards this behavior.

4) additional support for .PHONY types of actions (or triggers) via simpler
syntax
        on 'clean' { rm foo.o; }
        on 'clean' { rm bar.o; }
        (ignore my stupid pseudo syntax)

        ...as an alternative to...
        clean : rm_foo.o
        clean : rm_bar.o
        rm_foo.o :
                rm foo.o
        rm_bar.o :
                rm bar.o

5) some sort of namespaces (sort of #2-ish from above, but different)
        This would allow include.mk files to give their own self-contained
actions without concern of the bigger make.  Once again, my own selfish
interests.

Food for thought.

Sincerely (with *lots* of respect),

John Love-Jensen

Reply via email to