Patchwork [1/1] gst-plugins-bad: add curl as build dependency

login
register
mail settings
Submitter Dongxiao Xu
Date April 14, 2012, 10:44 a.m.
Message ID <7a59efe236b3ebd7472ce95bf75b9b5a27ba656c.1334400035.git.dongxiao.xu@intel.com>
Download mbox | patch
Permalink /patch/25819/
State Accepted
Commit daa4d625524dc330786858ade570918cff0bc5d3
Headers show

Comments

Dongxiao Xu - April 14, 2012, 10:44 a.m.
gst-plugins-bad needs curl.h to finish its build, so add curl as its
dependency.

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 .../gstreamer/gst-plugins-bad_0.10.23.bb           |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Koen Kooi - April 14, 2012, 11:23 a.m.
Op 14 apr. 2012, om 12:44 heeft Dongxiao Xu het volgende geschreven:

> gst-plugins-bad needs curl.h to finish its build, so add curl as its
> dependency.

I can't be sure without the exact failure log, but: missing PR bump

regards,

Koen
Dongxiao Xu - April 14, 2012, 11:47 p.m.
On Sat, 2012-04-14 at 13:23 +0200, Koen Kooi wrote:
> Op 14 apr. 2012, om 12:44 heeft Dongxiao Xu het volgende geschreven:
> 
> > gst-plugins-bad needs curl.h to finish its build, so add curl as its
> > dependency.
> 
> I can't be sure without the exact failure log, but: missing PR bump

Add a dependency here doesn't impact the original build. If the original
build is successful, it means curl has already been built by chance. Do
we still need to bump PR in this case?

Besides, this is the detailed log:

i586-poky-linux-libtool: compile:  i586-poky-linux-gcc -m32 -march=i586
--sysroot=/distro/sdb/build-master/tmp/sysroots/qemux86 -std=gnu99
-DHAVE_CONFIG_H -I. -I../.. -pthread
-I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -pthread -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -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 -O2 -pipe -g -feliminate-unused-debug-types -c gstcurlsink.c  -fPIC -DPIC -o .libs/libgstcurl_la-gstcurlsink.o
i586-poky-linux-libtool: compile:  i586-poky-linux-gcc -m32 -march=i586
--sysroot=/distro/sdb/build-master/tmp/sysroots/qemux86 -std=gnu99
-DHAVE_CONFIG_H -I. -I../.. -pthread
-I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -pthread -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -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 -O2 -pipe -g -feliminate-unused-debug-types -c gstcurl.c  -fPIC -DPIC -o .libs/libgstcurl_la-gstcurl.o
gstcurlsink.c:45:23: fatal error: curl/curl.h: No such file or directory
compilation terminated.
make[3]: *** [libgstcurl_la-gstcurlsink.lo] Error 1
make[3]: *** Waiting for unfinished jobs....

Thanks,
Dongxiao
> 
> regards,
> 
> Koen
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Andreas Oberritter - April 16, 2012, 2:40 p.m.
On 15.04.2012 01:47, Xu, Dongxiao wrote:
> On Sat, 2012-04-14 at 13:23 +0200, Koen Kooi wrote:
>> Op 14 apr. 2012, om 12:44 heeft Dongxiao Xu het volgende geschreven:
>>
>>> gst-plugins-bad needs curl.h to finish its build, so add curl as its
>>> dependency.
>>
>> I can't be sure without the exact failure log, but: missing PR bump
> 
> Add a dependency here doesn't impact the original build. If the original
> build is successful, it means curl has already been built by chance. Do
> we still need to bump PR in this case?
> 
> Besides, this is the detailed log:
> 
> i586-poky-linux-libtool: compile:  i586-poky-linux-gcc -m32 -march=i586
> --sysroot=/distro/sdb/build-master/tmp/sysroots/qemux86 -std=gnu99
> -DHAVE_CONFIG_H -I. -I../.. -pthread
> -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -pthread -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -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 -O2 -pipe -g -feliminate-unused-debug-types -c gstcurlsink.c  -fPIC -DPIC -o .libs/libgstc
 ur
>  l_la-gstcurlsink.o
> i586-poky-linux-libtool: compile:  i586-poky-linux-gcc -m32 -march=i586
> --sysroot=/distro/sdb/build-master/tmp/sysroots/qemux86 -std=gnu99
> -DHAVE_CONFIG_H -I. -I../.. -pthread
> -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -pthread -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -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 -O2 -pipe -g -feliminate-unused-debug-types -c gstcurl.c  -fPIC -DPIC -o .libs/libgstcurl_
 la
>  -gstcurl.o
> gstcurlsink.c:45:23: fatal error: curl/curl.h: No such file or directory
> compilation terminated.
> make[3]: *** [libgstcurl_la-gstcurlsink.lo] Error 1
> make[3]: *** Waiting for unfinished jobs....

That's certainly wrong, because for me curl is a new dependency, i.e. it
didn't need to be built before this patch went in.

The error above is probably the symptom of a race condition, where curl
was rebuilt and thus removed from the sysroot after gst-plugins-bad was
configured.

So either a PR bump is required or --disable-curl (or such) should have
been used instead.

Regards,
Andreas
Richard Purdie - April 17, 2012, 11:34 a.m.
On Mon, 2012-04-16 at 16:40 +0200, Andreas Oberritter wrote:
> On 15.04.2012 01:47, Xu, Dongxiao wrote:
> > On Sat, 2012-04-14 at 13:23 +0200, Koen Kooi wrote:
> >> Op 14 apr. 2012, om 12:44 heeft Dongxiao Xu het volgende geschreven:
> >>
> >>> gst-plugins-bad needs curl.h to finish its build, so add curl as its
> >>> dependency.
> >>
> >> I can't be sure without the exact failure log, but: missing PR bump
> > 
> > Add a dependency here doesn't impact the original build. If the original
> > build is successful, it means curl has already been built by chance. Do
> > we still need to bump PR in this case?
> > 
> > Besides, this is the detailed log:
> > 
> > i586-poky-linux-libtool: compile:  i586-poky-linux-gcc -m32 -march=i586
> > --sysroot=/distro/sdb/build-master/tmp/sysroots/qemux86 -std=gnu99
> > -DHAVE_CONFIG_H -I. -I../.. -pthread
> > -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -pthread -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -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 -O2 -pipe -g -feliminate-unused-debug-types -c gstcurlsink.c  -fPIC -DPIC -o .libs/libg!
 stc
>  ur
> >  l_la-gstcurlsink.o
> > i586-poky-linux-libtool: compile:  i586-poky-linux-gcc -m32 -march=i586
> > --sysroot=/distro/sdb/build-master/tmp/sysroots/qemux86 -std=gnu99
> > -DHAVE_CONFIG_H -I. -I../.. -pthread
> > -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -pthread -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/gstreamer-0.10 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/glib-2.0 -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/lib/glib-2.0/include -I/distro/sdb/build-master/tmp/sysroots/qemux86/usr/include/libxml2 -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 -O2 -pipe -g -feliminate-unused-debug-types -c gstcurl.c  -fPIC -DPIC -o .libs/libgstcu!
 rl_
>  la
> >  -gstcurl.o
> > gstcurlsink.c:45:23: fatal error: curl/curl.h: No such file or directory
> > compilation terminated.
> > make[3]: *** [libgstcurl_la-gstcurlsink.lo] Error 1
> > make[3]: *** Waiting for unfinished jobs....
> 
> That's certainly wrong, because for me curl is a new dependency, i.e. it
> didn't need to be built before this patch went in.
> 
> The error above is probably the symptom of a race condition, where curl
> was rebuilt and thus removed from the sysroot after gst-plugins-bad was
> configured.
> 
> So either a PR bump is required or --disable-curl (or such) should have
> been used instead.

I want the builds to be deterministic so either enabling curl (via
DEPENDS) or disabling it through the configure option would be fine. I
went with adding curl since gst-plugins-bad is one of the last packages
to build on the autobuilder and hence it would usually have had curl
built so that is the most tested configuration I'm aware of.

I've pushed a PR bump.

Cheers,

Richard

Patch

diff --git a/meta/recipes-multimedia/gstreamer/gst-plugins-bad_0.10.23.bb b/meta/recipes-multimedia/gstreamer/gst-plugins-bad_0.10.23.bb
index 656b61e..fbe1709 100644
--- a/meta/recipes-multimedia/gstreamer/gst-plugins-bad_0.10.23.bb
+++ b/meta/recipes-multimedia/gstreamer/gst-plugins-bad_0.10.23.bb
@@ -6,7 +6,7 @@  LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \
                     file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605 \
                     file://gst/tta/crc32.h;beginline=12;endline=29;md5=71a904d99ce7ae0c1cf129891b98145c"
 
-DEPENDS += "gst-plugins-base libmusicbrainz tremor librsvg"
+DEPENDS += "gst-plugins-base libmusicbrainz tremor librsvg curl"
 
 PR = "r1"