Need Help with the "conflicts_build" PortGroup
chrischavez at gmx.us
chrischavez at gmx.us
Mon May 22 11:12:20 UTC 2023
On 5/20/23 at 10:36 AM, Robert Kennedy wrote:
> It looks like I can tell whether a port is installed and get the version of a installed port in question via the MacPorts registry API. But I do not see any docs on how to use the MacPorts registry API in a Portfile.
>
> Once I know whether a port is installed and its version number, I should be able to use conflcts_build-append in a tcl block in the Portfile (e.g. in a pre-configure{} or pre-build{} block. pre-configure{} probably makes the most sense).
>
> Can someone point me to some docs on how to use the MacPorts registry API or to some example Portfiles?
>
> Rob
>
> ________________________________
> From: macports-dev <macports-dev-bounces at lists.macports.org> on behalf of Robert Kennedy <amtor at hotmail.com>
> Sent: May 20, 2023 9:47 AM
> To: macports-dev at lists.macports.org <macports-dev at lists.macports.org>
> Subject: Need Help with the "conflicts_build" PortGroup
>
> I am upgrading a port where only certain installed releases will prevent the building of the upgraded port.
>
> Is there a way to use conflicts_build from the conflicts_build PortGroup with only certain installed releases? Maybe it could be done by using a pre-build {} tcl block?
>
> Is there a global variable available that is set to the installed version number?
> And is there an easy way to tell if a port is already installed before upgrading?
>
> Rob
This sounds like what the “deactivate hack” is for:
https://trac.macports.org/wiki/PortfileRecipes#deactivatehack
Some ports use this to forcibly deactivate older versions of a port; no need for conflicts_build.
Christopher
More information about the macports-dev
mailing list