[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] libxl: Fix building libxlu_cfg_y.y with bison 3.0



On Tue, Dec 02, 2014 at 01:47:16PM +0000, Ian Campbell wrote:
> On Mon, 2014-12-01 at 12:19 +0000, Wei Liu wrote:
> > On Mon, Dec 01, 2014 at 09:42:13AM +0000, Ian Campbell wrote:
> > > On Sat, 2014-11-29 at 21:23 -0800, Ed Swierk wrote:
> > > > - Use %lex-param instead of obsolete YYLEX_PARAM to override lex scanner
> > > >   parameter
> > > > - Change deprecated %name-prefix= to %name-prefix
> > > > 
> > > > Tested against bison 2.4.1 and 3.0.2.
> > > > 
> > > > Signed-off-by: Ed Swierk <eswierk@xxxxxxxxxxxxxxxxxx>
> > > 
> > > Copying Ian J who is the bison guy among the toolstack maintainers.
> > > 
> > 
> > FWIW I can confirm that libxlu_cfg_y.y won't build in Debian Jessie
> > (bison 3.0.2) as is. And this patch fixes the problem for me.
> 
> That would seem like a pretty strong case for 4.5, *except* we ship the
> generated files so it should be possible to build anywhere without
> requiring any version of bison at all. If Bison is installed then
> "./configure BISON=/bin/true" or some such might be needed to stop it
> trying to regenerate.
> 
> Konrad, any thoughts.

Using the autogenerated one means that it might introduce a bug.

However we do allow regeneration of it - and it would be a shame if
the auto-generated well, could not be autogenerated!

That is a bug, not a major one, but a bug nonethless.

It is not a regression thought.

The build systems (debian, fedora) all have buildrequires which do
not list 'bison' and as such don't encounter this I think - which means
it is only encountered by folks who build from the sources - which
is a small list.

I would lean towards documenting this in the release notes (the work
around mentioned above) and defer this to Xen 4.6.



> 
> > 
> > Wei.
> > 
> > > > ---
> > > >  tools/libxl/libxlu_cfg_y.y | 6 +++---
> > > >  1 file changed, 3 insertions(+), 3 deletions(-)
> > > > 
> > > > diff --git a/tools/libxl/libxlu_cfg_y.y b/tools/libxl/libxlu_cfg_y.y
> > > > index aa9f787..5acd438 100644
> > > > --- a/tools/libxl/libxlu_cfg_y.y
> > > > +++ b/tools/libxl/libxlu_cfg_y.y
> > > > @@ -17,7 +17,7 @@
> > > >   */
> > > >  
> > > >  %{
> > > > -#define YYLEX_PARAM ctx->scanner
> > > > +#define ctx_scanner ctx->scanner
> > > >  #include "libxlu_cfg_i.h"
> > > >  #include "libxlu_cfg_l.h"
> > > >  %}
> > > > @@ -31,9 +31,9 @@
> > > >  %pure-parser
> > > >  %defines
> > > >  %error-verbose
> > > > -%name-prefix="xlu__cfg_yy"
> > > > +%name-prefix "xlu__cfg_yy"
> > > >  %parse-param { CfgParseContext *ctx }
> > > > -%lex-param { void *scanner }
> > > > +%lex-param { ctx_scanner }
> > > >  
> > > >  %token <string>                IDENT STRING NUMBER NEWLINE
> > > >  %type <string>            atom
> > > 
> > > 
> > > 
> > > _______________________________________________
> > > Xen-devel mailing list
> > > Xen-devel@xxxxxxxxxxxxx
> > > http://lists.xen.org/xen-devel
> 
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.