Hello,
I just upgraded to OpenBSD 7.9 (Congratulations for the release!) and
with it latest gcc 15.2
I want to compile ArcticFox with gcc and use:
export CC="egcc -march=pentium-m -Wno-implicit-int"
export CXX="eg++ -march=pentium-m"
export LDFLAGS="-Wl,-zwxneeded"
However, compilation fails with:
1:37.81 In file included from
/usr/local/lib/gcc/i386-unknown-openbsd/15.2.0/include/immintrin.h:27,
1:37.81 from
/home/multix/code/Arctic-Fox/media/libpng/sse2/filter_sse2_intrinsics.c:22,
1:37.81 from
/home/multix/code/Arctic-Fox/obj-i386-unknown-openbsd7.9/media/libpng/Unified_c_media_libpng0.c:128:
1:37.81
/usr/local/lib/gcc/i386-unknown-openbsd/15.2.0/include/x86gprintrin.h:55:10:
fatal error: cmpccxaddintrin.h: No such file or directory
1:37.81 55 | #include <cmpccxaddintrin.h>
1:37.81 | ^~~~~~~~~~~~~~~~~~~
1:37.81 compilation terminated.
1:37.82
1:37.82 In the directory
/home/multix/code/Arctic-Fox/obj-i386-unknown-openbsd7.9/media/libpng
1:37.82 The following command failed to execute properly:
1:37.82 /usr/local/bin/egcc -march=pentium-m -Wno-implicit-int
-std=gnu99 -o Unified_c_media_libpng0.o -c
-I/home/multix/code/Arctic-Fox/obj-i386-unknown-openbsd7.9/dist/system_wrappers
-include /home/multix/code/Arctic-Fox/config/gcc_hidden.h -DNDEBUG=1
-DTRIMMED=1 -DMOZ_PNG_USE_INTEL_SSE
-I/home/multix/code/Arctic-Fox/media/libpng
-I/home/multix/code/Arctic-Fox/obj-i386-unknown-openbsd7.9/media/libpng
-I/home/multix/code/Arctic-Fox/obj-i386-unknown-openbsd7.9/dist/include
-I/home/multix/code/Arctic-Fox/obj-i386-unknown-openbsd7.9/dist/include/nspr
-I/home/multix/code/Arctic-Fox/obj-i386-unknown-openbsd7.9/dist/include/nss
-fPIC -include
/home/multix/code/Arctic-Fox/obj-i386-unknown-openbsd7.9/mozilla-config.h
-DMOZILLA_CLIENT -MD -MP -MF .deps/Unified_c_media_libpng0.o.pp
-I/usr/X11R6/include -Wall -Wempty-body -Wignored-qualifiers
-Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code
-Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations
-Wno-error=array-bounds -fno-strict-aliasing -ffunction-sections
-fdata-sections -fno-math-errno -pthread -pipe -g -O
-fomit-frame-pointer -fdiagnostics-color
/home/multix/code/Arctic-Fox/obj-i386-unknown-openbsd7.9/media/libpng/Unified_c_media_libpng0.c
From what I searched, cmpccxaddintrin.h is a clang flag and I have it:
$ find / -name cmpccxaddintrin.h
/usr/lib/clang/19/include/cmpccxaddintrin.h
Is egcc including in its internal headers a clang header and fails to
find it on usage. A gcc packaging error or do I miss something?
It used to work in gcc 7.7 (didn't try compiling on 7.8, although I did
a clean 7.7->7.8->7.9 ugrade)
For curiosity, I will try a full clang compile, but gcc should work I guess.
Riccardo