Skip to content

Update xcodeproj version, generate a compatible one for Xcode 8+ - #1452

Merged
ychin merged 1 commit into
macvim-dev:masterfrom
ychin:use-new-xcodeproj-format
Oct 22, 2023
Merged

Update xcodeproj version, generate a compatible one for Xcode 8+#1452
ychin merged 1 commit into
macvim-dev:masterfrom
ychin:use-new-xcodeproj-format

Conversation

@ychin

@ychin ychin commented Oct 22, 2023

Copy link
Copy Markdown
Member

Certain newer Xcode features such as parallel builds require a newer version to be specified in the project file. Currently, even though we have enabled BuildIndependentTargetsInParallel in the project file, because the objectVersion is still set at 47 (Xcode 6.3), the setting is not used and we get a warning during build time. Upgrade the version to 54 (as automatically done by Xcode) which is Xcode 12 compatible in order to take advantage of parallle builds.

One caveat of incrementing the version is that older Xcode versions will not be able to open the project anymore (despite them being able to build it in command-line using xcodebuild). Generate a new xcodeproj with the old objectVersion and have CI check that it's not out of date whenever we change the original xcodeproj, so people using older Xcode versions can still debug and use Xcode with MacVim.

Note that the compatible version is compatible with Xcode 6.4, but the xib files are only buildable in Xcode 8+, so we just call it MacVim_xcode8.xcodeproj.

Related: #1100

@ychin ychin added the Infrastructure Non-app infrastructure issues, e.g. CI label Oct 22, 2023
@ychin ychin added this to the Release 179 milestone Oct 22, 2023
@github-actions github-actions Bot added the CI Vim upstream label for CI issues label Oct 22, 2023
@ychin
ychin force-pushed the use-new-xcodeproj-format branch 5 times, most recently from 7edaf3e to bbcafa5 Compare October 22, 2023 06:20
@ychin ychin changed the title Update xcodeproj version, generate a compatible one for Xcode 7+ Update xcodeproj version, generate a compatible one for Xcode 8+ Oct 22, 2023
Certain newer Xcode features such as parallel builds require a newer
version to be specified in the project file. Currently, even though we
have enabled `BuildIndependentTargetsInParallel` in the project file,
because the objectVersion is still set at 47 (Xcode 6.3), the setting is
not used and we get a warning during build time. Upgrade the version to
54 (as automatically done by Xcode) which is Xcode 12 compatible in
order to take advantage of parallle builds.

One caveat of incrementing the version is that older Xcode versions will
not be able to open the project anymore (despite them being able to
build it in command-line using xcodebuild). Generate a new xcodeproj
with the old objectVersion and have CI check that it's not out of date
whenever we change the original xcodeproj, so people using older Xcode
versions can still debug and use Xcode with MacVim.

Note that the compatible version is compatible with Xcode 6.4, but the
xib files are only buildable in Xcode 8+, so we just call it
MacVim_xcode8.xcodeproj.

Related: macvim-dev#1100
@ychin
ychin force-pushed the use-new-xcodeproj-format branch from bbcafa5 to ecea5ea Compare October 22, 2023 06:42
@ychin
ychin merged commit b0ba0b9 into macvim-dev:master Oct 22, 2023
@ychin
ychin deleted the use-new-xcodeproj-format branch October 22, 2023 06:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI Vim upstream label for CI issues Infrastructure Non-app infrastructure issues, e.g. CI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant