Some free software packages are distributed as
tar files which unpack
in a single directory, these are said to be flat distributions.
Other free software packages have a one level hierarchy of subdirectories, using
for example a subdirectory named doc/ for the Texinfo manual and
man pages, another called lib/ for holding functions meant to
replace or complement C libraries, and a subdirectory src/ for
holding the proper sources for the package. These other distributions
are said to be non-flat.
We cannot say much about flat distributions. A flat
directory structure has the disadvantage of increasing the difficulty
of updating to a new version of GNU
gettext. Also, if you have
many PO files, this could somewhat pollute your single directory.
gettext’s libintl sources consist of C sources, shell
sed scripts and complicated Makefile rules, which don’t
fit well into an existing flat structure. For these reasons, we
recommend to use non-flat approach in this case as well.
Maybe because GNU
gettext itself has a non-flat structure,
we have more experience with this approach, and this is what will be
described in the remaining of this chapter. Some maintainers might
use this as an opportunity to unflatten their package structure.