Am 07.09.2010 um 21:43 schrieb Bradley Giesbrecht: > > On Sep 7, 2010, at 12:34 PM, Titus von Boxberg wrote: > >> Am 07.09.2010 um 21:19 schrieb Bradley Giesbrecht: >> >>> >>> On Sep 7, 2010, at 8:56 AM, Titus von Boxberg wrote: >>> >>>> Am 01.09.2010 um 08:29 schrieb Ryan Schmidt: >>>> >>>>> >>>>> On Sep 1, 2010, at 01:09, Titus von Boxberg wrote: >>>>> >>>>>> Is there a phase when both the port is activated and the build directory >>>>>> is still in place? Is there a thing like post-activation ? >>>>> >>>>> Yes, you can write a post-activate phase. But that's not the correct >>>>> place to do the type of fix you're proposing. The correct place is >>>>> probably the post-build phase. You can look at the oracle-instantclient >>>>> for a (convoluted) example of calling install_name_tool in a portfile (it >>>>> does it in the build phase, but you probably have an existing build phase >>>>> you don't want to overwrite, so you probably want post-build instead). >>>>> >>>> Just to refresh the thread: >>>> The original question was if and when to call an external script that >>>> calls install_name_tool >>>> which is necessary for wxWidgets-devel. >>>> >>>> I figured that it would be easiest to define a post-install phase. >>>> Then the already existing script from wxWidgets can be called without >>>> modifications. >>>> That cannot be done in the post-build phase. In this phase I would have to >>>> patch >>>> the script or handcraft the call of install_name_tool like in >>>> oracle-instantclient >>>> which imo would only clutter the Portfile if there is a oneliner at hand. >>>> >>>> Is there a variable that defines the installation directory for the port? >>>> I.e. the path ${prefix}/var/macports/software/.../${prefix}? >>>> Or maybe only the ... component? Or at least a variable holding all >>>> variants? >>>> >>>> And why would the post-activate phase not be the correct place to call >>>> change_install_name? >>>> Is a port ever used before activation? >>> >>> I'm not sure when but at some point port registers the files installed. If >>> you change the names of files after this point the commands like "port >>> uninstall", "port contents" and "port provides" be adversely effected. >> I'm not changing the names of the files. >> port uninstall works well with this type of post-install script. >> I only do not know how to get the path to the installation directory >> because one component in it depends on variants selected. > > In which ever phase you want to work you can add some "if [variant_isset > myvariant]" logic. > > man portfile > /variant Found it. The variable holding all selected variants of the port is ${portvariants}. It's neither in the guide nor in the manpage.
Still, would be nice to know why not to handle the issue in post-activate commands. Regards Titus _______________________________________________ macports-dev mailing list macports-dev@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macports-dev