[MacPorts] #52281: Port for evolution, based on devans at macports.org evolution-data-server
MacPorts
noreply at macports.org
Mon Oct 17 01:13:22 CEST 2016
#52281: Port for evolution, based on devans at macports.org evolution-data-server
-------------------------+----------------------
Reporter: gwhitney@… | Owner: devans@…
Type: submission | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.3.4
Resolution: | Keywords:
Port: evolution |
-------------------------+----------------------
Comment (by devans@…):
Replying to [comment:24 gwhitney@…]:
> Replying to [comment:23 devans@…]:
> > One suggestion, no need to add a just +x11 variant unless -x11 makes
sense and -x11 doesn't mean +quartz.
> >
> > However, if you can build with either of the gtk3 X11 or gtk3 Quartz
backends then having both variants +x11 +quartz makes sense but you need
to mark them as conflicting (only one at a time). Default variant should
be +x11 in this case.
>
> Sorry I am not fully understanding this advice. The latest version of
the evolution port can be compiled with x11 support, in which case it
requires gnome-desktop, and it must be the case that the x11 gdk backend
is available; or without x11 support, in which case it does not require
gnome-desktop, and relies on whatever (default) gdk backend has been
installed. There are no other differences, and evolution-x11 will compile
just fine on top of the x11 gdk backend. I don't actually see why
evolution-x11 and evolution+x11 couldn't in theory coexist.
Well, you need to understand that the variants are not tags, they are
toggles. So if you assert a +variant then the opposite -variant must mean
something. So if your port requires X11 and only builds that way then you
don't need a +x11 because -x11 is non-sensical -- it can't build without
x11.
To handle the case where gtk3 +x11 is not installed you need to check if
it's installed at configure time, for example, by using
require_active_variants from the active_variants 1.1 PortGroup.
gnome-desktop, is, in fact an example of this.
On the other hand, if you can build either with X11 support or Quartz
support then declaring both +x11 and +quartz is OK but you must declare
them as conflicting because you can't do both at the same time. Here -x11
is sensible because you CAN build without X11 support and the same for
-quartz.
There actually are ports where you can disable X11 support and not use
sometime else such as Quartz. An example would be a port that provides a
library that doesn't depend on X11 but can optionally build a demo app to
needs X11 for it's GUI. In that case +x11 by itself makes sense.
>
> However, there does need to be at least one variant flag, because in an
x11 environment, typically you would want the gnome-desktop integration,
whereas there needs to be a way to turn it off in case only the quartz gdk
backend has been compiled.
In which case you would declare +quartz also.
>
> I hope that makes the situation with the evolution port and its
interaction with the gdk backends clear enough for you to now advise me
what the variant flag or flags should be. I would be glad to implement
whatever variant scheme you feel is best.
Will give you an opinion after I see how everything plays together ;-)
--
Ticket URL: <https://trac.macports.org/ticket/52281#comment:25>
MacPorts <https://www.macports.org/>
Ports system for the Mac operating system
More information about the macports-tickets
mailing list