On Fri, 15 Apr 2022 23:29:54 GMT, Alexander Matveev <almat...@openjdk.org> 
wrote:

>> - GStreamer updated to 1.20.1 and GLib updated to 2.72.0.
>> - No changes to our code, except in GstAudioSpectrum.cpp 
>> g_atomic_pointer_compare_and_exchange() was changed to 
>> g_atomic_pointer_set(). For some reason I was not able to get code compiled 
>> with g_atomic_pointer_compare_and_exchange() used from C++ code. Also, I do 
>> not see a need to use g_atomic_pointer_compare_and_exchange(), since 
>> m_pHolder always equals to old_holder.
>> - Tested on all platforms with all supported media streams.
>
> Alexander Matveev has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   8283218: Update GStreamer to 1.20.1 [v3]

I see one remaining build failure on Ubuntu 16.04, which should be easy to fix:


../../../gstreamer-lite/gstreamer/libs/gst/base/gstbytereader.h:367:3: error: 
implicit declaration of function 'memcpy' 
[-Werror=implicit-function-declaration]
  367 |   memcpy (dup_data, data, size);
      |   ^~~~~~
../../../gstreamer-lite/gstreamer/libs/gst/base/gstbytereader.h:367:3: warning: 
incompatible implicit declaration of built-in function 'memcpy'
../../../gstreamer-lite/gstreamer/libs/gst/base/gstbytereader.h:27:1: note: 
include '<string.h>' or provide a declaration of 'memcpy'
   26 | #include <gst/base/base-prelude.h>
  +++ |+#include <string.h>
   27 |
In file included from 
../../../gstreamer-lite/gstreamer/libs/gst/base/gstbytewriter.h:25,
                 from 
../../../gstreamer-lite/gstreamer/libs/gst/base/gstbytewriter.c:26:
../../../gstreamer-lite/gstreamer/libs/gst/base/gstbytereader.h: In function 
'gst_byte_reader_dup_data_unchecked':
../../../gstreamer-lite/gstreamer/libs/gst/base/gstbytereader.h:367:3: error: 
implicit declaration of function 'memcpy' 
[-Werror=implicit-function-declaration]
  367 |   memcpy (dup_data, data, size);
      |   ^~~~~~
../../../gstreamer-lite/gstreamer/libs/gst/base/gstbytereader.h:367:3: warning: 
incompatible implicit declaration of built-in function 'memcpy'


The workaround you needed to do this time suggests we will need a different 
approach for the next update. I think we will need to consider one of two 
things:

1. Build and link glib-lite on Linux, as we do for the other platforms
2. Bump the minimum version of GLib needed to build or run JavaFX media. This 
would mean we would no longer run on Ubuntu 16.0.4 (and probably older versions 
of RHEL / Oracle Linux).

We can decide as it gets closer to the next update.

-------------

PR: https://git.openjdk.java.net/jfx/pull/768

Reply via email to