Skip to content

Apple deployment targets: iOS 15.0, tvOS 18.0 - #8571

Merged
danoli3 merged 2 commits into
openframeworks:masterfrom
danoli3:ios15-tvos18-min
Oct 4, 2026
Merged

danoli3 merged 2 commits into
openframeworks:masterfrom
danoli3:ios15-tvos18-min

Conversation

@danoli3

@danoli3 danoli3 commented Oct 3, 2026 •

Copy link
Copy Markdown
Member

Follow-up to #8565 (macOS minimum 12.0). Makes the iOS and tvOS minimums consistent across the core libs, templates and the CMake toolchain, in sync with openframeworks/apothecary#610 (same defaults: macOS 12.0, iOS 15.0, tvOS 18.0, watchOS 9.0, visionOS 1.0, Mac Catalyst 15.0).

tvOS → 18.0

Was a mix of 15.0 / 17.0 / 17.2 / 17.4:

  • libs/openFrameworksCompiled/project/tvOS/CoreOF.xcconfig (15.0)
  • tvOS+OFLib.xcodeproj (17.2)
  • macos/openFrameworksLib.xcodeproj tvOS configs (17.0)
  • scripts/templates/tvOS/emptyExample.xcodeproj (17.4 / 17.2)
  • scripts/templates/tvOS/Project.xcconfig now sets TVOS_DEPLOYMENT_TARGET explicitly, like the iOS template does

iOS → 15.0

Core already used 15.0; fixed the outliers:

  • scripts/templates/macos/emptyExample.xcodeproj (17.4)
  • apps/devApps/IOS_Testing/Project.xcconfig (13.0)

CMake ios.toolchain.cmake defaults

Only used when DEPLOYMENT_TARGET isn't passed; explicit values still win.

  • iOS 15.0, tvOS 18.0 (new TVOS branch, previously shared iOS's default)
  • macOS 12.0 (was 10.15 / 11.0 for x86, arm64, universal)
  • watchOS 9.0 (was 6.0), visionOS 1.0 (was 1.1), Mac Catalyst 15.0 (unchanged)
  • Mac Catalyst macOS fallback (CMAKE_XCODE_ATTRIBUTE_MACOSX_DEPLOYMENT_TARGET) 10.15 → 12.0
  • comments / DEPLOYMENT_TARGET doc line match apothecary#610 (oF's toolchain keeps its own platform names, e.g. SIMULATOR64_VISIONOS; it has no VISIONOSCOMBINED / MAC_CATALYST_UNIVERSAL)

Checks

  • plutil -lint on the edited .pbxproj files; the JSON template projects parse
  • Ran the toolchain's default block through CMake for every platform (OS, OS64, SIMULATORARM64, TVOS, SIMULATOR_TVOS, SIMULATORARM64_TVOS, TVOSCOMBINED, WATCHOS, VISIONOS, MAC*, MAC_CATALYST*) → expected values; -DDEPLOYMENT_TARGET=16.4 with TVOS stays 16.4
  • Current Apothecary prebuilt libs are iOS 15.0 / tvOS 17.0 minimum, so they already link into these targets; after apothecary#610 they will be built at exactly iOS 15.0 / tvOS 18.0 / macOS 12.0

- tvOS 18.0 everywhere (tvOS lib, macOS any-platform lib, tvOS template,
  tvOS CoreOF.xcconfig; tvOS template Project.xcconfig now sets it too)
- iOS 15.0 everywhere (macOS template had 17.4, IOS_Testing 13.0)
- CMake ios.toolchain defaults: iOS 15.0, tvOS 18.0, macOS 12.0,
  watchOS 9.0, visionOS 1.0, Mac Catalyst 15.0; explicit
  DEPLOYMENT_TARGET still overrides
Match openframeworks/apothecary#610: same default-comment wording and
DEPLOYMENT_TARGET doc line, and the Mac Catalyst macOS fallback
(CMAKE_XCODE_ATTRIBUTE_MACOSX_DEPLOYMENT_TARGET) 10.15 -> 12.0.
@danoli3
danoli3 merged commit c1e25c0 into openframeworks:master Oct 4, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant