# Why is CMAKE\_MACOSX\_BUNDLE set to ON by default if CMAKE\_SYSTEM\_NAME equals to iOS, tvOS, visionOS or watchOS?

**URL:** https://discourse.cmake.org/t/why-is-cmake-macosx-bundle-set-to-on-by-default-if-cmake-system-name-equals-to-ios-tvos-visionos-or-watchos/15578
**Category:** Usage
**Tags:** os:macos
**Created:** [March 25, 2026, 6:35am UTC](https://discourse.cmake.org/t/why-is-cmake-macosx-bundle-set-to-on-by-default-if-cmake-system-name-equals-to-ios-tvos-visionos-or-watchos/15578 "2026-03-25T06:35:38Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![jasjuang](https://discourse.cmake.org/user_avatar/discourse.cmake.org/jasjuang/32/6069_2.png) [@jasjuang](https://discourse.cmake.org/u/jasjuang)
#### Post date: [March 25, 2026, 6:35am UTC](https://discourse.cmake.org/t/why-is-cmake-macosx-bundle-set-to-on-by-default-if-cmake-system-name-equals-to-ios-tvos-visionos-or-watchos/15578/1 "2026-03-25T06:35:38Z")

</div>

Why is [CMAKE\_MACOSX\_BUNDLE](https://cmake.org/cmake/help/latest/variable/CMAKE_MACOSX_BUNDLE.html) set to ON by default if CMAKE\_SYSTEM\_NAME equals to iOS, tvOS, visionOS or watchOS? To me this creates unnecessary confusion, and I couldn’t find any explanation or justification about it anywhere.
