Add OpenBSD support in System.Net.NetworkInformation#129279
Add OpenBSD support in System.Net.NetworkInformation#129279sethjackson wants to merge 8 commits into
Conversation
|
Tagging subscribers to this area: @karelz, @dotnet/ncl |
|
Did you try running its tests on the device? If not, bootstrap docs in main branch have steps to build single library with zip archive, copy the zip archive and testhost from host to OpenBSD machine and invoke RunTests.sh command mentioned in the docs. |
|
I did not run tests but I’ll look at the docs and run them and post back. |
|
I was struggling to get this to run on my system then I realized that I was on 7.9 which was recently released but cross build infra is on 7.8. What is involved in updating that to 7.9 besides updating the cross root FS stuff in On 7.8 the tests fail with the following: A longer trace: So not entirely sure what I did wrong here? I did the cross build and test packaging from my branch that has this patch. |
|
Oh oops. I think I figured it out. I need to add Because otherwise we hit this? |
It is best to start with "lowest version which is not out of support" and that version is 7.8. What is the error on 7.9? Lets discuss it in main thread #124911.
When in doubt, piggyback on |
|
So I need to add So that the Unix/BSD specific files get included in the build. However when I do that I get the following: And I'm not really sure how to fix this. I trapsed around in the linked docs and in the MSBuild repo but I didn't see anything FreeBSD specific that would make this work so not sure how to fix this for OpenBSD. Any ideas @am11? |
|
Add openbsd after runtime/eng/versioning.targets Line 86 in f363796 We don't have |
|
Got it. That fixed it. I didn't see FreeBSD in that file so I didn't add it originally and I'm assuming I should add the change to |
|
Yes, this PR is the correct place for it; it's the first time we are building a platform-aware library where this validation kicks in. Also, when you will run the tests, some of them will fail, you may need to sprinkle some |
There was a typo in my comment I've edited; it was meant to be |
Arcade shared directory is |
|
You can merge sethjackson#1 and that change will show up here. With those changes, all tests are appropriately skipped and others passing. |
c45029e to
cf3a04a
Compare
Implement missing pieces for NetworkInformation
|
Oh nice! I doubt I would have figured that out myself. I merged it. Thanks! One thing I noticed is that this file: Is missing the |
|
It's coming from arcade SDK: https://github.com/dotnet/arcade/blob/5f63985fe82894604956e653d43c161ebbc1b576/src/Microsoft.DotNet.XUnitExtensions.Shared/TestPlatforms.cs#L26
We can add OpenBSD in runtime tests later on, bootstrap docs cover both. |
There is already support in
System.Nativefor this. Just need to enable it in the managed layer for OpenBSD.Note that FreeBSD includes what appears to be a spurious FreeBSD specific
Interop.Libraries.csfile which only contains theMsQuicconstant and since that doesn't appear to be used inSystem.Net.NetworkInformationI haven't included it here andmsquicwon't work as it stands on OpenBSD today anyways.Contributes to #124911.