[bind10-dev] layout of build system
Jeremy C. Reed
jreed at isc.org
Fri Oct 2 13:14:25 UTC 2009
As discussed on call yesterday, we "need to decide on layout of build
system, headers go here, libraries go there, and so on"
Here is an idea. If this is an extracted tarball, it would be liked
bind10-A.B.C (version) instead of "bind10".
Note this doesn't distinguish or categories by languages used.
bind10/
README
INSTALL
(no other docs here -- keep under doc and in source tree)
Makefile.am
configure.ac
bind10/doc/
generated user and developer documents, ready to read and use
(plain text, html, and/or pdf)
bind10/src/
bind10/src/doc/
Makefile.am
source for user documents, including doc build scripts
and documentation on how to build docs (others too)
and styleguide and instructions for writing and maintaining docs
(no man pages here)
bind10/src/lib/
source for libraries
Makefile.am
documentation and design decisions
source for manual pages
all kept in sub-directories per specific libraries, such as:
bind10/src/lib/foo/
bind10/src/lib/CC
bind10/src/lib/dnsmessage
bind10/src/lib/datasource (abstract later?)
bind10/src/lib/datasource/memory (in memory data source)
(or bind10/src/lib/memorydatasource)
bind10/src/lib/datasource/sql
(or bind10/src/lib/sqldatasource)
bind10/src/bin/
source for executables
Makefile.am
documentation and design decisions
source for manual pages
these are kept in sub-directories per tool, for example:
bind10/src/bin/bar/
bind10/src/bin/boss
bind10/src/bin/statsd
bind10/src/libexec/
source for tools that are ran by other processes
Makefile.am
human doesn't run directly, e.g., postfix says:
foo: fatal: do not run this command by hand
documentation and design decisions
source for manual pages
also these are in sub-directories, for example:
bind10/src/libexec/baz/
bind10/src/libexec/auth/
Also this doesn't include contributed code nor dependency code. (My
preference is, even if we have some specific need for some outside code,
that we don't attempt to continually maintain it on our own, in our
tree.)
More information about the bind10-dev
mailing list