-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathForPublishing.fsproj
104 lines (86 loc) · 5.6 KB
/
ForPublishing.fsproj
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<?xml version="1.0" encoding="utf-8"?>
<!--https://docs.microsoft.com/en-us/dotnet/core/project-sdk/msbuild-props-->
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType>Library</OutputType>
<TargetFramework>net48</TargetFramework> <!-- so it can be used in latest Rhino 7 too, net48 needed since RhinoCommon.dll 7.5 -->
<UseWPF>false</UseWPF>
<UseWindowsForms>true</UseWindowsForms> <!-- to get screen resolution and show dialogs-->
<LangVersion>preview</LangVersion>
<NeutralLanguage>en</NeutralLanguage>
<SatelliteResourceLanguages>en</SatelliteResourceLanguages> <!--to only have the english resources-->
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<RootNamespace>Rhino.Scripting</RootNamespace>
<AssemblyName>Rhino.Scripting</AssemblyName>
<AssemblyTitle>Rhino.Scripting</AssemblyTitle>
<Product>Rhino.Scripting</Product> <!--visible in explorer-->
<Title>Rhino.Scripting</Title>
<PackageId>Rhino.Scripting</PackageId>
<Version>0.8.0</Version>
<AssemblyVersion>0.8.0</AssemblyVersion>
<FileVersion>0.8.0</FileVersion>
<PackageReleaseNotes>
- drop support for Rhino 6.0 ( 7.0 or higher is required)
</PackageReleaseNotes>
<Authors>GoswinR</Authors>
<Copyright>Goswin Rothenthal 2022</Copyright>
<Description>A complete re-implementation of the RhinoPython scripting syntax in F#. For Rhino 6.0 or higher.</Description>
<Configuration>Release</Configuration>
<PlatformTarget>x64</PlatformTarget><!-- x64 is required e.g by Rhino, don't us just 'Platform' node-->
<OtherFlags>$(OtherFlags)--warnon:3390</OtherFlags> <!-- warnon:3390 is to verify xml docstrings https://devblogs.microsoft.com/dotnet/announcing-f-5/#improved-compiler-analysis-for-library-authors -->
<OtherFlags>$(OtherFlags) --warnon:1182</OtherFlags> <!-- 1182: warn on unused variables -->
</PropertyGroup>
<PropertyGroup>
<!--https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target-->
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<IncludeSymbols>true</IncludeSymbols>
<!-- Optional: EmbedUntrackedSources, Embed source files that are not tracked by the source control manager to the PDB .
This is useful if you generate files during the build. (We do for Rhino.Scripting !)
https://www.meziantou.net/how-to-debug-nuget-packages-using-sourcelink.htm
https://www.hanselman.com/blog/exploring-net-cores-sourcelink-stepping-into-the-source-code-of-nuget-packages-you-dont-own
https://github.com/NuGet/Home/wiki/NuGet-Package-Debugging-&-Symbols-Improvements
-->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<RepositoryType>git</RepositoryType>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<PackageProjectUrl>https://github.com/goswinr/Rhino.Scripting</PackageProjectUrl>
<RepositoryUrl>https://github.com/goswinr/Rhino.Scripting</RepositoryUrl>
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<PackageIcon>logo128.png</PackageIcon>
<!-- <SymbolPackageFormat>snupkg</SymbolPackageFormat> --><!-- using snupkg the readme does not pack https://github.com/NuGet/Home/issues/10791 -->
<PackageReadmeFile>READMEnuget.md</PackageReadmeFile>
<PackageDescription>A complete re-implementation of the RhinoPython scripting syntax for use with F# and C#. For Rhino 6.0 or higher.</PackageDescription>
<PackageTags>RhinoScript RhinoCommon Rhino3dm Rhino3d Rhino Rhinoceros 3dm</PackageTags>
</PropertyGroup>
<ItemGroup>
<PackageReference Update="FSharp.Core" Version="6.0.7" />
<PackageReference Include="RhinoCommon" Version="7.0.20314.3001" PrivateAssets="all" ExcludeAssets="runtime" />
<PackageReference Include="FsEx" Version="0.15.0" />
<!-- This is probably not working to the editing files because the way files a structured on github does not match the way the are compiled from a one big generated file.-->
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="8.0.0" PrivateAssets="All" IncludeAssets="runtime; build; native; contentfiles; analyzers; buildtransitive" />
</ItemGroup>
<ItemGroup>
<None Include="README.md" />
<None Include="Doc/READMEnuget.md" Pack="true" PackagePath="" />
<None Include="Doc/logo128.png" Pack="true" PackagePath="" /> <!--PackagePath = "" makes the file available to nuget pack tool-->
<Compile Include="Src/Exceptions.fs" />
<Compile Include="Src/RhinoSync.fs" />
<Compile Include="Src/State.fs" />
<Compile Include="Src/ToNiceStringExtensions.fs" />
<Compile Include="Src/ToNiceStringSetup.fs" />
<Compile Include="Src/Util.fs" />
<Compile Include="Src/UtilLayer.fs" />
<Compile Include="Src/ObjectFilterEnum.fs" />
<!-- <Compile Include="Src/AutoGeneratedCode/AllScriptingFilesCombinedIntoOne_DontEditThisFile.fs" /> added in BeforeBuild target -->
</ItemGroup>
<!-- Combine all files of the rhinoscriptingsyntax into one: https://stackoverflow.com/a/44829863/969070 -->
<Target Name="GenerateSomeFiles" BeforeTargets="BeforeBuild">
<Exec Command="dotnet fsi combineIntoOneFile.fsx" />
<ItemGroup>
<Compile Include="Src/AutoGeneratedCode/AllScriptingFilesCombinedIntoOne_DontEditThisFile.fs" />
</ItemGroup>
</Target>
<!-- Delete AutoGeneratedCode/AllScriptingFilesCombinedIntoOne_DontEditThisFile.fs when done. Better keep it for Microsoft.SourceLink.GitHub
<Target Name="DeleteMergedFile" BeforeTargets="AfterBuild"> <Delete Files="Src/AutoGeneratedCode/AllScriptingFilesCombinedIntoOne_DontEditThisFile.fs" TreatErrorsAsWarnings="true" /> </Target>
-->
</Project>