HPDCS/ROOT-Sim

is autogen.sh obsolete?

Closed this issue · 3 comments

At the moment the autogen.sh script is used to launch the autotools commands suite.
The autoreconf command has been provided exactly to accomplish this task.

From the gnu doc:

autoreconf runs autoconf, autoheader, aclocal, automake, libtoolize, and autopoint (when appropriate) repeatedly to update the GNU Build System in the specified directories and their subdirectories (see Subdirectories). By default, it only remakes those files that are older than their sources. The environment variables AUTOM4TE, AUTOCONF, AUTOHEADER, AUTOMAKE, ACLOCAL, AUTOPOINT, LIBTOOLIZE, M4, and MAKE may be used to override the invocation of the respective tools.

So the question is... are there any advantages of running the autogen.sh instead of invoking
autoreconf --force --install --verbose ?

@ael-code Simply put: the script is, the idea is not :)

The autotools suite is a mess. There are so many incompatibilies that it would be difficult to handle all of them on any system.

The idea is to replace the handwritten (due to lack of time) autogen.sh with the actual buildconf system: http://buildconf.brlcad.org/

In any case, this is of interest just for developers: in the dist package (eventually!) it should not appear.

I've saw the project http://buildconf.brlcad.org/ and I get the idea.
But at the moment, it seems to me, that our autogen.sh doesn't make any additional operation that is performed by the command autoreconf --force -- install --verbose. If this is the case I suggest to simplify it in order to make the future migration to buildconf easier.

I don't remember 100% how the current script was designed. The fact is that the simple autoreconf --force -- install --verbose was not working on some system where we were in production, which had older versions of the autotools suite. Therefore, I won't feel safe in dropping the content of the current script. I would rather move towards the adoption of the full buildconf, yet there are some more urgent things to do. I'm thus marking this as an enhancement, for the next milestone.