sirikata / berkelium

Chromium Embedded in GL/DX (NOTE: No longer maintained!)
http://berkelium.org/
266 stars 48 forks source link

python script action_makenames.py fails during chromium compilation #19

Closed jarrettchisholm closed 11 years ago

jarrettchisholm commented 12 years ago

During chromium compilation on Linux (Debian testing, 64bit, gcc 4.7.1, cmake 2.8.9), the python script action_makenames.py fails with the following error:

...
  ACTION webcore_bindings_sources_HTMLNames out/Release/obj/gen/webkit/HTMLNames.cpp
  ACTION webcore_bindings_sources_SVGNames out/Release/obj/gen/webkit/SVGNames.cpp
  ACTION webcore_bindings_sources_MathMLNames out/Release/obj/gen/webkit/MathMLNames.cpp
  ACTION webcore_bindings_sources_XLinkNames out/Release/obj/gen/webkit/XLinkNames.cpp
  ACTION webcore_bindings_sources_XMLNSNames out/Release/obj/gen/webkit/XMLNSNames.cpp
Unknown parameter math for tags/attrs
Traceback (most recent call last):
  File "scripts/action_makenames.py", line 174, in <module>
    sys.exit(main(sys.argv))
  File "scripts/action_makenames.py", line 156, in main
    assert returnCode == 0
AssertionError
make: *** [out/Release/obj/gen/webkit/MathMLNames.cpp] Error 1
make: *** Waiting for unfinished jobs....
Unknown parameter a for tags/attrs
Traceback (most recent call last):
  File "scripts/action_makenames.py", line 174, in <module>
    sys.exit(main(sys.argv))
  File "scripts/action_makenames.py", line 156, in main
    assert returnCode == 0
AssertionError
Unknown parameter a interfaceName for tags/attrs
make: *** [out/Release/obj/gen/webkit/SVGNames.cpp] Error 1
Traceback (most recent call last):
  File "scripts/action_makenames.py", line 174, in <module>
    sys.exit(main(sys.argv))
  File "scripts/action_makenames.py", line 156, in main
    assert returnCode == 0
AssertionError
make: *** [out/Release/obj/gen/webkit/HTMLNames.cpp] Error 1
Unknown parameter actuate for tags/attrs
Traceback (most recent call last):
  File "scripts/action_makenames.py", line 174, in <module>
    sys.exit(main(sys.argv))
  File "scripts/action_makenames.py", line 156, in main
    assert returnCode == 0
AssertionError
make: *** [out/Release/obj/gen/webkit/XLinkNames.cpp] Error 1
Unknown parameter xmlns for tags/attrs
Traceback (most recent call last):
  File "scripts/action_makenames.py", line 174, in <module>
    sys.exit(main(sys.argv))
  File "scripts/action_makenames.py", line 156, in main
    assert returnCode == 0
AssertionError
make: *** [out/Release/obj/gen/webkit/XMLNSNames.cpp] Error 1
Failed to install: chromium

It looks like the python script is called a perl script, and the perl script is dying on line 209:

die "Unknown parameter $parameter for tags/attrs\n" if !defined($parameters{$parameter});

The 'unknown parameter's are:

  1. math
  2. a
  3. a interfaceName
  4. actuate
  5. xmlns

I'm not sure where these parameters are coming from.

Anyone have any idea how to correct this?

jarrettchisholm commented 12 years ago

Solution: Turns out to be a preprocessor bug for gcc 4.6. As a fix, you have to remove the -P parameter of the gcc preprocessor command in make_names.pl.

Bug report: http://code.google.com/p/chromium/issues/detail?id=46411 Bug fix: http://trac.webkit.org/changeset/84123