Public bug reported:

Seeing this on s390x. It looks like a circular include bug. I suspect
the graphics APIs (or lack thereof) on s390x to be triggering an unusual
include chain.

The compiler may start looking at gstvideopool.h, which could include
video.h, which probably has all sorts of platform conditionals, and may
end up back in gstvideodmabufpool.h without type definitions declared.

Will try to setup an s390x environment to confirm.

519s FAILED: [code=1] gst/librfb/libgstrfbsrc.so.p/gstrfbsrc.c.o 
519s cc -Igst/librfb/libgstrfbsrc.so.p -Igst/librfb -I../gst/librfb -I. -I.. 
-Igst-libs -I../gst-libs -Igst -I../gst -I/usr/include/gstreamer-1.0 
-I/usr/include/glib-2.0 -I/usr/lib/s390x-linux-gnu/glib-2.0/include 
-I/usr/include/sysprof-6 -I/usr/include/libdrm -I/usr/include/orc-0.4 
-I/usr/include/libmount -I/usr/include/blkid -fdiagnostics-color=always 
-D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -fvisibility=hidden 
-fno-strict-aliasing -DG_DISABLE_DEPRECATED -Wmissing-prototypes 
-Wold-style-definition -Waggregate-return -Waddress -Wformat -Wformat-security 
-Wimplicit-fallthrough=3 -Winit-self -Wmissing-declarations 
-Wmissing-include-dirs -Wmissing-parameter-type -Wno-multichar -Wpointer-arith 
-Wredundant-decls -Wshift-negative-value -Wtype-limits -Wundef -Wvla 
-Wwrite-strings -g -O2 -Werror=implicit-function-declaration -mbackchain 
-ffile-prefix-map=/tmp/autopkgtest.ITS16n/build.U03/src=. 
-fstack-protector-strong -Wformat -Werror=format-security 
-fno-stack-clash-protection 
-fdebug-prefix-map=/tmp/autopkgtest.ITS16n/build.U03/src=/usr/src/gst-plugins-bad1.0-1.27.2-1ubuntu1
 -Wdate-time -D_FORTIFY_SOURCE=3 -fPIC -pthread -DHAVE_CONFIG_H -MD -MQ 
gst/librfb/libgstrfbsrc.so.p/gstrfbsrc.c.o -MF 
gst/librfb/libgstrfbsrc.so.p/gstrfbsrc.c.o.d -o 
gst/librfb/libgstrfbsrc.so.p/gstrfbsrc.c.o -c ../gst/librfb/gstrfbsrc.c
519s In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
519s                  from /usr/include/glib-2.0/gobject/gbinding.h:31,
519s                  from /usr/include/glib-2.0/glib-object.h:24,
519s                  from /usr/include/gstreamer-1.0/gst/gstenumtypes.h:6,
519s                  from /usr/include/gstreamer-1.0/gst/gst.h:32,
519s                  from ../gst/librfb/gstrfbsrc.h:25,
519s                  from ../gst/librfb/gstrfbsrc.c:27:
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h:53:24: error: 
unknown type name ‘GstVideoBufferPoolClass’; did you mean ‘GstBufferPoolClass’?
519s    53 |     VIDEO_DMABUF_POOL, GstVideoBufferPool)
519s       |                        ^~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/gobject/gtype.h:1612:20: note: in definition of 
macro ‘G_DECLARE_FINAL_TYPE’
519s  1612 |   typedef struct { ParentName##Class parent_class; } 
ModuleObjName##Class;                               \
519s       |                    ^~~~~~~~~~
519s In file included from 
/usr/lib/s390x-linux-gnu/glib-2.0/include/glibconfig.h:9,
519s                  from /usr/include/glib-2.0/glib/gtypes.h:34,
519s                  from /usr/include/glib-2.0/glib/galloca.h:34,
519s                  from /usr/include/glib-2.0/glib.h:32,
519s                  from /usr/include/gstreamer-1.0/gst/gst.h:27:
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h: In function 
‘glib_autoptr_clear_GstVideoDmabufPool’:
519s /usr/include/glib-2.0/glib/gmacros.h:1343:49: error: 
‘glib_autoptr_clear_GstVideoBufferPool’ undeclared (first use in this 
function); did you mean ‘glib_autoptr_clear_GstBufferPool’?
519s  1343 | #define _GLIB_AUTOPTR_CLEAR_FUNC_NAME(TypeName) 
glib_autoptr_clear_##TypeName
519s       |                                                 ^~~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/glib/gmacros.h:1361:18: note: in definition of macro 
‘_GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS’
519s  1361 |     { if (_ptr) (cleanup) ((ParentName *) _ptr); }                 
                                             \
519s       |                  ^~~~~~~
519s /usr/include/glib-2.0/glib/gmacros.h:1374:65: note: in expansion of macro 
‘_GLIB_AUTOPTR_CLEAR_FUNC_NAME’
519s  1374 |   _GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS(ModuleObjName, ParentName, 
_GLIB_AUTOPTR_CLEAR_FUNC_NAME(ParentName))
519s       |                                                                 
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/gobject/gtype.h:1614:3: note: in expansion of macro 
‘_GLIB_DEFINE_AUTOPTR_CHAINUP’
519s  1614 |   _GLIB_DEFINE_AUTOPTR_CHAINUP (ModuleObjName, ParentName)         
                                      \
519s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h:52:1: note: in 
expansion of macro ‘G_DECLARE_FINAL_TYPE’
519s    52 | G_DECLARE_FINAL_TYPE (GstVideoDmabufPool, gst_video_dmabuf_pool, 
GST,
519s       | ^~~~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/glib/gmacros.h:1343:49: note: each undeclared 
identifier is reported only once for each function it appears in
519s  1343 | #define _GLIB_AUTOPTR_CLEAR_FUNC_NAME(TypeName) 
glib_autoptr_clear_##TypeName
519s       |                                                 ^~~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/glib/gmacros.h:1361:18: note: in definition of macro 
‘_GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS’
519s  1361 |     { if (_ptr) (cleanup) ((ParentName *) _ptr); }                 
                                             \
519s       |                  ^~~~~~~
519s /usr/include/glib-2.0/glib/gmacros.h:1374:65: note: in expansion of macro 
‘_GLIB_AUTOPTR_CLEAR_FUNC_NAME’
519s  1374 |   _GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS(ModuleObjName, ParentName, 
_GLIB_AUTOPTR_CLEAR_FUNC_NAME(ParentName))
519s       |                                                                 
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/gobject/gtype.h:1614:3: note: in expansion of macro 
‘_GLIB_DEFINE_AUTOPTR_CHAINUP’
519s  1614 |   _GLIB_DEFINE_AUTOPTR_CHAINUP (ModuleObjName, ParentName)         
                                      \
519s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h:52:1: note: in 
expansion of macro ‘G_DECLARE_FINAL_TYPE’
519s    52 | G_DECLARE_FINAL_TYPE (GstVideoDmabufPool, gst_video_dmabuf_pool, 
GST,
519s       | ^~~~~~~~~~~~~~~~~~~~
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h:53:24: error: 
‘GstVideoBufferPool’ undeclared (first use in this function); did you mean 
‘GstVideoBufferFlags’?
519s    53 |     VIDEO_DMABUF_POOL, GstVideoBufferPool)
519s       |                        ^~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/glib/gmacros.h:1361:29: note: in definition of macro 
‘_GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS’
519s  1361 |     { if (_ptr) (cleanup) ((ParentName *) _ptr); }                 
                                             \
519s       |                             ^~~~~~~~~~
519s /usr/include/glib-2.0/gobject/gtype.h:1614:3: note: in expansion of macro 
‘_GLIB_DEFINE_AUTOPTR_CHAINUP’
519s  1614 |   _GLIB_DEFINE_AUTOPTR_CHAINUP (ModuleObjName, ParentName)         
                                      \
519s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h:52:1: note: in 
expansion of macro ‘G_DECLARE_FINAL_TYPE’
519s    52 | G_DECLARE_FINAL_TYPE (GstVideoDmabufPool, gst_video_dmabuf_pool, 
GST,
519s       | ^~~~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/glib/gmacros.h:1361:41: error: expected expression 
before ‘)’ token
519s  1361 |     { if (_ptr) (cleanup) ((ParentName *) _ptr); }                 
                                             \
519s       |                                         ^
519s /usr/include/glib-2.0/glib/gmacros.h:1374:3: note: in expansion of macro 
‘_GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS’
519s  1374 |   _GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS(ModuleObjName, ParentName, 
_GLIB_AUTOPTR_CLEAR_FUNC_NAME(ParentName))
519s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/gobject/gtype.h:1614:3: note: in expansion of macro 
‘_GLIB_DEFINE_AUTOPTR_CHAINUP’
519s  1614 |   _GLIB_DEFINE_AUTOPTR_CHAINUP (ModuleObjName, ParentName)         
                                      \
519s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h:52:1: note: in 
expansion of macro ‘G_DECLARE_FINAL_TYPE’
519s    52 | G_DECLARE_FINAL_TYPE (GstVideoDmabufPool, gst_video_dmabuf_pool, 
GST,
519s       | ^~~~~~~~~~~~~~~~~~~~
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h: In function 
‘glib_autoptr_destroy_GstVideoDmabufPool’:
519s /usr/include/glib-2.0/glib/gmacros.h:1343:49: error: 
‘glib_autoptr_clear_GstVideoBufferPool’ undeclared (first use in this 
function); did you mean ‘glib_autoptr_clear_GstBufferPool’?
519s  1343 | #define _GLIB_AUTOPTR_CLEAR_FUNC_NAME(TypeName) 
glib_autoptr_clear_##TypeName
519s       |                                                 ^~~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/glib/gmacros.h:1365:8: note: in definition of macro 
‘_GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS’
519s  1365 |     { (cleanup) ((ParentName *) _ptr); }                           
                                             \
519s       |        ^~~~~~~
519s /usr/include/glib-2.0/glib/gmacros.h:1374:65: note: in expansion of macro 
‘_GLIB_AUTOPTR_CLEAR_FUNC_NAME’
519s  1374 |   _GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS(ModuleObjName, ParentName, 
_GLIB_AUTOPTR_CLEAR_FUNC_NAME(ParentName))
519s       |                                                                 
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/gobject/gtype.h:1614:3: note: in expansion of macro 
‘_GLIB_DEFINE_AUTOPTR_CHAINUP’
519s  1614 |   _GLIB_DEFINE_AUTOPTR_CHAINUP (ModuleObjName, ParentName)         
                                      \
519s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h:52:1: note: in 
expansion of macro ‘G_DECLARE_FINAL_TYPE’
519s    52 | G_DECLARE_FINAL_TYPE (GstVideoDmabufPool, gst_video_dmabuf_pool, 
GST,
519s       | ^~~~~~~~~~~~~~~~~~~~
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h:53:24: error: 
‘GstVideoBufferPool’ undeclared (first use in this function); did you mean 
‘GstVideoBufferFlags’?
519s    53 |     VIDEO_DMABUF_POOL, GstVideoBufferPool)
519s       |                        ^~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/glib/gmacros.h:1365:19: note: in definition of macro 
‘_GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS’
519s  1365 |     { (cleanup) ((ParentName *) _ptr); }                           
                                             \
519s       |                   ^~~~~~~~~~
519s /usr/include/glib-2.0/gobject/gtype.h:1614:3: note: in expansion of macro 
‘_GLIB_DEFINE_AUTOPTR_CHAINUP’
519s  1614 |   _GLIB_DEFINE_AUTOPTR_CHAINUP (ModuleObjName, ParentName)         
                                      \
519s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h:52:1: note: in 
expansion of macro ‘G_DECLARE_FINAL_TYPE’
519s    52 | G_DECLARE_FINAL_TYPE (GstVideoDmabufPool, gst_video_dmabuf_pool, 
GST,
519s       | ^~~~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/glib/gmacros.h:1365:31: error: expected expression 
before ‘)’ token
519s  1365 |     { (cleanup) ((ParentName *) _ptr); }                           
                                             \
519s       |                               ^
519s /usr/include/glib-2.0/glib/gmacros.h:1374:3: note: in expansion of macro 
‘_GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS’
519s  1374 |   _GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS(ModuleObjName, ParentName, 
_GLIB_AUTOPTR_CLEAR_FUNC_NAME(ParentName))
519s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/glib-2.0/gobject/gtype.h:1614:3: note: in expansion of macro 
‘_GLIB_DEFINE_AUTOPTR_CHAINUP’
519s  1614 |   _GLIB_DEFINE_AUTOPTR_CHAINUP (ModuleObjName, ParentName)         
                                      \
519s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
519s /usr/include/gstreamer-1.0/gst/video/gstvideodmabufpool.h:52:1: note: in 
expansion of macro ‘G_DECLARE_FINAL_TYPE’
519s    52 | G_DECLARE_FINAL_TYPE (GstVideoDmabufPool, gst_video_dmabuf_pool, 
GST,
519s       | ^~~~~~~~~~~~~~~~~~~~

** Affects: gst-plugins-bad1.0 (Ubuntu)
     Importance: Undecided
     Assignee: Charles (charles05)
         Status: New

** Affects: gst-plugins-base1.0 (Ubuntu)
     Importance: Undecided
     Assignee: Charles (charles05)
         Status: New

** Affects: gstreamer1.0 (Ubuntu)
     Importance: High
     Assignee: Charles (charles05)
         Status: In Progress


** Tags: resolute update-excuse

** Also affects: gst-plugins-base1.0 (Ubuntu)
   Importance: Undecided
       Status: New

** Also affects: gst-plugins-bad1.0 (Ubuntu)
   Importance: Undecided
       Status: New

** Changed in: gstreamer1.0 (Ubuntu)
     Assignee: (unassigned) => Charles (charles05)

** Changed in: gst-plugins-bad1.0 (Ubuntu)
     Assignee: (unassigned) => Charles (charles05)

** Changed in: gst-plugins-base1.0 (Ubuntu)
     Assignee: (unassigned) => Charles (charles05)

** Changed in: gstreamer1.0 (Ubuntu)
       Status: New => In Progress

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2137659

Title:
  gst-plugins-bad failing to build on s390x after gstreamer1.0 (->
  1.27.90) migration

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gst-plugins-bad1.0/+bug/2137659/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to