On Thu, 27 Jul 2023 19:01:35 GMT, Aleksey Shipilev <[email protected]> wrote:
>> There is a simple build failure after >> [JDK-8280982](https://bugs.openjdk.org/browse/JDK-8280982) with older GCCs: >> >> >> * For target support_native_java.desktop_libawt_xawt_screencast_pipewire.o: >> In file included from >> /home/buildbot/worker/build-jdkX-debian9/build/src/java.desktop/unix/native/libpipewire/include/spa/buffer/buffer.h:12:0, >> from >> /home/buildbot/worker/build-jdkX-debian9/build/src/java.desktop/unix/native/libpipewire/include/pipewire/stream.h:171, >> from >> /home/buildbot/worker/build-jdkX-debian9/build/src/java.desktop/unix/native/libawt_xawt/awt/screencast_pipewire.h:36, >> from >> /home/buildbot/worker/build-jdkX-debian9/build/src/java.desktop/unix/native/libawt_xawt/awt/screencast_pipewire.c:33: >> /home/buildbot/worker/build-jdkX-debian9/build/src/java.desktop/unix/native/libpipewire/include/spa/utils/defs.h:61:24: >> error: "__clang_major__" is not defined [-Werror=undef] >> #elif __GNUC__ >= 7 || __clang_major__ >= 10 >> ^~~~~~~~~~~~~~~ >> >> >> There is an obvious fix for this: we need to check for `defined(__GNUC__)` >> explicitly before touching `__clang_major__`. >> >> (Yes, GCC 6 is old; but we would like to make sure it builds until we run >> into hard to resolve build issues. This allows modern JDKs to be built in >> legacy enterprise environments for e.g. portable builds.) >> >> Additional testing: >> - [x] Linux GCC 6 fastdebug build (passes with HarfBuzz warnings, to be >> fixed separately) > > Aleksey Shipilev has updated the pull request incrementally with one > additional commit since the last revision: > > Disable the warnings instead Yeah, we can just ignore the warnings. See new commit. I don't see a clean way to disable this only for specific GCC versions, and other warnings seem to be added without version checks too. I checked it still builds fine on GCC 6. ------------- PR Comment: https://git.openjdk.org/jdk/pull/14995#issuecomment-1654259008
