Closed Bug 373362 Opened 18 years ago Closed 18 years ago

changing file from EXTRA_COMPONENTS to EXTRA_PP_COMPONENTS causes srcdir modification

Categories

(Firefox Build System :: General, defect)

x86
Linux
defect
Not set
major

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: dbaron, Assigned: dbaron)

References

Details

(Whiteboard: [patch])

Attachments

(1 file)

Recently nsSidebar.js in browser/components/sidebar/src/ was changed to being preprocessed. This change, when rebuilt in an existing tree, caused nsSidebar.js in the *srcdir* to end up blank. (peterv checked this in when checking in a large tree-wide change; I hit it in my tree as well.) Steps to reproduce: 1. edit browser/components/sidebar/src/Makefile.in to change EXTRA_PP_COMPONENTS to EXTRA_COMPONENTS 2. run make in objdir 3. undo edit to makefile in 4. run make in objdir Actual results: nsSidebar.js is empty Expected results: No change to nsSidebar.js I think the bug here is a bug in the handling of EXTRA_PP_COMPONENTS: it redirects the output to the destination without removing it first. If the destination is a symlink, that can be bad, because; $ set +o noclobber $ cat > foo hello $ ln -s foo bar $ ls -l total 12 lrwxrwxrwx 1 dbaron dbaron 3 2007-03-09 10:33:13 bar -> foo -rw-rw-r-- 1 dbaron dbaron 6 2007-03-09 10:33:10 foo $ cat > bar $ ls -l total 8 lrwxrwxrwx 1 dbaron dbaron 3 2007-03-09 10:33:13 bar -> foo -rw-rw-r-- 1 dbaron dbaron 0 2007-03-09 10:33:25 foo
Attached patch patch (deleted) — Splinter Review
Assignee: nobody → dbaron
Status: NEW → ASSIGNED
Attachment #258005 - Flags: review?(benjamin)
For what it's worth, the bug that triggered the problem was bug 332753.
Whiteboard: [patch]
I assume this also applies to the microsummaries service?
The microsummary service was always preprocessed. This bug is a bug in builds that didn't clobber dist on a tree that had previously been built when the file was not preprocessed.
Blocks: 373510
This caused the bustage on two unit-testing tinderboxen that appeared today after a checkin I made for bug 279698, because the nsSidebar.js on the tinderboxen got truncated to nothing. It also caused my truncation of <toolkit/components/console/jsconsole-clhandler.js> to nothing instead of making the change I intended to make. Consequently, I'm upping this bug's severity.
Severity: normal → major
Comment on attachment 258005 [details] [diff] [review] patch please indent this <tab><space><space> instead of <tab><tab>, to match what existing convention there is.
Attachment #258005 - Flags: review?(benjamin) → review+
Hrm -- the existing convention in the file seems to be almost evenly split between those two patterns, but I'll switch since you seem to prefer it (although I prefer <tab><tab>).
Checked in to trunk.
Status: ASSIGNED → RESOLVED
Closed: 18 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.

Attachment

General

Created:
Updated:
Size: