[MacPorts] #62984: freeciv @2.6.4_0: propose a major restructure to provide all 12 clients and utilities
MacPorts
noreply at macports.org
Sat May 29 09:01:48 UTC 2021
#62984: freeciv @2.6.4_0: propose a major restructure to provide all 12 clients and
utilities
---------------------+--------------------
Reporter: JDLH | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: |
---------------------+--------------------
Comment (by jmroot):
This looks reasonable in general.
Replying to [ticket:62984 JDLH]:
> With no variants, the '''freeciv''' base port will not include a client,
so one can host games, but not play them. I could make one variant a
default, if the user doesn't specify any. Or, I could use `pre-configure`
code to require at least one of the variants, so that the port always
delivers at least one GUI client app for playing games.
The GUIs should be provided as subports, not variants. Dependencies
between the subports could be handled a few different ways, GUIs depending
on base or base depending on a GUI, but I think the best way would be:
* `freeciv` is a stub port (installs as close to no files as MacPorts
allows), and depends on `freeciv-base`.
* `freeciv` has a variant for each GUI, which adds a dependency on one of
the GUI subports. One is on by default.
* Each of the GUI subports, like `freeciv-gtk3`, depends on `freeciv-
base`.
That way, a user gets a fully-functional GUI installation whether they run
`port install freeciv` or install one of the GUI subports directly, and
the other GUIs are relatively easy to discover from `port info freeciv`.
> sdl client:: drop in version 3.0.x. But, it looks to me like it was
dropped prior to version 2.6.4. The present '''freeciv''' portfile selects
the sdl client over the sdl2 client for `(${os.major} <= 10)`, but
upstream no longer supplies this client. Macports users on this OS cannot
use freeciv, I guess.
The release notes seem to imply that SDL1 support is still available in
2.6.x. But the freeciv port seems to be failing to build on many older OS
versions, including quite a few that use SDL2, so that would probably need
to be fixed to clear this up.
> This structure lets Macports users get the most usable clients from
upstream, '''freeciv-qt''' and '''freeciv-gtk3.22'''.
The downside of those GUIs is of course more dependencies. But making them
available is definitely good.
> I'm concerned that this change will surprise present users of the
'''freeciv[-x11]''' ports. They will need to specify variants which
weren't necessary before. The port '''freeciv-x11''' goes away. What is
the right way to announce this proposal, and gather feedback?
You would keep `freeciv-x11` around as a stub port that sets `replaced_by
freeciv-gtk2`, for at least a year.
> What is a good way of determining the exact list of ports on which each
of these clients depends? I know they all build on my system, with its
2000+ ports. But I don't see an easy way to determine the minimal set of
ports required.
You could build with `-t` (trace mode) and see what breaks and what files
are hidden.
--
Ticket URL: <https://trac.macports.org/ticket/62984#comment:2>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list