Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,16 @@ The .NET Foundation licenses this file to you under the MIT license.
<Output TaskParameter="ExitCode" PropertyName="_IsAlpineExitCode" />
</Exec>

<!-- tizen's gcc toolchain needs extra linker args -->
<Exec Command="test -f &quot;$(SysRoot)/etc/os-release&quot; &amp;&amp; grep -q ID=tizen &quot;$(SysRoot)/etc/os-release&quot;" IgnoreExitCode="true" StandardOutputImportance="Low" Condition="'$(SysRoot)' != ''">
Comment thread
jkotas marked this conversation as resolved.
<Output TaskParameter="ExitCode" PropertyName="_IsTizenExitCode" />
</Exec>

<PropertyGroup Condition="'$(_IsTizenExitCode)' == '0'">
<_TizenToolchainLibDir>lib</_TizenToolchainLibDir>
<_TizenToolchainLibDir Condition="'$(_targetArchitecture)' == 'arm64' or '$(_targetArchitecture)' == 'x64' or '$(_targetArchitecture)' == 'riscv64'">lib64</_TizenToolchainLibDir>
</PropertyGroup>

<PropertyGroup>
<TargetTriple />
<TargetTriple Condition="'$(CrossCompileArch)' != '' and '$(_IsAlpineExitCode)' != '0'">$(CrossCompileArch)-linux-$(CrossCompileAbi)</TargetTriple>
Expand Down Expand Up @@ -296,6 +306,9 @@ The .NET Foundation licenses this file to you under the MIT license.
This is required only for 64-bit binaries.
-->
<LinkerArg Include="-Wl,-z,max-page-size=16384" Condition=" '$(_linuxLibcFlavor)' == 'bionic' and '$(NativeLib)' == 'Shared' and ('$(_targetArchitecture)' == 'x64' or '$(_targetArchitecture)' == 'arm64')" />

<!-- Tizen requires additional linker args -->
<LinkerArg Include="-L&quot;$(SysRoot)/$(_TizenToolchainLibDir)&quot;" Condition="'$(_IsTizenExitCode)' == '0'" />

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these things really necessary? We have not been passing standard library paths in other platforms. We pass --sysroot which should set these things up.

@am11 am11 Jun 25, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some of these maybe necessary, since Tizen might not be using regular/defacto locations in some cases (clang defines them at: https://github.com/llvm/llvm-project/blob/main/clang/lib/Driver/ToolChains/Gnu.cpp). @gbalykov, could you please try removing a line, then publish an app on armv7l, arm64 and x64 to see if that line was needed; rinse and repeat to minimize this patch? Typically we only need a few linker related args not everything which was needed to build runtime repo.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've minimized the patch keeping only what's required. Checked this on runtime build, no issues. Sysroot is passed even without this change, but that's not enough.

</ItemGroup>

<Exec Command="xcodebuild -version" Condition="'$(_IsApplePlatform)' == 'true' and '$(UseLdClassicXCodeLinker)' == ''" IgnoreExitCode="true" StandardOutputImportance="Low" ConsoleToMSBuild="true">
Expand Down