gst-plugins-bad1.0 FTBFS: mirclient headers needed

Bug #1465958 reported by Steve Langasek
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
gst-plugins-bad1.0 (Ubuntu)
Fix Released
High
Steve Langasek
platform-api (Ubuntu)
Fix Released
High
Mir development team

Bug Description

The gst-plugins-bad1.0 package fails to build in Ubuntu since before the vivid release. The latest build failure, for a no-change rebuild for the libnettle transition, can be seen at <https://launchpad.net/ubuntu/+source/gst-plugins-bad1.0/1.4.5-1ubuntu4/+build/7539541>:

libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../.. -D_FORTIFY_SOURCE=2 -I../../gst-libs -I../../gst-libs -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -DGST_USE_UNSTABLE_API -DG_THREADS_MANDATORY -DG_DISABLE_CAST_CHECKS -DG_DISABLE_ASSERT -Wall -Wdeclaration-after-statement -Wvla -Wpointer-arith -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wwrite-strings -Wformat-security -Wold-style-definition -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar -Wnested-externs -g -I/usr/include/orc-0.4 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-error -c gstamchybris.c -fPIC -DPIC -o .libs/libgstandroidmedia_la-gstamchybris.o
[...]
In file included from /usr/include/ubuntu/application/ui/window.h:31:0,
                 from gstamc.h:35,
                 from gstamchybris.c:27:
/usr/include/ubuntu/application/instance.h:28:44: fatal error: mir_toolkit/mir_client_library.h: No such file or directory
 #include <mir_toolkit/mir_client_library.h>
                                            ^
compilation terminated.

This failure happens only on armhf and i386 architectures, which are the only ones where libgstandroidmedia is enabled.

There are two related bugs here. First, the sys/androidmedia makefile is failing to reference the ubuntu-platform-api pkg-config, which is the expected way to find include paths etc for a library that's being referenced; instead includes of <ubuntu/application/ui/[...]> are hard-coded in sys/androidmedia/gstamc.h. (The pkg-config .pc file indicates includes of <application/ui/[...]> are expected.) Second, the ubuntu-platform-api .pc file lacks a Requires: declaration against mirclient, despite the fact that ubuntu-platform-api references headers from Mir.

Both of these bugs should be fixed in order to properly fix the gst-plugins-bad1.0 build failure.

Tags: patch

Related branches

Revision history for this message
Steve Langasek (vorlon) wrote :

Here's the patch which fixes gst-plugins-bad1.0. ubuntu-platform-api still needs to add the Requires.private: mirclient to its pkg-config in order for this to work.

Steve Langasek (vorlon)
Changed in platform-api (Ubuntu):
importance: Undecided → High
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in gst-plugins-bad1.0 (Ubuntu):
status: New → Confirmed
Changed in platform-api (Ubuntu):
status: New → Confirmed
Revision history for this message
Steve Langasek (vorlon) wrote :

gst-plugins-bad1.0 uploaded to wily-proposed, but will only build on i386+armhf when the platform-api fix also lands.

Changed in gst-plugins-bad1.0 (Ubuntu):
assignee: nobody → Steve Langasek (vorlon)
status: Confirmed → Fix Committed
importance: Undecided → High
tags: added: patch
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gst-plugins-bad1.0 - 1.4.5-1ubuntu6

---------------
gst-plugins-bad1.0 (1.4.5-1ubuntu6) wily; urgency=medium

  * debian/patches/mirclient-requires.patch, debian/build-deps.in: Explicitly
    include mirclient's CFLAGS and LIBS even though they are only indirectly
    (by platform-api) required. Resolves FTBFS and can be removed once bug
    #1465958 is fixed.

 -- Iain Lane <email address hidden> Wed, 24 Jun 2015 17:48:12 +0100

Changed in gst-plugins-bad1.0 (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Iain Lane (laney) wrote :

The used headers are removed in platform-api in ppa:ci-train-ppa-service/landing-013 so code changes are required.

Revision history for this message
Alberto Aguirre (albaguirre) wrote :

So it turns out platform-api usage is actually not in use (#if 0'ed out): So here's a debdiff that removes referecing the now non-existent platform-api types and headers.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package platform-api - 3.0.0+15.10.20150706-0ubuntu1

---------------
platform-api (3.0.0+15.10.20150706-0ubuntu1) wily; urgency=medium

  [ Robert Carr ]
  * Remove deprecated ua_ui_* functions.
  * Remove mirserver backend

  [ CI Train Bot ]
  * New rebuild forced.

  [ Steve Langasek ]
  * Fix pkg-config to declare the dependency on mirclient headers. (LP:
    #1465958)

 -- CI Train Bot <email address hidden> Mon, 06 Jul 2015 17:53:08 +0000

Changed in platform-api (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.