libretro / libretro-uae

PUAE libretro
GNU General Public License v2.0
111 stars 60 forks source link

Build fix: glibc 2.35+ #529

Closed repojohnray closed 1 year ago

repojohnray commented 2 years ago

In file included from sources/src/audio.c:46: /usr/include/bits/mathcalls.h:133:1: error: expected ';' before 'extern' __MATHCALL_VEC (log2,, (Mdouble __x));

The following defines: log2 and log2l were interacting with the commit: 7e1722fec84c65bf95f249f9ad8d15ab12d8c853 from glibc

sonninnos commented 2 years ago

Those defines were added because some platforms (can't remember which) did not build without them. My current setup (Windows and Linux) builds fine though without them. And the pipeline is working, so why is this needed again?

And also I refuse changes to the codebase without __LIBRETRO__ guards, so maybe there is a better way to handle this.

asciibeats commented 2 years ago

Got the same error and this fixed it for me. Compiling for aarch64. Thanks @repojohnray!

LibretroAdmin commented 2 years ago

Hi @repojohnray , I think @sonninnos is still waiting for a response. He had some questions as expressed above.

repojohnray commented 2 years ago

Hi @LibretroAdmin, I've no idea why these defines were implemented; I confirm these defines are not needed with Linux.

octartis commented 1 year ago

Fixed my build on Arch while building package libretro-uae-git

veganvelociraptor commented 1 year ago

This should be merged as soon as possible. I've been unable to build for months without this pr.

sonninnos commented 1 year ago

It won't be until the changes I requested are done, and until someone is willing to fix all the builds that will fail after merging.

PanAeon commented 1 year ago

This also blocks build on NixOS

sonninnos commented 1 year ago

I updated my Linux VM and finally got this failure too, and found another fix without editing fpp_native.c.

Please confirm.

Edit: The job pipeline also worked fine, so I guess we are good. I'll close this.