Closed Bug 902389 Opened 11 years ago Closed 11 years ago

Mach build with arguments fails if objdir specified in mozconfig has a trailing slash

Categories

(Firefox Build System :: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
mozilla26

People

(Reporter: Gijs, Assigned: gps)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

STR:

1. MOZCONFIG env var pointing to a mozconfig with:

mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../builds/foo/

2. Run ./mach build

3. Run ./mach build browser/base (or any other directory)

ER:
browser/base gets rebuilt

AR:
make.py is invoked with 'rowser/base', throwing "No makefile found", and no rebuild is done.

Doing s/foo\//foo/ on the path specified makes it work.

(seen this on both OS X and Windows, so marking all/all)
Component: mach → Build Config
Can you upload  your |mach environment| output?
$ ./mach environment
platform:
        Windows-7-6.1.7601-SP1
python version:
        2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)]
python prefix:
        c:\mozilla-build\python
mach cwd:
        e:\dev\ux-central
os cwd:
        e:\dev\ux-central
mach directory:
        e:\dev\ux-central
state directory:
        c:/Users/gkruitbosch/.mozbuild
object directory:
        e:\dev\ux-central/../builds/ux-i686-pc-mingw32/
mozconfig path:
        e:\dev\configs\ux.mozconfig
mozconfig objdir:
        e:\dev\ux-central/../builds/ux-i686-pc-mingw32/
mozconfig configure args:
        --enable-profiling
mozconfig extra make args:
mozconfig make flags:
config topsrcdir:
        e:/dev/ux-central
config topobjdir:
        e:\dev\builds\ux-i686-pc-mingw32
Trivial patch with test that failed before modifying base.py
Attachment #788239 - Flags: review?(mshal)
Assignee: nobody → gps
Comment on attachment 788239 [details] [diff] [review]
Normalize topobjdir

This patch looks good, and works to fix the new test case. However, I haven't been able to reproduce the original issue of make getting invoked with 'rowser/base', so I'm not entirely sure if it fixes that. I tried this on both Linux and OSX:

$ cat ~/mymozconfig 
mk_add_options MOZ_OBJDIR=@TOPSRCDIR/../builds/foo/

$ MOZCONFIG=/home/marf/mymozconfig ./mach configure

$ MOZCONFIG=/home/marf/mymozconfig ./mach build browser/base

On both machines it recurses into browser/base just fine, even before gps' patch.
Attachment #788239 - Flags: review?(mshal) → review+
Yeah, the original issue with "rowser/base" is funky and I was never able to reproduce. I'm hoping one of this or bug 901811 will address it. Gijs can always file a new bug if he still sees issues.

https://hg.mozilla.org/integration/mozilla-inbound/rev/03fbbe116b7e
Status: NEW → ASSIGNED
Flags: in-testsuite+
https://hg.mozilla.org/mozilla-central/rev/03fbbe116b7e
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla26
Blocks: 912114
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: