Closed Bug 528367 Opened 15 years ago Closed 15 years ago

generate idpl_yacctab.py in the objdir, not the srcdir

Categories

(Firefox Build System :: General, defect)

Other Branch
x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: jduell.mcbugs, Unassigned)

Details

Not a big deal, but I notice that when I moved my tree and blew away my $bld directory, builds still broke because the srcdir contains a stale ipdl_yacctab that contains the old pathname. Should we be generating then deleting these files instead of leaving them lying around?
This isn't really IPDL's fault; it's the PLY parser that generates and manages these. We could just disable the tables, but this would slow down parsing a bit. Probably not a big overhead.
It turns out deleting the ipdl_yacctab.py file is not enough to build after a srcdir move. You also need to delete all the *.pyc files in ipc/ipdl, as python has "cleverly" precompiled the .py files in such a way that they remember their pathname without bothering to check whether it's changed, and we're somehow using that info to search for files that are no longer there. "rm *.pyc" fixes the issue. I've always thought Python was overrated. Too bad about Perl 6.
We can tell PLY where to put the generated files, the same way we do for qsgen.
Assignee: jones.chris.g → nobody
Component: IPC → Build Config
QA Contact: ipc → build-config
Summary: idpl_yacctab.py litter breaks build if srcdir moved → generate idpl_yacctab.py in the objdir, not the srcdir
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.