Opened 4 years ago
Last modified 2 months ago
#61488 new defect
multiple ports: review macOS version checking — at Version 11
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 Carsten Schmidt), tobypeterson | |
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 (11)
comment:1 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
comment:2 Changed 4 years ago by mf2k (Frank Schima)
Description: | modified (diff) |
---|
comment:3 Changed 4 years ago by Schamschula (Marius Schamschula)
comment:4 Changed 4 years ago by tenomoto (Takeshi Enomoto)
comment:5 Changed 4 years ago by ryandesign (Ryan Carsten 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 4 years 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 4 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
comment:8 Changed 4 years 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 4 years ago by tobypeterson
Fixed libart_lgpl in [517572b4e433eaf1672fb4c4fa558fd9cacb1114/macports-ports] (just removed the patch and added use_autoreconf).
comment:10 Changed 4 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
comment:11 Changed 4 years ago by mf2k (Frank Schima)
Description: | modified (diff) |
---|
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.