cmd/gomobile: accept -o for target=ios
Fixes golang/go#11447. Change-Id: I6298927eb7d434ec4865c3fa45dd9e4dede17d8c Reviewed-on: https://go-review.googlesource.com/11968 Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com>
This commit is contained in:
parent
b546dd39ba
commit
80eb606a0f
@ -5,6 +5,7 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
@ -16,6 +17,10 @@ import (
|
||||
)
|
||||
|
||||
func goIOSBuild(src string) error {
|
||||
if buildO != "" && !strings.HasSuffix(buildO, ".app") {
|
||||
return fmt.Errorf("-o must have an .app for target=ios")
|
||||
}
|
||||
|
||||
dir := "$XCODEPROJ"
|
||||
if !buildN {
|
||||
tmp, err := ioutil.TempDir("", "xcodeproject")
|
||||
@ -107,19 +112,18 @@ func goIOSBuild(src string) error {
|
||||
}
|
||||
|
||||
// TODO(jbd): Fallback to copying if renaming fails.
|
||||
out := path.Base(pkg.ImportPath) + ".app"
|
||||
if buildO != "" {
|
||||
out = filepath.Join(buildO, out)
|
||||
if buildO == "" {
|
||||
buildO = path.Base(pkg.ImportPath) + ".app"
|
||||
}
|
||||
if buildX {
|
||||
printcmd("mv %s %s", dir+"/build/Release-iphoneos/main.app", out)
|
||||
printcmd("mv %s %s", dir+"/build/Release-iphoneos/main.app", buildO)
|
||||
}
|
||||
if !buildN {
|
||||
// if output already exists, remove.
|
||||
if err := os.RemoveAll(out); err != nil {
|
||||
if err := os.RemoveAll(buildO); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := os.Rename(dir+"/build/Release-iphoneos/main.app", out); err != nil {
|
||||
if err := os.Rename(dir+"/build/Release-iphoneos/main.app", buildO); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user