[GRASS-dev] Autoconf 2.13

Ivan Shmakov ivan at theory.asu.ru
Fri Feb 1 07:41:37 EST 2008


>>>>> Glynn Clements <glynn at gclements.plus.com> writes:

 >>> ?  GRASS doesn't use automake, so I'm not sure what you mean
 >>> here. I'm sure if we *were* using automake, we'd also be quite keen
 >>> to move away from it towards something simpler and better! IMHO the
 >>> GRASS build system is refreshingly simple to understand compared to
 >>> other projects that use complex automake, libtool etc.-based
 >>> systems.

 >> Although it became common to blame GNU Autotools for sins of various
 >> sorts, out of my personal experience I could say that it actually
 >> helped me a lot to simplify the build systems for the various
 >> packages I had to build.  (Alas, saying this once again will
 >> probably make me the public enemy number one.)

 >> I had to study the documentation, though.

 > The main problem with automake is that the Makefiles which it
 > generates are utterly illegible to anyone who isn't an automake guru.

	I don't think so.  However, a decent knowledge of both the GNU
	Make advanced features (e. g., VPATH or static pattern rules)
	and the GNU coding standards is necessary.

 > Using high-level tools may decrease the amount of typing,

	And not only that.  The use of high-level tools usually brings
	uniformity.  Which, in turn, decreases the amount of
	``learning'' required.

	With regard to Automake it means enforcing the GNU coding
	standards on the build system, so that the user has to memorize
	less intricacies about particular build systems.

 > but it increases the amount of learning required; at least if you
 > want to understand your own project. If you write your own Makefiles,
 > you need to understand GNU make. If you use automake, you need to
 > understand both GNU make and automake.

	Indeed.  Unfortunately, some users are trying to employ
	high-level tools, but don't care to actually learn them, and
	neither what they were designed for, neither how.  There ain't
	no such thing as a free lunch, though.

	I'd call that a main problem with Automake.

[...]

 >> One more question: does the current build system support
 >> cross-compilation?

 > It should do. If something is reported not to work when
 > cross-compiling, it gets fixed.

 > There are a few steps which inherently need to be performed on the
 > target, e.g. generating the documentation requires running the
 > executables, which has to be done on the target (but you may as well
 > just copy the documentation from a native build; it's not like it
 > changes between platforms). Ditto for generating the fontcap file.

	Thanks.



More information about the grass-dev mailing list