Opened 3 months ago

Closed 3 months ago

Last modified 3 months ago

#70338 closed defect (duplicate)

libepoxy does not contain egl.h file

Reported by: Behinder (behinder) Owned by:
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: libepoxy

Description

That file is not existing and any build using meson (e.g. building qemu from source) will fail.

Change History (12)

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

Keywords: libepoxy opengl removed

The other open ticket about libepoxy is a request to add egl support so my suspicion is this has never worked, so unless you have evidence to the contrary I would consider this ticket a duplicate of that one.

comment:2 Changed 3 months ago by Behinder (behinder)

I don't know if this has never worked. I tried to to add necessary headers myself. However EGL is not present in MacPorts. I suspect that EGL support is done on Mac in the system and Apple dropped OpenGL from Catalina. If so why libepoxy even exists in Macports it should not be available to browser in Catalina+ versions. I am currently struggling a lot wit Qemu on Silicon Mac and either we assume this can be fixed or otherwise therefore all ports related to OpenGl virtualisation and Qemu should be removed in ARM version on the assumption they will never work because it is Apple wish.

comment:3 Changed 3 months ago by jmroot (Joshua Root)

As far as I'm aware, Apple has never provided an EGL implementation, only AGL.

comment:4 Changed 3 months ago by jmroot (Joshua Root)

BTW, the qemu port is building fine on Apple Silicon, at least with default variants: https://build.macports.org/builders/ports-14_arm64-builder/builds/36142

comment:5 Changed 3 months ago by kencu (Ken)

mesa/libepoxy supports hardware-enhanced GLX courtesy of (Jeremy’s) Apple implementation layer.

https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/glx/apple/RELEASE_NOTES

EGL support in mesa has no hardware supprt as yet, AFAIK, so last time I tried EGL via software rendering, it was IMHO unusably slow.

So I left it disabled (so it wouldn’t be found and used) until such time as someone makes it usable.

comment:6 Changed 3 months ago by Behinder (behinder)

If nobody made it usable until today it means it's probbaly not possible.

As a side note - I build Qemu from source (not from macports tree) but it will not work with X86 images like SteamOS even with rosetta emulation and for ARM64 it is probably not usable also, I tried 64bit ISO Linux Mint and cdrom was not even detected. Such things make me really wanting go back to Intel and I hope Apple finally get to its senses to work on architecture that everybody uses

comment:7 Changed 3 months ago by kencu (Ken)

it’s certainly possible…

but the people with the skills to do it just have better things to do.

comment:8 Changed 3 months ago by Behinder (behinder)

but what is the nature of this possibility? you mention mesa does not have hardware support. so it requires new hardware, software will not add that support right? i wish i could help but I dont know what is necessary to be done

comment:9 in reply to:  8 Changed 3 months ago by kencu (Ken)

Replying to Behinder:

but what is the nature of this possibility? you mention mesa does not have hardware support. so it requires new hardware, software will not add that support right?

software does add that support, by connecting the EGL calls to hardware-assisted driver calls.

you can start reading here:

https://docs.mesa3d.org/egl.html

comment:10 Changed 3 months ago by Behinder (behinder)

Hah funny, I was already on this site but was too sleepy to read :)

comment:11 Changed 3 months ago by kencu (Ken)

Resolution: duplicate
Status: newclosed

there is an open ticket already asking libepoxy to support EGL:

#54236

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

comment:12 Changed 3 months ago by Behinder (behinder)

open ticket 7 years old. I would hardly call that duplicate as we are talking about recent Mesa version not the ancient one. COdebase changed since that time

Note: See TracTickets for help on using tickets.