Skip to content
This repository has been archived by the owner on Jan 23, 2023. It is now read-only.
/ corefx Public archive

Create FreeBSD build-target for corefx #2021

Merged
merged 1 commit into from
Jun 12, 2015

Conversation

josteink
Copy link
Member

@stephentoub
Copy link
Member

The changes to dir.props look good. The changes to System.Runtime.Environment.csproj are going to conflict with #1999 and would be better left for a separate PR that fully augments that library after the revised version is merged.

@josteink josteink force-pushed the freebsd-build-target branch 2 times, most recently from 858c9aa to cd631ce Compare June 12, 2015 19:59
@josteink
Copy link
Member Author

This PR is getting slimmer and slimmer by the minute. :)

I'll add the remaining bits once #1999 is merged. Seems like a small job and then we can start getting things done.

@stephentoub
Copy link
Member

😄 Could you just revert the System.Runtime.Environment.csproj file entirely? The commit still shows that whitespace-only changes were made to it.

Even with it being a small change, it's a good first step, in that it'll allow you to build with build /p:OSGroup=FreeBSD /p:SkipTests=true on Windows and that should produce outputs in a FreeBSD specific output directory, building the FreeBSD-variant of each assembly. Now, that said, not all assemblies will build successfully with this, only those that either aren't specialized based on OS (e.g. System.Threading.Tasks.Dataflow.dll) or those that only differentiate between Windows and Unix (e.g. System.Security.Cryptography.*). Some of the core libraries (e.g. System.IO.FileSystem.dll) will fail to compile because they have some files included under TargetsUnix and then others included under either TargetLinux or TargetsOSX... the types/members defined in the latter group will be missing on FreeBSD and will cause build errors. I suggest the next step would be to stub out all such files, with members throwing PlatformNotSupportedException, so that you can at least get a clean build. Some of the files simply contain enums and constants with values from header files, so those should be quick and easy.

@josteink josteink force-pushed the freebsd-build-target branch from cd631ce to c57328e Compare June 12, 2015 20:47
@josteink
Copy link
Member Author

Done and done.

I had to actually work the command-line for that one, but I do agree that a good commit should only contain actually functional changes, so good thing somebody is keeping a watchful eye on me ;)

@stephentoub
Copy link
Member

LGTM 😄

stephentoub added a commit that referenced this pull request Jun 12, 2015
Create FreeBSD build-target for corefx
@stephentoub stephentoub merged commit a764229 into dotnet:master Jun 12, 2015
@josteink josteink deleted the freebsd-build-target branch June 12, 2015 22:11
@karelz karelz modified the milestone: 1.0.0-rtm Dec 3, 2016
picenka21 pushed a commit to picenka21/runtime that referenced this pull request Feb 18, 2022
Create FreeBSD build-target for corefx

Commit migrated from dotnet/corefx@a764229
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants