Use 'weak' attribute and non-static on illumos - #7206
#7206Merged
akoeplinger merged 1 commit intoJun 12, 2026
dotnet:maindotnet/dotnet:mainfrom
am11:chore/sccsid-fix-old-compileram11/dotnet:chore/sccsid-fix-old-compilerCopy head branch name to clipboard
Merged
Use 'weak' attribute and non-static on illumos#7206akoeplinger merged 1 commit intodotnet:maindotnet/dotnet:mainfrom am11:chore/sccsid-fix-old-compileram11/dotnet:chore/sccsid-fix-old-compilerCopy head branch name to clipboard
akoeplinger merged 1 commit into
dotnet:maindotnet/dotnet:mainfrom
am11:chore/sccsid-fix-old-compileram11/dotnet:chore/sccsid-fix-old-compilerCopy head branch name to clipboard
Conversation
Member
Author
|
cc @akoeplinger, @janvorli, I tested it adhoc previously because there were other errors to side step with gcc build. Now those are resolved, it turned out we run into: With this patch I finally got it green in the CI https://github.com/am11/CrossRepoCITesting/actions/runs/27387091192, patching arcade SDK isn't easy when building runtime alone, so I patched the script for that run, shows: A single version string reported by |
akoeplinger
approved these changes
Jun 12, 2026
This was referenced Jun 13, 2026
janvorli
pushed a commit
to dotnet/runtime
that referenced
this pull request
Jun 15, 2026
First, our default build is failing with solaris gcc 13, so couple of fixes for those are included (jit, gcenv etc.). Then it includes clang fixes. For the first time, cross building runtime repo for illumos-x64 with llvm-toolchain has succeeded. It has two issues which I've reported upstream with minimal repro and workarounds: * llvm assembler (llvm-mc): llvm/llvm-project#202953 * LLVM linker (lld): llvm/llvm-project#202963 For the first one I am adding a workaround in configurecompiler.cmake (`if (CMAKE_C_COMPILER_ID MATCHES "GNU")` condition). For the second one the hack goes in toolchain.cmake which I am skipping from this PR as I'm running trials to slim it down a bit (current state: https://github.com/am11/runtime/blob/67046c0cf095c5d7888c797226fe736156b5e04c/eng/common/cross/toolchain.cmake#L227-L307). Together the clang build succeeds on Azure Linux cross environment same as rest of the platforms (freebsd, openbsd, haiku). Note that the gcc build requires another fix upstream dotnet/dotnet#7206, which I recently broke while fixing sccsid which got broken after we started to use `--gc-sections` linker option liberally.
eiriktsarpalis
pushed a commit
to dotnet/runtime
that referenced
this pull request
Jul 15, 2026
First, our default build is failing with solaris gcc 13, so couple of fixes for those are included (jit, gcenv etc.). Then it includes clang fixes. For the first time, cross building runtime repo for illumos-x64 with llvm-toolchain has succeeded. It has two issues which I've reported upstream with minimal repro and workarounds: * llvm assembler (llvm-mc): llvm/llvm-project#202953 * LLVM linker (lld): llvm/llvm-project#202963 For the first one I am adding a workaround in configurecompiler.cmake (`if (CMAKE_C_COMPILER_ID MATCHES "GNU")` condition). For the second one the hack goes in toolchain.cmake which I am skipping from this PR as I'm running trials to slim it down a bit (current state: https://github.com/am11/runtime/blob/67046c0cf095c5d7888c797226fe736156b5e04c/eng/common/cross/toolchain.cmake#L227-L307). Together the clang build succeeds on Azure Linux cross environment same as rest of the platforms (freebsd, openbsd, haiku). Note that the gcc build requires another fix upstream dotnet/dotnet#7206, which I recently broke while fixing sccsid which got broken after we started to use `--gc-sections` linker option liberally.
ManickaP
pushed a commit
to ManickaP/runtime
that referenced
this pull request
Jul 22, 2026
First, our default build is failing with solaris gcc 13, so couple of fixes for those are included (jit, gcenv etc.). Then it includes clang fixes. For the first time, cross building runtime repo for illumos-x64 with llvm-toolchain has succeeded. It has two issues which I've reported upstream with minimal repro and workarounds: * llvm assembler (llvm-mc): llvm/llvm-project#202953 * LLVM linker (lld): llvm/llvm-project#202963 For the first one I am adding a workaround in configurecompiler.cmake (`if (CMAKE_C_COMPILER_ID MATCHES "GNU")` condition). For the second one the hack goes in toolchain.cmake which I am skipping from this PR as I'm running trials to slim it down a bit (current state: https://github.com/am11/runtime/blob/67046c0cf095c5d7888c797226fe736156b5e04c/eng/common/cross/toolchain.cmake#L227-L307). Together the clang build succeeds on Azure Linux cross environment same as rest of the platforms (freebsd, openbsd, haiku). Note that the gcc build requires another fix upstream dotnet/dotnet#7206, which I recently broke while fixing sccsid which got broken after we started to use `--gc-sections` linker option liberally.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
apphost build wasn't happy with static/non-global symbol being referenced in .init_array.