Repository: go
Issue: x/mobile: gomobile [suggested fix provided] not working with Xcode 15.3 due to missing `Info.plist` via SPM
Labels: NeedsInvestigation,mobile

### Go version

go version go1.21.4 darwin/arm64

### Output of `go env` in your module/workspace:

```shell
GO111MODULE=''
GOARCH='arm64'
GOBIN=''
GOCACHE='/Users/Meme/Library/Caches/go-build'
GOENV='/Users/Meme/Library/Application Support/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='arm64'
GOHOSTOS='darwin'
GOINSECURE=''
GOMODCACHE='/Users/Meme/go/pkg/mod'
GOOS='darwin'
GOPATH='/Users/Meme/go'
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/usr/local/go'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/usr/local/go/pkg/tool/darwin_arm64'
GOVCS=''
GOVERSION='go1.21.4'
GCCGO='gccgo'
AR='ar'
CC='clang'
CXX='clang++'
CGO_ENABLED='1'
GOMOD='/dev/null'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -arch arm64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -ffile-prefix-map=/var/folders/w0/123_/T/go-build1234_=/tmp/go-build -gno-record-gcc-switches -fno-common'
```


### What did you do?

I ran my iOS app that has a gomobile compiled framework as an SPM dependency.

Example project to reproduce the issue: [github.com/g3devv/gomobile-plist-demo](https://github.com/g3devv/gomobile-plist-demo) 

### What did you see happen?

#66500 and #66018 is not entirely solved yet, Xcode still complains with the following output:

> App installation failed: Unable to Install “pl0”
> 
> Please try again later. Failed to load Info.plist from bundle at path /Users/Meme/Library/Developer/CoreSimulator/Devices/123-456/data/Library/Caches/com.apple.mobile.installd.staging/temp.XTabc/extracted/Payload/pl0.app/Frameworks/Plexample.framework; Extra info about "/Users/Meme/Library/Developer/CoreSimulator/Devices/123-456/data/Library/Caches/com.apple.mobile.installd.staging/temp.XTabc/extracted/Payload/pl0.app/Frameworks/Plexample.framework/Info.plist": Couldn't stat /Users/Meme/Library/Developer/CoreSimulator/Devices/123-456/data/Library/Caches/com.apple.mobile.installd.staging/temp.XTabc/extracted/Payload/pl0.app/Frameworks/Plexample.framework/Info.plist: No such file or directory


### What did you expect to see?

Because `gomobile` now adds the Info.plist files I expected everything to work again. Tree from my gomobile output:
```
gomobile-plist-demo/plexampleSPM/Frameworks
└── plexample.xcframework
    ├── Info.plist
    ├── ios-arm64
    │   └── Plexample.framework
    │       ├── Headers -> Versions/Current/Headers
    │       ├── Modules -> Versions/Current/Modules
    │       ├── Plexample -> Versions/Current/Plexample
    │       ├── Resources -> Versions/Current/Resources
    │       └── Versions
    │           ├── A
    │           │   ├── Headers
    │           │   │   ├── Plexample.h
    │           │   │   ├── Plexample.objc.h
    │           │   │   ├── Universe.objc.h
    │           │   │   └── ref.h
    │           │   ├── Modules
    │           │   │   └── module.modulemap
    │           │   ├── Plexample
    │           │   └── Resources
    │           │       └── Info.plist
    │           └── Current -> A
    └── ios-arm64_x86_64-simulator
        └── Plexample.framework
            ├── Headers -> Versions/Current/Headers
            ├── Modules -> Versions/Current/Modules
            ├── Plexample -> Versions/Current/Plexample
            ├── Resources -> Versions/Current/Resources
            └── Versions
                ├── A
                │   ├── Headers
                │   │   ├── Plexample.h
                │   │   ├── Plexample.objc.h
                │   │   ├── Universe.objc.h
                │   │   └── ref.h
                │   ├── Modules
                │   │   └── module.modulemap
                │   ├── Plexample
                │   └── Resources
                │       └── Info.plist
                └── Current -> A
```
(It has Info.plist in 3 places for 2 architectures)

Tree for my framework in the Derived Data:
```
Plexample.framework/
├── Headers -> Versions/Current/Headers
├── Modules -> Versions/Current/Modules
├── Plexample -> Versions/Current/Plexample
├── Resources -> Versions/Current/Resources
└── Versions
    ├── A
    │   ├── Headers
    │   │   ├── Plexample.h
    │   │   ├── Plexample.objc.h
    │   │   ├── Universe.objc.h
    │   │   └── ref.h
    │   ├── Modules
    │   │   └── module.modulemap
    │   ├── Plexample
    │   └── Resources
    │       └── Info.plist
    └── Current -> A

10 directories, 8 files
```
**(It has no Info.plist in the root in case that matters)**