Skip to content

Commit b3da6ef

Browse files
committed
[docs] Move the docs about ReferenceNativeSymbol in the correct file.
1 parent 3b4905b commit b3da6ef

File tree

2 files changed

+35
-31
lines changed

2 files changed

+35
-31
lines changed

docs/building-apps/build-items.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -309,6 +309,40 @@ the `CollectAppManifestsDependsOn` property:
309309
</Target>
310310
```
311311

312+
## ReferenceNativeSymbol
313+
314+
The item group `ReferenceNativeSymbol` can be used to specify how we should
315+
handle a given native symbol: either ignore it, or ask the native linker to
316+
keep it (by passing the symbol as `-u ...` or in a symbol file to the native
317+
linker).
318+
319+
There are two supported types of metadata:
320+
321+
* `SymbolType`: either `ObjectiveCClass`, `Function` or `Field`. Used to
322+
compute the complete native name of a symbol (for instance, the native
323+
symbol for the Objective-C class `MyClass` is `_OBJC_CLASS_$_MyClass`,
324+
while for a function `MyFunction` it's just `_MyFunction`.
325+
* `SymbolMode`: either `Ignore` or not set. `Ignore` means to not pass the given
326+
symbol to the native linker, the default is to do so.
327+
328+
`SymbolType` is required, while `SymbolMode` isn't.
329+
330+
Example symbol to keep:
331+
332+
```xml
333+
<ItemGroup>
334+
<ReferenceNativeSymbol Include="MyClass" SymbolType="ObjectiveCClass" />
335+
</ItemGroup>
336+
```
337+
338+
Example symbol to ignore:
339+
340+
```xml
341+
<ItemGroup>
342+
<ReferenceNativeSymbol Include="MyClass" SymbolType="ObjectiveCClass" SymbolMode="Ignore" />
343+
</ItemGroup>
344+
```
345+
312346
### SkipCodesignItems
313347

314348
An item group that specifies files or directories in the app bundle that should not be signed.

docs/building-apps/build-properties.md

Lines changed: 1 addition & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1079,37 +1079,7 @@ Only applicable to macOS and Mac Catalyst apps.
10791079

10801080
## ReferenceNativeSymbol
10811081

1082-
The item group `ReferenceNativeSymbol` can be used to specify how we should
1083-
handle a given native symbol: either ignore it, or ask the native linker to
1084-
keep it (by passing the symbol as `-u ...` or in a symbol file to the native
1085-
linker).
1086-
1087-
There are two supported types of metadata:
1088-
1089-
* `SymbolType`: either `ObjectiveCClass`, `Function` or `Field`. Used to
1090-
compute the complete native name of a symbol (for instance, the native
1091-
symbol for the Objective-C class `MyClass` is `_OBJC_CLASS_$_MyClass`,
1092-
while for a function `MyFunction` it's just `_MyFunction`.
1093-
* `SymbolMode`: either `Ignore` or not set. `Ignore` means to not pass the given
1094-
symbol to the native linker, the default is to do so.
1095-
1096-
`SymbolType` is required, while `SymbolMode` isn't.
1097-
1098-
Example symbol to keep:
1099-
1100-
```xml
1101-
<ItemGroup>
1102-
<ReferenceNativeSymbol Include="MyClass" SymbolType="ObjectiveCClass" />
1103-
</ItemGroup>
1104-
```
1105-
1106-
Example symbol to ignore:
1107-
1108-
```xml
1109-
<ItemGroup>
1110-
<ReferenceNativeSymbol Include="MyClass" SymbolType="ObjectiveCClass" SymbolMode="Ignore" />
1111-
</ItemGroup>
1112-
```
1082+
See [ReferenceNativeSymbol](build-items.md#referencenativesymbols)
11131083

11141084
## RequireLinkWithAttributeForObjectiveCClassSearch
11151085

0 commit comments

Comments
 (0)