Closed Bug 781525 Opened 12 years ago Closed 12 years ago

Build process is broken while processing /dom/interfaces/base/nsIDOMJSWindow.idl

Categories

(Thunderbird :: Build Config, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 723861

People

(Reporter: fredbezies, Unassigned)

Details

I was trying to build today a trunk version of thunderbird on archlinux (following archlinux specifics found here :https://developer.mozilla.org/en-US/docs/Developer_Guide/Build_Instructions/Linux_Prerequisites#Arch_Linux), and build process is stopped with that log :

nsIDOMChromeWindow.idl
Traceback (most recent call last):
  File "/home/fred/logs/mail/src/mozilla/config/pythonpath.py", line 56, in <module>
    main(sys.argv[1:])
  File "/home/fred/logs/mail/src/mozilla/config/pythonpath.py", line 48, in main
    execfile(script, frozenglobals)
  File "/home/fred/logs/mail/objdir-tb/mozilla/dist/sdk/bin/header.py", line 483, in <module>
    idl = p.parse(open(file).read(), filename=file)
  File "/home/fred/logs/mail/objdir-tb/mozilla/dist/sdk/bin/xpidl.py", line 1575, in parse
    idl = self.parser.parse(lexer=self)
  File "/home/fred/logs/mail/objdir-tb/mozilla/dist/sdk/bin/ply/yacc.py", line 265, in parse
    return self.parseopt_notrack(input,lexer,debug,tracking,tokenfunc)
  File "/home/fred/logs/mail/objdir-tb/mozilla/dist/sdk/bin/ply/yacc.py", line 921, in parseopt_notrack
    lookahead = get_token()     # Get the next token
  File "/home/fred/logs/mail/objdir-tb/mozilla/dist/sdk/bin/xpidl.py", line 1564, in token
    t = self.lexer.token()
  File "/home/fred/logs/mail/objdir-tb/mozilla/dist/sdk/bin/ply/lex.py", line 384, in token
    newtok = self.lexerrorf(tok)
  File "/home/fred/logs/mail/objdir-tb/mozilla/dist/sdk/bin/xpidl.py", line 1174, in t_ANY_error
    lexpos=self.lexer.lexpos))
xpidl.IDLError: error: unrecognized input, /home/fred/logs/mail/src/mozilla/dom/interfaces/base/nsIDOMJSWindow.idl line 81:46
  readonly attribute nsIDOMWindow             _content;
                                              ^
make[4]: *** [_xpidlgen/nsIDOMJSWindow.h] Error 1
Side effect of bug 774032 ?
(In reply to Frederic Bezies from comment #1)
> Side effect of bug 774032 ?

Certainly not.

That being said, we have plenty of python in the code base, and most of it is not compatible with python3.
I was thinking of this bug because :

1) I was in holiday between between july 31 and august 8.
2) nsIDOMJSWindow.idl last update was related to this bug, at least in the makefile.in calling it. http://mxr.mozilla.org/comm-central/source/mozilla/dom/interfaces/base/Makefile.in#45

And what is strange is that firefox trunk code get build flawlessly.

So, any idea, please ?
What is the value of PYTHON in config/autoconf.mk when you build firefox? and what is its value when you build thunderbird?
For firefox :

PYTHON = /home/fred/logs/fox/objdir-fx/_virtualenv/bin/python

For thunderbird :

PYTHON		= /usr/bin/python2
what about mozilla/config/autoconf.mk?
what does each of these say with --version? (/home/fred/logs/fox/objdir-fx/_virtualenv/bin/python --version, etc.)
Took PYTHON value from both mozilla/config/autoconf.mk ; and about python versions.

Firefox :

[fred@fredo-arch objdir-fx]$ _virtualenv/bin/python --version
Python 2.7.3

Thunderbird :

/usr/bin/python2 --version
Python 2.7.3

If it helps, here is my thunderbird .mozconfig :

#
# See http://www.mozilla.org/build/ for build instructions.
#

export AUTOCONF=autoconf-2.13

ac_add_options --enable-application=mail
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../objdir-tb
mk_add_options MOZ_MAKE_FLAGS=-j4

# Options for ‘configure’ (same as command-line options).
ac_add_options --enable-optimize
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --disable-crashreporter
ac_add_options --with-ccache
ac_add_options --disable-installer
ac_add_options --disable-warnings-as-errors
Then this has nothing to do with python3.

Now, re-reading the original error, it seems this is caused by bug 780146
I supposed python3 was guilty here,as it is a python3 error.

Thanks for the info !
Yes, but the XPIDL parser should handle this. In particular, the tree isn't burning. (At least not with this error.)
It turns out that I had old versions of xpidllex.py all over the shop.

I tried removing $objdir/mozilla/sdk/bin/xpidllex.py and the build system just put it back.

I tried removing $objdir/mozilla/xpcom/idl-parser/cache/xpidllex.py too but to no avail.

Eventually I discovered $srcdir/mozilla/xpcom/idl-parser/xpidllex.py was an old version.

At last my build is progressing!
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.