[SERVER-48885] Pathsplit bug in build.ninja generated file with PATH components containing spaces Created: 15/Jun/20 Updated: 29/Oct/23 Resolved: 09/Jul/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Build |
| Affects Version/s: | 4.5.1 |
| Fix Version/s: | 4.4.1, 4.7.0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Sara Golemon | Assignee: | Ryan Egesdahl (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | macos, macos-catalina | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Backwards Compatibility: | Fully Compatible | ||||
| Operating System: | ALL | ||||
| Backport Requested: |
v4.4
|
||||
| Sprint: | Dev Platform 2020-06-29, Dev Platform 2020-07-13 | ||||
| Participants: | |||||
| Description |
|
While attempting to build on macOS Catalina, I received an error:
Which immediately looks like a path split on "VMware Fusion" and is confirmed by looking in build.ninja and seeing many repetitions of the following pattern:
Manually editing this file to include a backslash after "VMware\ " resolves the issue. scons invocation:
macOS: 10.15.2 |
| Comments |
| Comment by Githook User [ 06/Aug/20 ] |
|
Author: {'name': 'Ryan Egesdahl', 'email': 'ryan.egesdahl@mongodb.com', 'username': 'deriamis'}Message: If any environment variable (including PATH) were to somehow make its (cherry picked from commit c7348f391124e681d9c62aceb0e13e0d07fca8bc) |
| Comment by Andrew Morrow (Inactive) [ 13/Jul/20 ] |
|
Tagging this for backport to v4.4. |
| Comment by Githook User [ 09/Jul/20 ] |
|
Author: {'name': 'Ryan Egesdahl', 'email': 'ryan.egesdahl@mongodb.com', 'username': 'deriamis'}Message: If any environment variable (including PATH) were to somehow make its |
| Comment by Ryan Egesdahl (Inactive) [ 26/Jun/20 ] |
|
This is related to the fact that Ninja does not allow setting environments on shell executions (which is just weird and nonstandard), and the fact that we aren't quoting shell variables on *NIX builds (but we do on Windows). It's a little hackish the way we set the environment even then, but I'm going try just quoting the environment variables and see what happens. |