Open
Bug 691836
Opened 15 years ago
Updated 4 years ago
Build system doesn't correctly reparse IDL files when the xpidl parser has changed
Categories
(Firefox Build System :: General, defect)
Tracking
(Not tracked)
NEW
People
(Reporter: ehsan.akhgari, Unassigned)
Details
This is what I saw. After the PRBool change, I did an hg pull -u --rebase on a checkout (or maybe a few of them), and then I tried to build. I noticed that my build is failing in XPCOM because of invalid virtual function overloads in nsISimpleEnumerator.
I looked at the file modification times:
ehsan@ehsan-Macmini:~/moz/src$ ls -la objdir-ff-dbg/dist/include/nsISimpleEnumerator.h
lrwxrwxrwx 1 ehsan ehsan 46 2011-10-04 11:34 objdir-ff-dbg/dist/include/nsISimpleEnumerator.h -> ../../xpcom/ds/_xpidlgen/nsISimpleEnumerator.h
ehsan@ehsan-Macmini:~/moz/src$ ls -la objdir-ff-dbg/xpcom/ds/_xpidlgen/nsISimpleEnumerator.h
-rw-r--r-- 1 ehsan ehsan 3138 2011-09-30 16:50 objdir-ff-dbg/xpcom/ds/_xpidlgen/nsISimpleEnumerator.h
ehsan@ehsan-Macmini:~/moz/src$ ls -la xpcom/idl-parser/
total 200
drwxr-xr-x 2 ehsan ehsan 4096 2011-10-04 11:28 .
drwxr-xr-x 23 ehsan ehsan 4096 2011-09-13 14:42 ..
-rw-r--r-- 1 ehsan ehsan 17155 2011-09-12 16:17 header.py
-rw-r--r-- 1 ehsan ehsan 15650 2011-09-12 17:06 header.pyc
-rw-r--r-- 1 ehsan ehsan 3765 2011-09-13 14:42 runtests.py
-rw-r--r-- 1 ehsan ehsan 12883 2011-09-13 14:42 typelib.py
-rw-r--r-- 1 ehsan ehsan 1645 2011-07-22 17:56 xpidllex.py
-rw-r--r-- 1 ehsan ehsan 2094 2011-07-22 18:02 xpidllex.pyc
-rw-r--r-- 1 ehsan ehsan 46201 2011-09-30 16:19 xpidl.py
-rw-r--r-- 1 ehsan ehsan 56709 2011-10-04 11:28 xpidl.pyc
-rw-r--r-- 1 ehsan ehsan 10963 2011-09-13 14:42 xpidlyacc.py
-rw-r--r-- 1 ehsan ehsan 9788 2011-09-13 14:53 xpidlyacc.pyc
I honestly don't know how I got myself into this state. my .h file is newer than xpidl.py, but its contents was using PRBool as opposed to bool. Which suggests to me that it actually wasn't regenerated as needed.
I digged around a bit, and we have this code <http://mxr.mozilla.org/mozilla-central/source/config/rules.mk#1470> which I think should cause a regeneration of the .h files when xpidl.py changes, but I don't know why it didn't work for me. I effectively resorted to doing a clobber.
Updated•8 years ago
|
Product: Core → Firefox Build System
Updated•4 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•