This is the documentation of version 1.18. You may want the documentation of the stable version (2.0) or of the well tested 2.1 development snapshot or our homepage.
Unexpected Features and Limitations
- Makepp occasionally trips a bug in perl that causes a
core dump. I don't know why this happens, or what causes it,
but you can always run makepp again with the same
arguments, and it will get past the point where it crashed
You may want to look through the section on incompatibilities for unexpected features.
If you find a bug or an undesirable feature, please feel free to
send me a note.
Makepp also has a few quirks that might be a bit surprising.
Makepp's implementation of repositories has
some limitations that might not be obvious. See the
repositories for more details.
** wildcard won't see directories
that begin with a period (e.g.,
.libs). This is
normally what you want, but might be occasionally surprising.
makepp's automatic dependency scanner does not know
about preprocessor conditionals. Thus if you do something like
makepp will assume both
file2.h are dependencies. This will usually not be
a problem--it will just trigger rebuilds more often than
necessary--unless one of the files doesn't exist. In this case,
makepp will give a warning message (but will still
compile as usual). If, however, you use the system include
then makepp won't complain about a missing file because
it assumes it's buried in some system include directory that it
doesn't know about.
Makepp does not like it if you create new soft links to
existing directories during the course of the build. It
shouldn't get confused if you create new directories; just don't
create new soft links to existing directories.
Makepp is slower than make. This is mostly because it's
doing a lot more work. You can speed it up somewhat by turning off logging,
but because it is doing a lot more comparisons, it will always
Makepp can use a surprisingly large amount of memory.
This is (a) because it's written in perl, and perl is a memory
hog; (b) because of makepp's algorithm, it simply has to
store a lot more information about many more files than make
does. But if someone wants to pay to have the core of it
rewritten in C++, then it could be somewhat faster and a lot
Table of contents
Next (release notes)
Last modified: Mon Feb 19 20:36:29 PST 2001