[43132] trunk/dports/x11/xorg-libAppleWM/Portfile
Joshua Root
jmr at macports.org
Fri Dec 5 14:50:56 PST 2008
Ryan Schmidt wrote:
> On Dec 5, 2008, at 16:09, Jeremy Huddleston wrote:
>
>> On Dec 5, 2008, at 13:44, Ryan Schmidt wrote:
>>
>>> If you're going to run autoreconf, you need to declare a build
>>> dependency on the port that provides autoreconf...
>>> That would be the autoconf port. Probably declaring a build
>>> dependency on all three (autoconf, automake, libtool) is required.
>>
>> That's what that port:libtool dependency is for. libtool depends on
>> automake which depends on autoconf. I didn't realize I needed to
>> explicitly require all three. I'll update that.
>
> libtool only has a build dependency on automake which only has a build
> dependency on autoconf. That means as soon as automake is installed, a
> user would be perfectly free to uninstall autoconf and expect no
> problems. And once libtool is installed, the user would expect to be
> able to uninstall automake with no problems. And MacPorts will allow
> uninstallation of those ports with no complaints, since those ports are
> not library or runtime dependencies but only build dependencies. So if
> you want to use those ports to build something, you need to declare
> build dependencies on them.
Not that this is only an issue with depends_build, in general there's no
policy against pulling in dependencies indirectly. Doing so can prevent
trace mode from working, however.
>>> There was quite a lot of confusion around this with the libxml2 port;
>>> see r38015, r38175, r39322, r39551.
>>>
>>> And what's "-fvi" and is it really necessary? We have a preferred
>>> method in MacPorts for running autoreconf, which currently is:
>>
>> force (assumes all files are too old and reinstalls them all)
>> verbose (better debugging output)
>> install (copies missing aux files to make autoconf not complain)
>>
>>> use_autoconf yes
>>> autoconf.cmd autoreconf
>>
>> Does this trigger the dependencies as well, or do I need to explicitly
>> do that? I just copied this behavior from another port.
>
> I'm not sure what you mean by triggering dependencies. I expect it just
> runs "autoreconf". Is there more that's needed?
"use_autoconf yes' doesn't add a dependency on autoconf, you have to add
it explicitly. There are a number of use_foo options which should really
add a dep but don't, see for example
<http://trac.macports.org/ticket/13981>.
>>> In MacPorts 1.7.0 you'll be able to just:
>>>
>>> use_autoreconf yes
>>
>> And I assume there is a corresponding autoreconf.cmd, so I could set
>> '-fvi' if needed?
It uses the 'command' infrastructure, i.e. the 'commands' and
'command_exec' procs in port1.0/portutil.tcl. So yes, there is an
autoreconf.cmd option, but you probably want autoreconf.args. The
defaults currently set in portconfigure.tcl for autoreconf are:
default autoreconf.dir {${worksrcpath}}
default autoreconf.pre_args {--install}
- Josh
More information about the macports-dev
mailing list