<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [CMake][GStreamer] Building EFL or GTK with ENABLE_VIDEO and without ENABLE_WEB_AUDIO is broken."
   href="https://bugs.webkit.org/show_bug.cgi?id=142577">142577</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>[CMake][GStreamer] Building EFL or GTK with ENABLE_VIDEO and without ENABLE_WEB_AUDIO is broken.
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>WebKit
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>528+ (Nightly build)
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Unspecified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Unspecified
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P2
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>WebKit Gtk
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>webkit-unassigned@lists.webkit.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>clopez@igalia.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>cgarcia@igalia.com, jonathon@quotidian.org, ossy@webkit.org, pnormand@igalia.com
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Building EFL or GTK with -DENABLE_WEB_AUDIO=OFF is broken (ENABLE_VIDEO is by default on) because the linker needs the flag -lgstaudio-1.0 due to the included functions of gst_stream_volume_get_volume/gst_stream_volume_set_volume/gst_stream_volume_get_type on MediaPlayerPrivateGStreamerBase.cpp when ENABLE_VIDEO is active, and this flag is only used when WEB_AUDIO is also enabled (the default).

This is the error:

$ Tools/Scripts/build-webkit --gtk --release --cmakeargs='-DENABLE_WEB_AUDIO=OFF'
FAILED: : && /usr/lib/ccache/clang++  -fPIC  -std=c++11 -Qunused-arguments -O3 -DNDEBUG -fno-exceptions -fno-strict-aliasing -fno-rtti  -Wl,--no-undefined  -L/home/clopez/webkit/webkit/WebKitBuild/DependenciesGTK/Root/lib64  -fuse-ld=gold -Wl,--disable-new-dtags -fuse-ld=gold -Wl,--disable-new-dtags -shared -Wl,-soname,libwebkit2gtk-4.0.so.37 -o lib/libwebkit2gtk-4.0.so.37.5.0 @CMakeFiles/WebKit2.rsp  && :
lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp.o):-:function WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin(): error: undefined reference to 'gst_stream_volume_get_type'
lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp.o):-:function WebCore::MediaPlayerPrivateGStreamerBase::setVolume(float): error: undefined reference to 'gst_stream_volume_set_volume'
lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp.o):-:function WebCore::MediaPlayerPrivateGStreamerBase::volume() const: error: undefined reference to 'gst_stream_volume_get_volume'
lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp.o):-:function WebCore::MediaPlayerPrivateGStreamerBase::notifyPlayerOfVolumeChange(): error: undefined reference to 'gst_stream_volume_get_volume'
lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp.o):-:function WebCore::mediaPlayerPrivateVolumeChangedCallback(_GObject*, _GParamSpec*, WebCore::MediaPlayerPrivateGStreamerBase*): error: undefined reference to 'gst_stream_volume_get_volume'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.

The commit that added that functions to MediaPlayerPrivateGStreamerBase.cpp is r142005 <<a href="http://trac.webkit.org/r142005">http://trac.webkit.org/r142005</a>>.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>