Re: Makefile-ish init and ideas
I suggest that you take a look at Richard Gooch's new init for Linux .
This is a short excerpt from the description:
The solution we came up with is simple yet powerful. There is no
master script which orchestrates everything. It's all done by init(8)
and need(8) which provide the mechanism. The master script (which my
old boot scripts have, and which SysV also has, despite their attempts
to modularise), is broken into a bunch of smaller mini scripts.
The mini scripts are kept in /sbin/init.d and init(8) runs all of
them, in random order. Ordering of the mini scripts is controlled by
the scripts themselves. Each script runs any other scripts it depends
on, using the need(8) programme which ensures that a script is only
run once. It doesn't matter which order init(8) starts running the
scripts, it all magically sorts itself out
On Fri, Aug 11, 2000 at 01:07:10AM -0400, Igor Khavkine wrote:
> While thinking about the proposed idea for a makefile-ish like init program
> for the Hurd, an interesting idea crossed my mind.
> make has been around for a while and has grown into quite a beast in that
> time. Certain inherent complexities in make have spawned numerous efforts like
> automake/autoconf, imake, share Makeconf files, etc. in order to cope
> with large and complex projects. The Makefiles generated by these tools
> are often quite obscure and even unreadable, which adds much to the confusion
> of user and developers.
> However upon short reflection about what make actually does (evaluate certain
> rules and their dependencies and take a definite course of action) it now
> seems to me that make is nothing but a logic programming language. And in that
> case, instead of a complicated Makefile mess, why not use a real logic
> programming language with a simple library for accessing environment
> variables, executing shell commands and checking file timestamps? Prolog
> springs to mind.
> Now, I'm familiar with logic programming more in concept then in practice, so
> I was wondering if anyone is more knowledgeable in this could say if this idea
> is worth persuing. And if so, the exact same approach can be taken for this
> Makefile-ish init idea.
> Also a directly relevant question is whether it's worth considering replacing
> make which might already be old enough to retire. And if Hurd isn't a place
> for innovation, then what is. Another alternative to look at might be the Cons
> project, which touts to be a make replacement, as listed on the GNU software
> page. (http://www.dsmit.com/cons).
Neal H Walfield email@example.com
University of Massachusetts at Lowell firstname.lastname@example.org
Fax: 603-415-3645 Phone: N/A (Nice)
Love is the triumph of imagination over intelligence.
-- H. L. Mencken