Closed Bug 323940 Opened 19 years ago Closed 19 years ago

Allow client.mk to build multiple objdirs of the same app using MOZ_BUILD_APP

Categories

(Firefox Build System :: General, defect)

PowerPC
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: benjamin, Assigned: benjamin)

Details

Attachments

(2 files)

For universal mactel/macppc builds, we want to build two objdirs of a single application (one cross-compiled and one straight-compiled)... MOZ_BUILD_APP needs some additional loving as follows:

MOZ_BUILD_APP=browser1,browser2

And then strip off any digits at the end if necessary (need to investigate).
Turns on this works just fine using the mozconfig style as attached.
Status: NEW → RESOLVED
Closed: 19 years ago
Resolution: --- → WORKSFORME
It doesn't seem like that will work when one of your targets needs to be cross-compiled.  The cross-compile builds require a number of env variables to be set at configure time and ac_add_app_options() isn't robust enough to set those variables on a per APP basis.
From talking with mento:

if [ "$MOZ_BUILD_APP" == "browser-intel" ]; then
  CC=foo
  CXX=foo2
  CROSS_COMPILE=1
fi

Should work.
I didn't think that MOZ_BUILD_APP was available as a .mozconfig variable.  It's set in configure.in so that snippet would have to be hardcoded into the configure script, right?
configure sources mozconfig2configure which sources the mozconfig, so this snippet is run in the context of the configure script
Yeah, I was aware of the sourcing but it seemed like the order was wrong for .mozconfig to be aware of any variables that are set by configure.  But it works so I'll shut up now.
Yeah, the reason it works is because client.mk calls configure like this:

MOZ_BUILD_APP=cross-mingw ../configure

So MOZ_BUILD_APP is available "early"
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: