xamarin-macios/dotnet/DefaultCompilationIncludes.md

1.4 KiB

Default complication includes in iOS, tvOS, watchOS and macOS projects

Default compilation includes for .NET Core projects is explained here: Default compilation includes in .NET Core projects

This document explains how default compilation includes is implemented for iOS, tvOS, watchOS and macOS projects.

Default inclusion can be completely disabled by setting EnableDefaultItems=false. It can also be disabled per-platform by setting the platform-specific variables EnableDefaultiOSItems=false, EnableDefaulttvOSItems=false, EnableDefaultwatchOSItems=false, or EnableDefaultmacOSItems=false.

Property lists

All *.plist files in the root directory are included by default (as None items).

SceneKit Assets

All *.scnassets directories anywhere in the project directory or any subdirectory are included by default (as SceneKitAsset items).

Storyboards

All *.storyboard and *.xib files in the project directory or any subdirectory are included by default (as InterfaceDefinition items).

Binding projects

Default compilation includes is turned off for binding projects, because typically there are C# source files (ApiDefinition.cs, StructsAndEnums.cs, etc.) in the binding project directory which should be compiled as binding source code, and not as normal C# source code.