[ 
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)

Reply via email to