Opened 3 years ago

Closed 5 months ago

#65066 closed defect (fixed)

nghttp2 does not build as +universal

Reported by: barracuda156 Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.7.2
Keywords: powerpc leopard ppc64 haspatch Cc:
Port: nghttp2

Description (last modified by barracuda156)

So it merely ignores +universal, and that is why it prevented curl from upgrading.

36-61:~ svacchanda$ sudo port -v -n install nghttp2 +universal

--->  Cleaning nghttp2
--->  Removing work directory for nghttp2
36-61:~ svacchanda$ port -v installed nghttp2
The following ports are currently installed:
  nghttp2 @1.47.0_0 (active) requested_variants='' platform='darwin 9' archs='ppc' date='2022-04-24T19:39:31+0800'

Attachments (1)

nghttp2_main.txt (61.3 KB) - added by barracuda156 3 years ago.

Download all attachments as: .zip

Change History (11)

comment:1 Changed 3 years ago by reneeotten (Renee Otten)

@barracuda156 please do not post large logs of failures as text in a ticket (here and elsewhere), instead add them as attachments

comment:2 Changed 3 years ago by jmroot (Joshua Root)

There is no universal variant because there's no compiler that supports ppc, C++14, and universal builds. There would be a message to that effect in the log.

comment:3 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

So this a duplicate of #48857 essentially.

comment:4 in reply to:  2 ; Changed 3 years ago by barracuda156

Replying to jmroot:

There is no universal variant because there's no compiler that supports ppc, C++14, and universal builds. There would be a message to that effect in the log.

I guess it has to be done with muniversal PortGroup. There are ports that build as universal using gcc10 and gcc11.

comment:5 Changed 3 years ago by barracuda156

Description: modified (diff)

Changed 3 years ago by barracuda156

Attachment: nghttp2_main.txt added

comment:6 in reply to:  4 ; Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to barracuda156:

I guess it has to be done with muniversal PortGroup. There are ports that build as universal using gcc10 and gcc11.

It doesn't have to be done that way, and adding the muniversal portgroup to every port that uses MacPorts gcc on PowerPC systems would probably be a big undertaking, not to mention that using the muniversal portgroup can cause problems of its own. It would be nicer to fix gcc7 and others so that they can build universal "normally", the way that Apple gcc, llvm-gcc and clang do.

comment:7 in reply to:  6 Changed 3 years ago by barracuda156

Replying to ryandesign:

It doesn't have to be done that way, and adding the muniversal portgroup to every port that uses MacPorts gcc on PowerPC systems would probably be a big undertaking, not to mention that using the muniversal portgroup can cause problems of its own. It would be nicer to fix gcc7 and others so that they can build universal "normally", the way that Apple gcc, llvm-gcc and clang do.

I certainly agree with you, but I am not qualified enough to fix gcc. I can only hope that Iain or someone else does this eventually.

comment:8 Changed 3 years ago by kencu (Ken)

the gcc driverdriver.c issue has been there for many years now, so nobody seems too motivated to work on it up to now.

Might be more interest now that universal often means arm/intel, so the fix would be more interesting.

Last edited 3 years ago by kencu (Ken) (previous) (diff)

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

Keywords: haspatch added

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

Resolution: fixed
Status: assignedclosed

In 3b3f9b3912f47e8b74a7ca7c6f47032a6f044e6c/macports-ports (master):

nghttp2: Require C++20 only for nghttp2-tools subport

Closes: #65066
Closes: #70027
Closes: #70048

Note: See TracTickets for help on using tickets.