2
0
mirror of synced 2025-02-23 06:48:15 +00:00

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:
Burcu Dogan 2015-07-08 09:46:18 -06:00
parent b546dd39ba
commit 80eb606a0f

View File

@ -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
}
}