tech-userlevel archive

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

asynchronous make(1), anyone?

You can save a programmer who is in an edit-compile-test loop some
effort at the keyboard if, as soon as they write a new version of some
source file, the computer automatically recompiles their program.

One way to automate that is to run make(1) in a tight loop,

        while true; do
                make <targets>

but I think that to do that fast enough that the programmer does not
have to wait very often for the computer, you would have to be very
fast, and the computer will waste a lot of energy re-running make(1).

How hard would it be to make make(1) sleep until any one of its targets
was older than its sources, build out-of-date targets, and repeat?  This
may be a good application for kqueue(2)'s EVFILT_VNODE filter?

Any volunteers to make it so?


David Young    Urbana, IL    (217) 721-9981

Home | Main Index | Thread Index | Old Index