RESOLVED FIXED Bug 93487
[CMAKE][EFL] Fix build break with --tiled-backing-store
https://bugs.webkit.org/show_bug.cgi?id=93487
Summary [CMAKE][EFL] Fix build break with --tiled-backing-store
Ryuan Choi
Reported 2012-08-08 08:27:35 PDT
I got below compile errors when compiled with --tiled-backing-store. CMakeFiles/webcore_efl.dir/__/ThirdParty/ANGLE/src/compiler/glslang_lex.cpp.o: In function `yy_flush_buffer(yy_buffer_state*, void*)': glslang_lex.cpp:(.text+0x2e0): multiple definition of `yy_flush_buffer(yy_buffer_state*, void*)' CMakeFiles/webcore_efl.dir/__/__/DerivedSources/WebCore/glslang.cpp.o:glslang.cpp:(.text+0x2e0): first defined here CMakeFiles/webcore_efl.dir/__/ThirdParty/ANGLE/src/compiler/glslang_lex.cpp.o: In function `yyget_extra(void*)': glslang_lex.cpp:(.text+0x360): multiple definition of `yyget_extra(void*)' CMakeFiles/webcore_efl.dir/__/__/DerivedSources/WebCore/glslang.cpp.o:glslang.cpp:(.text+0x360): first defined here CMakeFiles/webcore_efl.dir/__/ThirdParty/ANGLE/src/compiler/glslang_lex.cpp.o: In function `yyget_lineno(void*)': glslang_lex.cpp:(.text+0x370): multiple definition of `yyget_lineno(void*)' CMakeFiles/webcore_efl.dir/__/__/DerivedSources/WebCore/glslang.cpp.o:glslang.cpp:(.text+0x370): first defined here CMakeFiles/webcore_efl.dir/__/ThirdParty/ANGLE/src/compiler/glslang_lex.cpp.o: In function `yyget_column(void*)': glslang_lex.cpp:(.text+0x390): multiple definition of `yyget_column(void*)' CMakeFiles/webcore_efl.dir/__/__/DerivedSources/WebCore/glslang.cpp.o:glslang.cpp:(.text+0x390): first defined here CMakeFiles/webcore_efl.dir/__/ThirdParty/ANGLE/src/compiler/glslang_lex.cpp.o: In function `yyget_in(void*)': glslang_lex.cpp:(.text+0x3b0): multiple definition of `yyget_in(void*)' CMakeFiles/webcore_efl.dir/__/__/DerivedSources/WebCore/glslang.cpp.o:glslang.cpp:(.text+0x3b0): first defined here CMakeFiles/webcore_efl.dir/__/ThirdParty/ANGLE/src/compiler/glslang_lex.cpp.o: In function `yyget_out(void*)': glslang_lex.cpp:(.text+0x3c0): multiple definition of `yyget_out(void*)' CMakeFiles/webcore_efl.dir/__/__/DerivedSources/WebCore/glslang.cpp.o:glslang.cpp:(.text+0x3c0): first defined here CMakeFiles/webcore_efl.dir/__/ThirdParty/ANGLE/src/compiler/glslang_lex.cpp.o: In function `yyget_leng(void*)': glslang_lex.cpp:(.text+0x3d0): multiple definition of `yyget_leng(void*)' I checked that other ports does not include glslang_lex.cpp.
Attachments
Patch (1.48 KB, patch)
2012-08-08 08:30 PDT, Ryuan Choi
no flags
Patch (2.45 KB, patch)
2012-08-09 15:49 PDT, Ryuan Choi
no flags
Ryuan Choi
Comment 1 2012-08-08 08:30:11 PDT
Raphael Kubo da Costa (:rakuco)
Comment 2 2012-08-08 09:13:52 PDT
Does the _tab.cpp file also cause problems? Do you know whether it makes sense to generate these files instead of using the generated ones from ANGLE?
Ryuan Choi
Comment 3 2012-08-08 10:00:47 PDT
(In reply to comment #2) > Does the _tab.cpp file also cause problems? Do you know whether it makes sense to generate these files instead of using the generated ones from ANGLE? Sorry, I cut the log because it is too long. _tab.cpp also have same issue. I don't know ANGLE enough, but I choosed generated one because 1) generated one looks better although almost changes are minor (such as size_t vs int) 2) other ports also used generated one.
Raphael Kubo da Costa (:rakuco)
Comment 4 2012-08-08 11:16:43 PDT
Right. svn blame tells me that the lex and tab.cpp files were added by Joshua Netterfield for the BlackBerry port, so I'm CC'ing both him and Rob in case they have anything to say.
Joshua Netterfield
Comment 5 2012-08-08 11:30:46 PDT
We also wanted to use the generated files, but it doesn't compile with certain versions of Bison. I'm noticing that upstream both versions are present (probably due to a merge failure on my end). Perhaps it would be best to have the generated files in PlatformEfl.cmake and the non-generated files in PlatformBlackBerry.cmake?
Ryuan Choi
Comment 6 2012-08-08 18:14:11 PDT
(In reply to comment #5) > We also wanted to use the generated files, but it doesn't compile with certain versions of Bison. I'm noticing that upstream both versions are present (probably due to a merge failure on my end). Perhaps it would be best to have the generated files in PlatformEfl.cmake and the non-generated files in PlatformBlackBerry.cmake? Can I know which version of BISON has problem? I think that this is not port specific issue. So, what do you think about checking bison version which we has issue like below? IF (BISON_VERSION EQUAL "specific version") # ELSE () # use generated one ENDIF ()
Joshua Netterfield
Comment 7 2012-08-09 09:12:04 PDT
Yes, that sounds good. We had trouble with version 2.5 on mac.
Ryuan Choi
Comment 8 2012-08-09 15:49:42 PDT
Ryuan Choi
Comment 9 2012-08-09 15:50:38 PDT
(In reply to comment #7) > Yes, that sounds good. We had trouble with version 2.5 on mac. Ok, updated. Could you test whether it works for you? Thank you.
WebKit Review Bot
Comment 10 2012-08-13 19:09:30 PDT
Comment on attachment 157567 [details] Patch Clearing flags on attachment: 157567 Committed r125496: <http://trac.webkit.org/changeset/125496>
WebKit Review Bot
Comment 11 2012-08-13 19:09:36 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.