[ https://issues.apache.org/jira/browse/THRIFT-5169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17079002#comment-17079002 ]
Jens Geyer commented on THRIFT-5169: ------------------------------------ The version if the compiler should always match the library version. Anything else is doomed to fail. > Improve dotnet project files for the .NET Standard build, and integrate with > cmake > ---------------------------------------------------------------------------------- > > Key: THRIFT-5169 > URL: https://issues.apache.org/jira/browse/THRIFT-5169 > Project: Thrift > Issue Type: Improvement > Components: netstd - Library > Affects Versions: 0.13.0 > Reporter: Mario Emmenlauer > Assignee: Mario Emmenlauer > Priority: Minor > > I'm working on a number of improvements for the .NET Standard Visual Studio > project files. Currently it seems to me that the following changes are > required: > * I can not use the detection of the thrift compiler using the section > {{<Exec Condition="'$(OS)' == 'Windows_NT'" Command="where thrift" > ConsoleToMSBuild="true">}} because it breaks the build for me. But I am also > under the impression that this is not clean by design. Autotools place the > thrift compiler into a specific directory, and I've modified the cmake build > to also do that. I think this is sensible, that all tutorials and tests use > *only* the thrift compiler from the current build, and fail otherwise. This > seems sensible because any other system-installed thrift compiler may behave > different and may not lead to the desired result of tests/tutorials, which > becomes very hard to debug with the auto-detection mechanism. > * The Visual Studio project files for the tests and tutorial currently all > reference the project file of the Thrift library. This breaks the build for > me because the thrift build is using .NET Standard 2.0, whereas all consumers > are (in my eyes correctly) using .NET Core 3.1. I can not mix and mingle the > different .NET platforms due to hard-to-resolve errors with dependency > ambiguities. However there seems to be a much cleaner solution: Instead of > referencing the thrift library project file, it is possible to reference the > Thrift.dll assembly. This is how an external consumer of the library would be > implemented, so it is closer to the real world use case. Additionally it has > the benefit to work with different .NET platforms without dependency issues. -- This message was sent by Atlassian Jira (v8.3.4#803005)