diff options
| author | Fumitoshi Ukai <ukai@google.com> | 2015-07-28 12:44:31 +0900 |
|---|---|---|
| committer | Fumitoshi Ukai <ukai@google.com> | 2015-07-28 12:44:31 +0900 |
| commit | d55702666fb1e9a86090387e6cb4139ee24c793e (patch) | |
| tree | 95d45ec5cdd1927ac301109b2b8ba3920ce1c8ce /ninja.go | |
| parent | 39837dd78cdf4617ff54a81707df258c5d4b339a (diff) | |
[go] fix export.mk ninja
variable name should be quoted
we couldn't use env variable which name contains space in bash, though.
Diffstat (limited to 'ninja.go')
| -rw-r--r-- | ninja.go | 11 |
1 files changed, 7 insertions, 4 deletions
@@ -525,7 +525,7 @@ func (n *NinjaGenerator) generateEnvlist() (err error) { if err != nil { return err } - fmt.Fprintf(f, "%s=%s\n", k, v) + fmt.Fprintf(f, "%q=%q\n", k, v) } return nil } @@ -555,9 +555,12 @@ func (n *NinjaGenerator) generateShell() (err error) { if err != nil { return err } - fmt.Fprintf(f, "export %s=%q\n", name, v) + // TODO(ukai): if name contains space, ignore it? + // export "a b"=c will error on bash + // bash: export `a b=c': not a valid identifier + fmt.Fprintf(f, "export %q=%q\n", name, v) } else { - fmt.Fprintf(f, "unset %s\n", name) + fmt.Fprintf(f, "unset %q\n", name) } } if n.GomaDir == "" { @@ -597,7 +600,7 @@ func (n *NinjaGenerator) generateNinja(defaultTarget string) (err error) { if err != nil { return err } - fmt.Fprintf(n.f, "# %s=%s\n", name, v) + fmt.Fprintf(n.f, "# %q=%q\n", name, v) } fmt.Fprintf(n.f, "\n") } |
