Opened 3 years ago

Closed 2 years ago

#64783 closed defect (fixed)

mesa asks for apple-gcc42 on Leopard

Reported by: barracuda156 Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: powerpc, leopard Cc:
Port: mesa

Description

I have seen in the portfile that gcc-4.2 fails to build mesa while apple-gcc42 builds it, however there is no point to require the latter on Leopard when macports-gcc-7 is available. As I understand, the only use of apple-gcc42 should be to replace default Xcode compiler on Tiger.

This is what I got on Leopard:

36-72:files svacchanda$ sudo port -v -n install mesa
Password:
--->  Computing dependencies for mesa..
The following dependencies will be installed:  apple-gcc42
Continue? [Y/n]: n

mesa builds normally for ppc with gcc7:

36-72:files svacchanda$ port -v installed mesa
The following ports are currently installed:
  mesa @17.1.6_2+osmesa+python27 (active) requested_variants='' platform='darwin 9' archs='ppc' date='2022-03-08T05:32:47+0800'

Change History (4)

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

The mesa port correctly indicates that it cannot build with gcc-4.2 and others:

compiler.blacklist gcc-3.3 gcc-4.0 gcc-4.2 llvm-gcc-4.2 {clang < 800}

MacPorts then chooses another suitable compiler. I guess the MacPorts base list of fallback compilers has apple-gcc42 before gcc7. That could of course be changed. But why should it be? Why is it a problem that mesa builds with apple-gcc42?

As I understand, the only use of apple-gcc42 should be to replace default Xcode compiler on Tiger.

What makes you say that? That is certainly one of its uses but why does that need to be its only use?

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

Replying to ryandesign:

The mesa port correctly indicates that it cannot build with gcc-4.2 and others:

compiler.blacklist gcc-3.3 gcc-4.0 gcc-4.2 llvm-gcc-4.2 {clang < 800}

MacPorts then chooses another suitable compiler. I guess the MacPorts base list of fallback compilers has apple-gcc42 before gcc7. That could of course be changed. But why should it be? Why is it a problem that mesa builds with apple-gcc42?

As I understand, the only use of apple-gcc42 should be to replace default Xcode compiler on Tiger.

What makes you say that? That is certainly one of its uses but why does that need to be its only use?

You know better, of course. I just don’t see the logic behind asking for an exotic compiler when gcc7 does the job and is required for numerous ports anyway. Perhaps it should at least check if macports-gcc-7 is already installed? Also this has been the only case from what I can remember when something asked for apple-gcc42 on Leopard without it being an explicit dependency.

Last edited 3 years ago by barracuda156 (previous) (diff)

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

Replying to barracuda156:

I just don’t see the logic behind asking for an exotic compiler when gcc7 does the job and is required for numerous ports anyway.

That was going to be precisely the reasoning I would cite for why apple-gcc42 should be used. It is the default MacPorts compiler on Tiger and Leopard and Snow Leopard. It comes with Xcode on Leopard and Snow Leopard. Why require the user to install another compiler port when apple-gcc42 will do?

Perhaps it should at least check if macports-gcc-7 is already installed?

You propose that port should behave differently depending on what you already have installed? No. See ReproducibleBuilds.

Last edited 3 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)
Note: See TracTickets for help on using tickets.