On Mon, 24 Jul 2023 10:21:52 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) LGTM ------------- Marked as reviewed by jiefu (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/14995#pullrequestreview-1543250707
