Summary: | autogen missing dependency on flex and bison, causes infinite loop in glsl build | ||
---|---|---|---|
Product: | Mesa | Reporter: | Darxus <darxus> |
Component: | Other | Assignee: | mesa-dev |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | medium | CC: | darxus, freedesktop, k00_fol, mattst88, simos.bugzilla |
Version: | git | Keywords: | patch |
Hardware: | All | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
patch
patch to fix lex detection patch |
Description
Darxus
2012-03-12 12:04:52 UTC
Created attachment 58416 [details] [review] patch Good catch! I tested the patch against current master and it worked well in detecting a missing flex. (I also run into the very confusing Makefile infinite loop before) Also worth noting that with the patch, it's still possible to build the i965 driver fine without having bison installed. It -shouldn't- be possible...the GLSL compiler makes use of Bison-specific features... Thanks Kenneth, you're right. I had hit a bug where `make distclean` wasn't removing the old bison-generated files. This might explain why my last two bisects went bad. I committed a patch that fixes the case when we don't need bison (eg, we have the generated files provided in the tarball and therefore don't need bison) http://cgit.freedesktop.org/mesa/mesa/commit/?id=ba4a36d8cdd6425c1263026e953cc3977d1192c6 As such, I'm marking this fixed. The check for lex seems to be missing. I didn't have it installed and got weird errors from ylwrap. (In reply to comment #6) > The check for lex seems to be missing. I didn't have it installed and got > weird errors from ylwrap. I didn't think it would be needed, but seems it is. I'll make a patch. Thanks. While at it, glsl also seems to require a C++ compiler but configure doesn't check for it. I didn't have g++ installed and hit it mid-make. configure.ac most certainly uses AC_PROG_CXX, which checks for a C++ compiler. There should be no problem there. Created attachment 66899 [details] [review] patch to fix lex detection How about this? Thanks. I'll check both issues tomorrow night. (In reply to comment #11) > Thanks. I'll check both issues tomorrow night. I think these changes have not been pushed yet to master. I got an error while compiling Mesa from git. Autogen correctly did not find flex or lex, but did not complain. Then, compilation failed with no informative information (no infinite loop). I am re-opening this report. Fixed with http://cgit.freedesktop.org/mesa/mesa/commit/?id=2a710543968b6710368d53dbff350d2d23e08268 The commit 2a71054396 and its parent (for Bison) break configure for me. checking if bison is the parser generator... yes ./configure: line 19532: syntax error near unexpected token `fi' ./configure: line 19532: `fi' Indeed the else-fi sections are empty, which makes bash unhappy. My autoconf is 2.61, if that is too old, please mark the required version so that autogen bails early. Created attachment 73866 [details] [review] patch (In reply to comment #15) > The commit 2a71054396 and its parent (for Bison) break configure for me. > > checking if bison is the parser generator... yes > ./configure: line 19532: syntax error near unexpected token `fi' > ./configure: line 19532: `fi' > > Indeed the else-fi sections are empty, which makes bash unhappy. > > My autoconf is 2.61, if that is too old, please mark the required version so > that autogen bails early. I don't think that's it. It looks like I'm missing a comma between the test and run-if-true in AS_IF. Pushed to master and 9.1. |
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.