Closed Bug 944240 Opened 8 years ago Closed 8 years ago

Avoid quoting issues with GNU make on windows

Categories

(NSS :: Build, defect)

All
Windows 7
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
3.15.4

People

(Reporter: glandium, Assigned: glandium)

References

Details

Attachments

(1 file)

Pristine GNU make has heuristics as to when to use a shell for recipe commands, and when not to. When it does, it runs a command like sh -c "the command". Unfortunately, msys bash handles double quotes badly in that case (although make does the right escaping) and that make the commands not get the right arguments.

In NSS's case, this happens with lib -out:"foo.lib" commands.

We work around this by using mozmake, which enables a GNU make feature that makes shell invocations always create a shell script in invoke it instead of using sh -c. But on the long run, I'd like us to be able to use a pristine (non-msys) GNU make.
The rationale here is that $@ is never going to have characters that require quoting in it, since it's a library name.
Attachment #8339736 - Flags: review?(brian)
Component: Build Config → Build
Product: Core → NSS
Version: Trunk → trunk
Blocks: 944569
Attachment #8339736 - Flags: review?(brian) → review+
I will check this into NSS and then update NSS in mozilla-central.
Flags: needinfo?(brian)
Keywords: checkin-needed
http://hg.mozilla.org/projects/nss/rev/ead5dfef5276

There will be a checkin to mozilla-inbound in bug 898431.
Keywords: checkin-needed
Target Milestone: --- → 3.15.4
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.