[MacPorts] #68749: geocode-glib @3.26.4: support API version 2
MacPorts
noreply at macports.org
Tue Mar 18 09:43:36 UTC 2025
#68749: geocode-glib @3.26.4: support API version 2
---------------------------+----------------------
Reporter: oleaamot | Owner: mascguy
Type: enhancement | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.8.1
Resolution: | Keywords:
Port: geocode-glib |
---------------------------+----------------------
Comment (by aamotsoftware):
**Solution for MacPorts Issue: geocode-glib-2.0 Support**
### Problem Statement
The current version of `geocode-glib` in MacPorts (version 3.26.4)
defaults to using `libsoup-2.4`, which means it only provides API version
1. However, some packages such as `gtk-internet-radio-locator`, `gnome-
weather`, and `libgweather` require `geocode-glib-2.0`, which is only
available when built against `libsoup-3.x` (API version 2). The inability
to install `geocode-glib-2.0` leads to dependency conflicts, preventing
the proper installation and functionality of these packages.
### Proposed Solution
The best approach to resolving this issue is to provide separate versions
of `geocode-glib` for API 1 and API 2. This can be achieved by introducing
a subport for `geocode-glib-2.0`, ensuring compatibility with packages
requiring API version 2 while maintaining the existing `geocode-glib` for
API version 1.
### Steps to Implement
1. **Create a Subport for geocode-glib-2.0**
- Modify the `Portfile` for `geocode-glib` to introduce a subport
`geocode-glib-2.0`.
- Ensure `geocode-glib-2.0` is built with `libsoup-3.x`.
- Keep the existing `geocode-glib` port linked to `libsoup-2.4`.
2. **Avoid Conflict Between Versions**
- Ensure that `geocode-glib-2.0` installs files in a way that avoids
conflicts with `geocode-glib`.
- Use a `pkgnamesuffix` for differentiation (`geocode-glib-2.0`).
- Adjust `pkg-config` files to allow both versions to coexist.
3. **Update Dependencies**
- Modify dependent packages (`gtk-internet-radio-locator`, `gnome-
weather`, `libgweather`) to use `geocode-glib-2.0` when necessary.
- Validate package configurations to ensure correct linking against
`geocode-glib-2.0`.
4. **Testing and Validation**
- Perform test builds of affected packages to confirm compatibility.
- Ensure installation works on both macOS 12 and macOS 13.
- Verify that both `geocode-glib` (API 1) and `geocode-glib-2.0` (API
2) work correctly without breaking existing dependencies.
### Expected Outcome
- `geocode-glib` (API 1) remains available for older dependencies.
- `geocode-glib-2.0` (API 2) enables the installation of packages
requiring `libsoup-3.x`.
- The changes provide a smooth transition without breaking existing
installations.
- MacPorts users can install and use applications like `gnome-weather` and
`gtk-internet-radio-locator` without manual intervention.
### Next Steps
- Implement and submit the `Portfile` modification.
- Conduct review and testing with MacPorts maintainers.
- Merge changes into MacPorts and ensure continuous support for both API
versions.
This approach ensures compatibility, stability, and long-term
maintainability for `geocode-glib` within MacPorts.
--
Ticket URL: <https://trac.macports.org/ticket/68749#comment:11>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list