Closed Bug 506576 Opened 10 years ago Closed 10 years ago

normalizepath normalizes MSYS paths without inserting a / in between (when the first component of the path isn't an actual drive)

Categories

(Firefox Build System :: General, defect)

x86
Windows 7
defect
Not set

Tracking

(Not tracked)

RESOLVED FIXED
mozilla1.9.2a1

People

(Reporter: rain1, Assigned: rain1)

References

Details

Attachments

(1 file)

<http://mxr.mozilla.org/mozilla-central/source/config/rules.mk#1490> -- we don't insert a / between the root-path call and the non-root-path call. For me on stock MozillaBuild 1.4, the first call returns D:/mozilla-build/msys/comm-central and the second one returns something like minefield-debug/db/sqlite3, which means that neither of the calls returns the separator.

The obvious fix seems to be to insert a / in between, but I wonder why this wasn't caught before -- has MSYS behaviour changed from earlier?
OK, so pwd -W returns a / only if the first component of the dir is actually a drive (so |cd /d && pwd -W| returns |d:/|).
Attached patch fixSplinter Review
fixes it for me. running through the try server now
Assignee: nobody → sid.bugzilla
Status: NEW → ASSIGNED
Comment on attachment 390743 [details] [diff] [review]
fix

Try server didn't balk at it either.
Attachment #390743 - Flags: review?(ted.mielczarek)
Summary: normalizepath normalizes MSYS paths without inserting a / in between → normalizepath normalizes MSYS paths without inserting a / in between (when the first component of the path isn't an actual drive)
I was running into this yesterday, but now I can't reproduce it. Is there a reason why the build wouldn't fail every time?
(In reply to comment #4)
> I was running into this yesterday, but now I can't reproduce it. Is there a
> reason why the build wouldn't fail every time?

That sounds strange -- this looks deterministic to me.
Comment on attachment 390743 [details] [diff] [review]
fix

Wrap the cd&&pwd bit in a patsubst, so we don't wind up with doubled slashes, like:
$(patsubst %/,,$(shell cd $(call root-path,$(1)) && pwd -W))

Or just stop putting your source in a silly place. ;-)
Attachment #390743 - Flags: review?(ted.mielczarek) → review+
http://hg.mozilla.org/mozilla-central/rev/a85f2e5b3b2b
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9.2a1
Oops, missed changing the copy in js/src. Pushed a bustage fix: http://hg.mozilla.org/mozilla-central/rev/28f03254f3fb
Blocks: 542283
Flags: in-testsuite-
Blocks: 542291
No longer blocks: 542283
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.