[MacPorts] #51619: qt5.depends_component procedure
MacPorts
noreply at macports.org
Sun Jan 1 01:18:04 UTC 2017
#51619: qt5.depends_component procedure
---------------------------+----------------------
Reporter: RJVB | Owner: mkae
Type: enhancement | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: qt5, qt5-kde |
---------------------------+----------------------
Comment (by RJVB):
I just think of an alternative for the PortGroup problem. I'm not yet sure
whether I really like it, but it does have a certain appeal about it.
My idea has always been to have a shared qt5-1.0 PG which includes either
qt5-kde-1.0.tcl or the as-yet-to-be-determined new name for the actual
qt5-1.0.tcl as a function of the installed Qt version and/or the port's
preference, followed by a common section containing for instance
`qt5.depends_component`.
The alternative would be to have only 2 PGs, leaving `qt5-1.0.tcl` to
Marcus, and qt5-kde-1.0.tcl to Marko and me. Each PG would then pass
control over to the other when required by doing (in qt5-kde-1.0.tcl)
{{{
if {[something]} {
PortGroup qt5 1.0
return
}
}}}
This control transfer would have to take place near the top of the
PortGroup, but can be preceded by any definitions that we would like to be
available always.
This would probably solve the preference indication issue implicitly. A
preference for port:qt5-kde would be indicated by requesting the qt5-kde
PG, insofar as that PortGroup might in fact include the other PortGroup if
this preference cannot be respected. Generic Qt5 ports can continue to
include the qt5 PG and still end up using qt5-kde if that port is
installed.
The appeal is that we will each have more leeway in the choice of the
exact implementation like for instance `qt5.depends_component` which means
it wouldn't have to implement "adaptive depspecs".
The crucial condition here is of course that we must both agree to
transfer control to the other PG when that is dictated by the installed
Qt5 port or user preference indicated in some other way. I have no problem
with that (it's what I'm aiming at already) but I would have preferred to
shoulder that responsibility (through a shared PG) and not burden others
with it because unhappy changes could cause considerable breakage in KF5
functionality.
We might do something similar for the qmake5 PG too.
--
Ticket URL: <https://trac.macports.org/ticket/51619#comment:30>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list