Opened 10 years ago

Closed 8 years ago

#39923 closed defect (fixed)

webkit-gtk @2.04: build failure with Bison 3.0

Reported by: istlota@… Owned by: larryv (Lawrence Velázquez)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: dbevans (David B. Evans), g4@…, mww@…, onurdomanic@…, diochnos, c.maglie@…, andrewrinehart@…, mbrethen, dcecchin@…, papachoco (Carlos Sanchez), xionglingfeng@…, stefan.bollmann@…, andrew.long@…, chief1983@…, robert_snell@…, adamb2903, tony.li@…, jeremyhu (Jeremy Huddleston Sequoia)
Port: webkit-gtk bison

Description

Every week, I do a sudo port upgrade outdated. This week, it prompted mac ports to be updated from v2.1.3 to 2.2.0, which worked. But, when it attempted to upgrade webkit-gtk from v2.03 to v2.04, that failed with the error contained in the main.log which I will attach.

Attachments (2)

webkit-gtk build failure main.log.zip (693.8 KB) - added by istlota@… 10 years ago.
Istlota's webkit-gtk failure main.log
webkit2.0-bison3.patch (1.7 KB) - added by larryv (Lawrence Velázquez) 8 years ago.
adaptation of upstream fix

Download all attachments as: .zip

Change History (37)

Changed 10 years ago by istlota@…

Istlota's webkit-gtk failure main.log

comment:1 Changed 10 years ago by mielket@…

Am getting exactly the same error and log output. The root cause seems to be this compilation error logged:

:info:build DerivedSources/ANGLE/glslang_tab.cpp:1785:16: error: no matching function for call to 'yylex'
:info:build       yychar = yylex (&yylval);
:info:build                ^~~~~
:info:build DerivedSources/ANGLE/glslang_tab.cpp:279:12: note: candidate function not viable: requires 2 arguments, but 1 was provided
:info:build extern int yylex(YYSTYPE* yylval_param, void* yyscanner);
:info:build            ^
:info:build 1 error generated.
:info:build make[1]: *** [DerivedSources/ANGLE/libWebCore_la-glslang_tab.lo] Error 1
:info:build make[1]: *** Waiting for unfinished jobs....

comment:2 Changed 10 years ago by cooljeanius (Eric Gallager)

This is comment:ticket:39598:109 which I guess should be broken off into a separate ticket...

(There's also #39910 which is related, btw...)

Edit: Wait, you're the same person quoted in that comment... nvm...

Last edited 10 years ago by cooljeanius (Eric Gallager) (previous) (diff)

comment:3 Changed 10 years ago by larryv (Lawrence Velázquez)

Cc: devans@… added
Owner: changed from macports-tickets@… to jeremyhu@…
Summary: Update of webkit-gtk from v2.03 to v2.04 failswebkit-gtk @2.04: build failure with bison @3.0
Type: updatedefect
Version: 2.2.0

Please Cc relevant port maintainers (port info --maintainers) in the future.

comment:4 Changed 10 years ago by larryv (Lawrence Velázquez)

Cc: g4@… added
Summary: webkit-gtk @2.04: build failure with bison @3.0webkit-gtk @2.04: build failure with bison @3.0_0

Has duplicate #39930.

comment:5 Changed 10 years ago by tonior@…

Cc: tonior@… added

Cc Me!

comment:6 Changed 10 years ago by jeremyhu (Jeremy Huddleston Sequoia)

comment:7 Changed 10 years ago by dbevans (David B. Evans)

Cc: mww@… added

Here's at least part of the problem:

Excerpt from bison 3.0 NEWS file:

** Backward incompatible changes

*** Obsolete features

  '''Support for YYLEX_PARAM and YYPARSE_PARAM is removed''' (deprecated in Bison
  1.875): use %lex-param, %parse-param, or %param.

Grep shows:

webkitgtk-2.0.4 devans$ grep -R YYLEX_PARAM *
DerivedSources/ANGLE/glslang_tab.cpp:#define YYLEX_PARAM context->scanner
Source/ThirdParty/ANGLE/src/compiler/glslang.y:#define YYLEX_PARAM context->scanner
Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp:#ifdef YYLEX_PARAM
Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp:# define YYLEX yylex (&yylval, YYLEX_PARAM)

webkitgtk-2.0.4 devans$ grep -R YYPARSE_PARAM *
Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp:#ifdef YYPARSE_PARAM
Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp:int yyparse (void *YYPARSE_PARAM);
Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp:#else /* ! YYPARSE_PARAM */
Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp:#endif /* ! YYPARSE_PARAM */
Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp:#ifdef YYPARSE_PARAM
Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp:yyparse (void *YYPARSE_PARAM)
Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp:yyparse (YYPARSE_PARAM)
Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp:    void *YYPARSE_PARAM;
Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp:#else /* ! YYPARSE_PARAM */

This code is from the Google ANGLE Project. Perhaps it would be expedient to revert bison to its pre-3.0 version until this is ironed out upstream.

comment:8 in reply to:  7 ; Changed 10 years ago by larryv (Lawrence Velázquez)

Replying to devans@…:

Perhaps it would be expedient to revert bison to its pre-3.0 version until this is ironed out upstream.

Or create a bison2 port.

(Tangentially, webkit-gtk doesn’t currently declare a build dependency on bison, but it should.)

comment:9 Changed 10 years ago by onurdomanic@…

Cc: onurdomanic@… added

Cc Me!

comment:10 Changed 10 years ago by diochnos

Cc: diochnos@… added

Cc Me!

comment:11 Changed 10 years ago by c.maglie@…

Cc: c.maglie@… added

Cc Me!

comment:12 in reply to:  8 Changed 10 years ago by dbevans (David B. Evans)

Replying to larryv@…:

(Tangentially, webkit-gtk doesn’t currently declare a build dependency on bison, but it should.)

Explicit dependencies on bison, flex added in r108797. Bison was previously loaded implicitly.

comment:13 Changed 10 years ago by larryv (Lawrence Velázquez)

Cc: andrewrinehart@… added

Has duplicate #39955.

comment:14 Changed 10 years ago by mbrethen

Cc: mark.brethen@… added

Cc Me!

comment:15 Changed 10 years ago by dcecchin@…

Cc: dcecchin@… added

Cc Me!

comment:16 in reply to:  8 Changed 10 years ago by cooljeanius (Eric Gallager)

Replying to larryv@…:

Replying to devans@…:

Perhaps it would be expedient to revert bison to its pre-3.0 version until this is ironed out upstream.

Or create a bison2 port.

That'd be the solution that I would go with.

comment:17 Changed 10 years ago by larryv (Lawrence Velázquez)

Cc: papachoco@… xionglingfeng@… added

Has duplicates #39957 and #39960.

comment:18 Changed 10 years ago by stefan.bollmann@…

Cc: stefan.bollmann@… added

Cc Me!

comment:19 Changed 10 years ago by andrew.long@…

Cc: andrew.long@… added

Cc Me!

comment:20 Changed 10 years ago by chief1983@…

Cc: chief1983@… added

Cc Me!

comment:21 Changed 10 years ago by robert_snell@…

Cc: robert_snell@… added

Cc Me!

comment:22 Changed 10 years ago by adamb2903

Cc: adam.bartley@… added

Cc Me!

comment:23 Changed 10 years ago by ci42

Has duplicate #39964.

comment:24 Changed 10 years ago by tony.li@…

Cc: tony.li@… added

Cc Me!

comment:25 Changed 10 years ago by tony.li@…

Workaround:

port activate bison@2.7.1_9
port clean webkit-gtk 
port upgrade webkit-gtk

comment:26 Changed 10 years ago by larryv (Lawrence Velázquez)

Summary: webkit-gtk @2.04: build failure with bison @3.0_0webkit-gtk @2.04: build failure with Bison 3.0

The bison port was rolled back to 2.7.1 in r108830. Clean webkit-gtk, do a selfupdate + upgrade outdated, and try again.

Last edited 10 years ago by larryv (Lawrence Velázquez) (previous) (diff)

comment:27 Changed 10 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Owner: changed from jeremyhu@… to mww@…
Port: bison added

comment:28 Changed 10 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Cc: jeremyhu@… added

Cc Me!

comment:29 Changed 10 years ago by istlota@…

That fixed it. This time, when I did a sudo port upgrade outdated, bison was downgraded from v3.0.0 to v2.7.1, after which harfbuzz-icu upgraded to v0.9.19_2 and webkit-gtk upgraded successfully to v2.0.4_1. Thanks.

comment:30 Changed 9 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Resolution: fixed
Status: newclosed

Fixed upstream. Worked around in MacPorts.

Changed 8 years ago by larryv (Lawrence Velázquez)

Attachment: webkit2.0-bison3.patch added

adaptation of upstream fix

comment:31 Changed 8 years ago by larryv (Lawrence Velázquez)

Resolution: fixed
Status: closedreopened

I’ve backported upstream’s fix, and it seems to work fine in my Mountain Lion VM. May I commit it? This is blocking #41600.

comment:32 Changed 8 years ago by tonior@…

Cc: tonior@… removed

Cc Me!

comment:33 in reply to:  31 ; Changed 8 years ago by dbevans (David B. Evans)

Replying to larryv@…:

I’ve backported upstream’s fix, and it seems to work fine in my Mountain Lion VM. May I commit it? This is blocking #41600.

Ok with me as long as you fix it if it breaks (I don't have a machine to test) :-) .

comment:34 in reply to:  33 Changed 8 years ago by larryv (Lawrence Velázquez)

Owner: changed from mww@… to larryv@…
Status: reopenednew

Replying to devans@…:

Ok with me as long as you fix it if it breaks (I don't have a machine to test) :-) .

Fair enough :P

comment:35 Changed 8 years ago by larryv (Lawrence Velázquez)

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.