Open Bug 600520 Opened 14 years ago Updated 2 years ago

Makefile in js/src picks up wrong topsrcdir

Categories

(Firefox Build System :: General, defect)

x86_64
Linux
defect

Tracking

(Not tracked)

People

(Reporter: bugzilla, Unassigned)

Details

Attachments

(2 files)

Attached file Log of build failures
This happened during testing a patch for comm-central from bug 599809 (but also happens without it).

Usually $objdir/mozilla/js/src/Makefile contains

topsrcdir = /path/to/tree/mozilla/js/src

To test the patch I did a `find . -name "Makefile.in" | xargs touch` to enforce regenerating the Makefiles without running configure.

After that the build failed with an error (see attachment) and $objdir/mozilla/js/src/Makefile contained

topsrcdir = /path/to/tree/mozilla/

Minimal STR (use an build that compiles without having to run configure):

1. touch js/src/Makefile.in
2. make -f client.mk build

I don't know if this also happens for a Firefox build directly from mozilla-central or if this is another issue of the interaction between comm-central and mozilla-central.
(In reply to comment #0)

> Minimal STR (use an build that compiles without having to run configure):
> 
> 1. touch js/src/Makefile.in
> 2. make -f client.mk build
Ok, this leads to a Makefile which points to /path/to/tree/mozilla/ as topsrcdir, but that isn't enough to get a failure at compile time.

The only way that always shows an error for me is to do ` find mozilla/ -name Makefile.in | xargs touch` as step 1 which leads to the following error:

/home/i6stud/sibresch/nobackup/seamonkey_hg/builds/comm-central/obj-debug/mozilla/js/src/config/nsinstall -R -m 644 ../mozilla-config.h /home/i6stud/sibresch/nobackup/seamonkey_hg/trees/comm-central/mozilla/config/nsStaticComponents.h  ../../../dist/include
/home/i6stud/sibresch/nobackup/seamonkey_hg/builds/comm-central/obj-debug/mozilla/js/src/config/nsinstall: cannot access ../mozilla-config.h: No such file or directory
make[6]: *** [export] Error 1
make[6]: Leaving directory `/home/i6stud/sibresch/nobackup/seamonkey_hg/builds/comm-central/obj-debug/mozilla/js/src/config'
make[5]: *** [export] Error 2
make[5]: Leaving directory `/home/i6stud/sibresch/nobackup/seamonkey_hg/builds/comm-central/obj-debug/mozilla/js/src'
make[4]: *** [export_tier_js] Error 2
make[4]: Leaving directory `/home/i6stud/sibresch/nobackup/seamonkey_hg/builds/comm-central/obj-debug/mozilla'
make[3]: *** [tier_js] Error 2
make[3]: Leaving directory `/home/i6stud/sibresch/nobackup/seamonkey_hg/builds/comm-central/obj-debug/mozilla'
make[2]: *** [default] Error 2
make[2]: Leaving directory `/home/i6stud/sibresch/nobackup/seamonkey_hg/builds/comm-central/obj-debug/mozilla'
make[1]: *** [default] Error 2
make[1]: Leaving directory `/home/i6stud/sibresch/nobackup/seamonkey_hg/builds/comm-central/obj-debug'
make: *** [build] Error 2

This is probably the result of $objdir/mozilla/js/src/config/Makefile pointing to mozilla and not mozilla/js/src:

topsrcdir = /home/i6stud/sibresch/nobackup/seamonkey_hg/trees/comm-central/mozilla
srcdir = /home/i6stud/sibresch/nobackup/seamonkey_hg/trees/comm-central/mozilla/config
VPATH = /home/i6stud/sibresch/nobackup/seamonkey_hg/trees/comm-central/mozilla/config
The working Makefile is the result of a configure run in comm-central. The broken Makefile is generated after touching all Makefile.in files in mozilla/. Only touching the Makefile.in files in mozilla/js is not enough for me to reproduce it.
Product: Core → Firefox Build System
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: