Bug 98473 - Mesa fails to build with flex 2.6.2
Summary: Mesa fails to build with flex 2.6.2
Status: RESOLVED NOTOURBUG
Alias: None
Product: Mesa
Classification: Unclassified
Component: Mesa core (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact: mesa-dev
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 98471
  Show dependency treegraph
 
Reported: 2016-10-28 14:30 UTC by Emil Velikov
Modified: 2018-04-10 05:47 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Emil Velikov 2016-10-28 14:30:39 UTC
Messages like the following can be seen which indicate that, the defines are missing and one has to manually change the leading "yy" with the appropriate prefix.

Issue covers all three lexers - glsl, glcpp an mesa/program.

./src/compiler/glsl/glsl_lexer.ll: In function ‘void _mesa_glsl_lexer_ctor(_mesa_glsl_parse_state*, const char*)’:
./src/compiler/glsl/glsl_lexer.ll:631:44: error: ‘yylex_init_extra’ was not declared in this scope
    yy_scan_string(string, state->scanner);
                                            ^
./src/compiler/glsl/glsl_lexer.ll:632:41: error: ‘yy_scan_string’ was not declared in this scope
 }
                                         ^
./src/compiler/glsl/glsl_lexer.ll: In function ‘void _mesa_glsl_lexer_dtor(_mesa_glsl_parse_state*)’:
./src/compiler/glsl/glsl_lexer.ll:638:32: error: ‘yylex_destroy’ was not declared in this scope
 }
                                ^
Comment 1 Emil Velikov 2016-10-28 14:31:42 UTC
The following should address the issue, although the question stands: are we doing something wrong or this is a flex bug.

https://patchwork.freedesktop.org/series/14477/
Comment 2 Mike Lothian 2016-10-28 14:57:43 UTC
Is this a blocker for 13? The release won't need flex to compile as it'll be pre-generated for the tarball
Comment 3 Emil Velikov 2016-10-28 16:20:45 UTC
(In reply to Mike Lothian from comment #2)
> Is this a blocker for 13? The release won't need flex to compile as it'll be
> pre-generated for the tarball

That's correct. Some distros still do autoreconf + friends which leads (not 100% sure) to those being re-generated.

Fwiw this and others are more of "personal favourites". If they're not ready for 13.0.0, there's always 13.0.1 ;-)
Comment 4 Timothy Arceri 2016-11-03 22:43:09 UTC
Looks like a flex bug:

https://github.com/westes/flex/issues/113


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.