x86_64-pc-linux-gnu-gcc -Wall -pipe -Dstricmp=strcasecmp -DHAVE_IPV6 -DDEFAULT_BASEDIR=\"/usr/share/games/quake2\" -DDEFAULT_LIBDIR=\"/usr/games/lib64/quake2-icculus\" -DC_ONLY -O2 -pipe -march=native -fno-diagnostics-color -falign-functions=32:25:16 -DLINUX_VERSION=\"3.21+r0.16\" -fPIC -o releasex86_64/rogue/dm_ball.o -c src/rogue/dm_ball.c In file included from src/rogue/dm_ball.c:5: src/rogue/g_local.h:25:10: fatal error: bits/nan.h: No such file or directory 25 | #include <bits/nan.h> | ^~~~~~~~~~~~ compilation terminated. ------------------------------------------------------------------- This is an unstable amd64 chroot image at a tinderbox (==build bot) name: 17.1_systemd-libressl_abi32+64-20200821-231953 ------------------------------------------------------------------- gcc-config -l: [1] x86_64-pc-linux-gnu-10.2.0 * clang version 10.0.1 Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/lib/llvm/10/bin /usr/lib/llvm/10 10.0.1 Available Python interpreters, in order of preference: [1] python3.7 [2] python3.9 (fallback) [3] python3.8 (fallback) [4] python2.7 (fallback) Available Ruby profiles: [1] ruby25 (with Rubygems) * The following VMs are available for generation-2: Available Java Virtual Machines: (none found) The Glorious Glasgow Haskell Compilation System, version 8.8.4 timestamp(s) of HEAD at this tinderbox image: /var/db/repos/gentoo Mon Aug 24 09:05:36 AM UTC 2020 /var/db/repos/libressl Mon Aug 10 09:13:35 AM UTC 2020 emerge -qpvO games-fps/quake2-icculus [ebuild N ] games-fps/quake2-icculus-0.16.1-r1 USE="ipv6 rogue xatrix -X -aalib -alsa -cdinstall -dedicated -demo -joystick -opengl -qmax -sdl"
Created attachment 656474 [details] emerge-info.txt
Created attachment 656476 [details] emerge-history.txt
Created attachment 656478 [details] environment
Created attachment 656480 [details] etc.portage.tbz2
Created attachment 656482 [details] games-fps:quake2-icculus-0.16.1-r1:20200824-094654.log
Created attachment 656484 [details] temp.tbz2
It appears as if we need to change line 25 of src/rogue/g_local.h to #include math.h instead of bits/nan.h Doing so allowed my to finish the compile. I found this by reading nan.h on a different architecture, where it says to use math.h instead of including nan.h directly.
https://aur.archlinux.org/cgit/aur.git/tree/updates_for_gcc.patch?h=quake2 Here's the same. Can confirm, builds fine with bits/nan.h changed to math.h
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=14a9a76f3ea6b09fed1852beb4fcadf93b0bdc71 commit 14a9a76f3ea6b09fed1852beb4fcadf93b0bdc71 Author: Eli Schwartz <eschwartz93@gmail.com> AuthorDate: 2024-05-12 19:05:30 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2024-05-12 22:38:52 +0000 games-fps/quake2-icculus: fix broken patch to actually fix the issue nan.h doesn't exist. Nor does bits/nan.h. The correct answer was always to use math.h, which is already included. Replace patch entirely (but recycle the filename). Closes: https://bugs.gentoo.org/738832 Signed-off-by: Eli Schwartz <eschwartz93@gmail.com> Signed-off-by: Sam James <sam@gentoo.org> .../quake2-icculus/files/0.16-rogue-nan.patch | 52 +++++++++++++++++++++- 1 file changed, 50 insertions(+), 2 deletions(-)