GNOME Bugzilla – Bug 706462
parse: fix build with Bison 3
Last modified: 2013-09-05 16:15:42 UTC
gstreamer needs to be patched slightly to build with Bison 3.
Created attachment 252504 [details] [review]
Patch to support Bison 3
When was YYLEX_PARAM first marked as deprecated ? We need to make sure we still build with not-too-old bison also.
*** Bug 705401 has been marked as a duplicate of this bug. ***
Many thanks for the patch!
Author: Kerrick Staley <email@example.com>
Date: Tue Aug 20 23:59:29 2013 -0700
parse: make grammar.y work with Bison 3
YYLEX_PARAM is no longer supported in Bison 3.
It works fine for me with bison 2.5 as well, and googling finds references to 'why was YYLEX_PARAM deprecated' and 'lex-param' from 2003, so it looks like it should be alright :)
I applied the patch and the build completed without error, but running
resulted in a segmentation fault:
Yes, the command should have some parameters, but not having any should error out, not segfault. The same test using Bison 2.7 works properly.
Could you run:
$ GST_CHECKS=test_launch_lines make -C tests/check/ pipelines/parse-launch.valgrind
from the top-level gstreamer directory?
Created attachment 252606 [details]
Run of valgrind as requested
Failure with Bison-3.0.
GST_CHECKS=test_launch_lines make -C tests/check/ pipelines/parse-launch.valgrind
Final result was:
make: *** [pipelines/parse-launch.valgrind] Error 1
Well, that was a challenge. I didn't have valgrind on my system. I went out and retrieved the valgrind source and tried to build it, but it only supports glibc versions 2.2 - 2.16. Even the tip of their svn tree only supports 2.17.
I'm running glibc-2.18. Modifying configure allowed valgrind to build.
The target gstreamer is 1.0.9. I had to rerun ./configure && make to get it to recognize valgrind, but the results are attached.
Thanks for the effort. valgrind is a great tool to have installed if you're doing C/C++ development.
The test seems to pass for our purposes.
Does a simple 'make check' pass?
Yes, 'make check' gives:
All 8 tests passed
I guess the segfault of gst-launch-1.0 with no parameters is a lower priority, but it should be addressed. There may be a latent problem behind that.
Oh, I was missing the fact that it was an empty pipeline :)
Let's create another bug for that then and keep this one closed.
Cherry-picked into 1.0 branch.
Apologies for bumping a Closed/Fixed bug report, but will this fix be backported to 0.10, which is also affected?
I have cherry-picked this into the 0.10 branch now. In general 0.10 is pretty much abandoned and unmaintained, however.