ryandesign at macports.org
Sat Dec 23 15:38:22 UTC 2017
Should we add a "use_autogen" (or "use_autogen_sh") option to MacPorts base?
We already have "use_autoconf", "use_automake" and "use_autoreconf". Each of these add the autoconf, automake, libtool dependencies, and set up the right command to run before the configure phase.
But many projects now include an autogen.sh script that should be run instead. The contents of the script is not standardized but at least the name is. I count over 200 portfiles mentioning autogen.sh.
Many ports currently use one of the above options, typically "use_autoreconf", and use "autoreconf.cmd ./autogen.sh" to tell it to run the autogen.sh script instead of the autoreconf program. The problem with overriding the cmd of these options is that that causes MacPorts base to remove the dependencies again. The assumption in designing MacPorts base to work that way was that the alternate command that you specify might do *anything*, which might not necessarily need those dependencies. So ports that override the cmd to autogen.sh also have to add the dependencies again.
Other ports forgo the use_auto* options entirely and set "configure.cmd ./autogen.sh && ./configure" and add the dependencies manually. I'd like to discourage that practice as well.
More information about the macports-dev