Swift Package is built as a universal binary in main project

Swift Package is built as a universal binary in main project

Hi,

Following line from Xcode build log shows that Xcode is building swift package dependencies as universal binaries

复制代码

CreateUniversalBinary .../UIComponents.o normal arm64\ x86_64 (in target 'UIComponents' from project 'PlatformPackages')

Also confirmed with lipo

复制代码

lipo -info UIComponents.o Architectures in the fat file: UIComponents.o are: x86_64 arm64

Is it possible to build swift package for active architecture only? Or for selected architectures based on configuration.

created

Dec '21
*

last reply

Apr '22

29 days later

Jon_Shier

Jan '22

AFAIK, Swift packages in Xcode are built for the active architecture in debug mode and universally in release mode and there's no way to control the behavior. You may try changing the setting in your project, but I don't believe Xcode's SPM integration passes that setting through.

1

NeoNachoBoris Buegling

Jan '22

That is correct, packages behave like projects do by default here and there's no control over the build setting. Build settings of client projects generally don't apply to packages in any way.

2 Replies

1

shahzadmajeed

Jan '22

Could swift package itself specify build settings in Package.swift?

2 months later

TorustThomas Roughton

1

Mar '22

NeoNacho:

Build settings of client projects generally don't apply to packages in any way.

For what it's worth, I've filed FB9915302 about this. It's a major workflow issue for apps which need to be built with optimisations to run well enough to be tested -- the compile times are very lengthy regardless and building for architectures you're not going to use only makes it worse.

I'll also add that per-target optimisation settings would be very useful -- it's often the case that I'm working on a particular package and want that to be built in debug mode, but still need other packages it depends on to be in release mode so the app is usable.

1

1 month later

shahzadmajeed

Apr '22

@Torust just curious if you heard back from Apple on this?

TorustThomas Roughton

Apr '22

Nothing at this stage.

相关推荐
大熊猫侯佩39 分钟前
WWDC 25 极地冰原撸码危机:InlineArray 与 Span 的绝地反击
swift·apple·wwdc
奔波霸的伶俐虫3 小时前
jeecg框架@Dict不生效问题
开发语言·python
YY_TJJ4 小时前
8.4 Java Web(Maven P50-P57)
java·开发语言·maven
pusue_the_sun5 小时前
从零开始搞定类与对象(中)
开发语言·c++·学习
咕噜咕噜啦啦5 小时前
Qt按键响应
开发语言·qt
raoxiaoya5 小时前
Golang中的`io.Copy()`使用场景
开发语言·后端·golang
屁股割了还要学5 小时前
【数据结构入门】链表
c语言·开发语言·数据结构·c++·学习·算法·链表
wjs20246 小时前
Lua 数据类型
开发语言
源代码•宸6 小时前
C++高频知识点(十四)
开发语言·c++·经验分享·raii
2zcode7 小时前
基于Matlab的聚类彩色图像分割系统
开发语言·matlab·聚类