Skip to content

gst_debug: Add missing gst_debug_log_id_literal() dummy with gst_debug=false

Martin Nordholts requested to merge martn/gstreamer:missing into main

E.g. gst_debug_log_literal() already has a dummy variant. But gst_debug_log_id_literal() is missing, which can cause link errors for project using gstreamer with gst_debug=false.

To reproduce the problem, first run this:

for gst_debug in true false; do
    meson setup \
        -Dauto_features=disabled \
        -Dgstreamer:gst_debug=$gst_debug \
        --prefix=$TMPDIR/gst_debug-$gst_debug \
        build-gst_debug-$gst_debug
    meson install -C build-gst_debug-$gst_debug
done

Then check for the symbol. We expect it both with gst_debug=false and gst_debug=true, but it is only present with gst_debug=true:

$ objdump -T $TMPDIR/gst_debug-false/lib/x86_64-linux-gnu/libgstreamer-1.0.so | grep gst_debug_log_id_literal
$ objdump -T $TMPDIR/gst_debug-true/lib/x86_64-linux-gnu/libgstreamer-1.0.so | grep gst_debug_log_id_literal
0000000000078740 g    DF .text	0000000000000017  Base        gst_debug_log_id_literal

Compare with gst_debug_log_literal which is present in both cases, just like expected:

$ objdump -T $TMPDIR/gst_debug-false/lib/x86_64-linux-gnu/libgstreamer-1.0.so | grep gst_debug_log_literal
0000000000062c50 g    DF .text	0000000000000001  Base        gst_debug_log_literal
$ objdump -T $TMPDIR/gst_debug-true/lib/x86_64-linux-gnu/libgstreamer-1.0.so | grep gst_debug_log_literal
00000000000786b0 g    DF .text	0000000000000090  Base        gst_debug_log_literal
Edited by Martin Nordholts

Merge request reports