Opened 3 years ago
Last modified 3 years ago
#63581 assigned defect
conf2struct does not lock down which perl version it uses
Reported by: | pagecp (Christian) | Owned by: | amake (Aaron Madlon-Kay) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.7.1 |
Keywords: | Cc: | ||
Port: | conf2struct |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
sslh cannot build because it depends on conf2struct that depends on p5.26-conf-libconfig that is not available on macports 2.7.1 (Mac OS X 10.14.6)
% port -v install sslh ---> Computing dependencies for sslh.. Error: Dependency 'p5.26-conf-libconfig' not found. Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug. Error: Processing of port sslh failed
% port info sslh sslh @1.22c (net, security, www) Description: sslh lets one accept both HTTPS and SSH connections on the same port. It makes it possible to connect to an SSH server on port 443 (e.g. from inside a corporate firewall) while still serving HTTPS on that port. Homepage: http://rutschle.net/tech/sslh/README.html Build Dependencies: conf2struct Library Dependencies: libconfig-hr, pcre Platforms: darwin License: GPL-2+ Maintainers: Email: amake@macports.org, GitHub: amake Policy: openmaintainer
% port info conf2struct conf2struct @1.5 (devel) Description: Create C parsers for libconfig and command-line, which get read directly to a `struct` Homepage: https://github.com/yrutschle/conf2struct Library Dependencies: libconfig-hr, p5.26-conf-libconfig Platforms: darwin License: BSD Maintainers: Email: amake@macports.org, GitHub: amake Policy: openmaintainer
% port info p5.26-conf-libconfig Error: Port p5.26-conf-libconfig not found
Change History (2)
comment:1 Changed 3 years ago by pagecp (Christian)
Description: | modified (diff) |
---|---|
Summary: | sslh cannot build because it depends on conf2struct that depends on p5.26-conf-libconfig → sslh cannot build because it depends on conf2struct that depends on p5.26-conf-libconfig (port not available) |
comment:2 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|---|
Owner: | set to amake |
Port: | conf2struct added; sslh removed |
Status: | new → assigned |
Summary: | sslh cannot build because it depends on conf2struct that depends on p5.26-conf-libconfig (port not available) → conf2struct does not lock down which perl version it uses |
Note: See
TracTickets for help on using
tickets.
On my system, conf2struct depends on p5.28-conf-libconfig which does exist.
The conf2struct portfile does not mention a perl version explicitly; it just uses whatever value of
perl5.major
is exported by the perl5 portgroup. That value is based on the variant of the perl5 port that you have installed, so you have likely installed the perl5 port with the +perl5_26 variant. To fix the problem, reinstall the perl5 port with the +perl5_28 variant. Since that is currently its default variant, you can accomplish this by just runningsudo port install perl5
. This would probably be a good idea to do anyway since perl 5.26 is old. (Perl 5.28 is old too but it is still the default version used in MacPorts. Once MacPorts moves to a newer default version, the perl5 port should automatically upgrade to that new variant for you when you upgrade ports, now that MacPorts distinguishes between variants you requested explicitly and variants which were merely selected by default.)In fact the conf2struct port probably should mention a perl version (such as 5.28) specifically since the perl version does get baked into the files that conf2struct installs.