Opened 10 months ago

Last modified 4 months ago

#61488 new defect

multiple ports: review macOS version checking

Reported by: jmroot (Joshua Root) Owned by:
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: daitakahashi, jeremyhu (Jeremy Huddleston Sequoia), larryv (Lawrence Velázquez), MarcusCalhoun-Lopez (Marcus Calhoun-Lopez), ryandesign (Ryan Schmidt), tobypeterson, iay (Ian Young)
Port: icu-le-hb libassuan isl libdaemon cloog gdbm db60 net-snmp gsl libcanberra sox xorg-libXxf86vm libart_lgpl

Description (last modified by mf2k (Frank Schima))

All these ports have a patch called yosemite-libtool.patch which adjusts the macOS version checking so it correctly recognises 10.x versions above 10.9. They should be reviewed for macOS 11.0 compatibility. If there is a problem, they will fail to build on Big Sur due to undefined symbols. If they don't fail to build, they must not actually need to allow undefined symbols and no action is needed AFAICT, as the existing code won't use -flat_namespace on unrecognised versions.

Failing ports should be patched the same way that libtool has been: https://github.com/macports/macports-ports/blob/master/devel/libtool/files/dynamic_lookup-11.patch

port maintainer status
cloog@larryv
db60
gdbm
gsl@daitakahashi,openmaintainer
icu-le-hb@ryandesign,openmaintainer
isl@MarcusCalhoun-Lopez,openmaintainer
libart_lgpl@tobypeterson,openmaintainer 517572b4e433eaf1672fb4c4fa558fd9cacb1114/macports-ports
libassuan@larryv,openmaintainer
libcanberra
libdaemon
net-snmp@ryandesign,openmaintainer
sox
xorg-libXxf86vm@jeremyhu,openmaintainer

Change History (13)

comment:1 Changed 10 months ago by ryandesign (Ryan Schmidt)

I would expect all of the ports that have the yosemite-libtool.patch to need it, and to therefore need to be updated to the new dynamic_lookup-11.patch.

When updating, please remove the old yosemite-libtool.patch and add the new patch named dynamic_lookup-11.patch so that it is easier to find in the future if we need to update it.

comment:2 Changed 10 months ago by mf2k (Frank Schima)

Description: modified (diff)

comment:3 Changed 10 months ago by Schamschula (Marius Schamschula)

In 8c569a9171bab59a4b49ac7c16d269968f23535d/macports-ports (master):

libgcrypt: update macOS version checking for Big Sur

See: #61488

comment:4 Changed 10 months ago by tenomoto (Takeshi Enomoto)

In a924c20a4f3c9ddedb85590ec49b25e2b073587b/macports-ports (master):

hdf4: update to 4.2.15

  • update to 4.2.15
  • replace yosemite-libtool.patch with patch-configure.diff and patch-m4-libtool.m4.diff
  • enable build on Big Sur

See: #61488

comment:5 Changed 10 months ago by ryandesign (Ryan Schmidt)

As is the case anytime you patch a port that uses autotools, you should only patch generated files or only patch non-generated files, not both. If your port does not run auto(re)conf, patch the generated configure file. If your port runs auto(re)conf and has a libtool.m4, patch that. If your port runs auto(re)conf and does not have a libtool.m4, patch nothing; the patched libtool.m4 from the libtool port will be used. If you patch both but do not run auto(re)conf, make absolutely certain that your patch for configure is performed after the patches for the m4 files, otherwise depending on timing sometimes it will cause configure to be regenerated when you did not want it to be.

The libtool port patches both because it needs to both have a fixed configure script at build time and it needs to install a patched libtool.m4 for others to use.

comment:6 Changed 10 months ago by kencu (Ken)

You might consider leaving gcc 44 to 49 out perhaps, as none of these will be fixed to build on Big Sur anyway. None of them build above 10.11, AFAIK.

comment:7 Changed 7 months ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

In d9b3661908853116b547ec4d293b9dced812dcd4/macports-ports (master):

db48: add support for MACOSX_DEPLOYMENT_TARGET > 10

See #61488

comment:8 Changed 7 months ago by jmroot (Joshua Root)

Cc: Schamschula tenomoto removed
Description: modified (diff)
Port: libgcrypt db48 hdf4 gcc46 gcc48 gcc49 gcc47 gcc45 gcc44 removed

comment:9 Changed 7 months ago by tobypeterson

Fixed libart_lgpl in [517572b4e433eaf1672fb4c4fa558fd9cacb1114/macports-ports] (just removed the patch and added use_autoreconf).

Last edited 7 months ago by jmroot (Joshua Root) (previous) (diff)

comment:10 Changed 6 months ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

In 29d3cfd4ab7dc95555594fba58dd348e370f1254/macports-ports (master):

gupnp-igd: fix for MACOSX_DEPLOYMENT_TARGET > 10

See #61488
Fixes #61713

comment:11 Changed 5 months ago by mf2k (Frank Schima)

Description: modified (diff)

comment:12 Changed 4 months ago by iay (Ian Young)

libcanberra fixed, see #61882.

comment:13 Changed 4 months ago by iay (Ian Young)

Cc: iay added
Note: See TracTickets for help on using tickets.