chore: readme, gitignore, and targets backport.
This commit is contained in:
parent
732b7aa346
commit
2cf1bb30ee
3 changed files with 33 additions and 19 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -63,6 +63,7 @@ project.lock.json
|
||||||
project.fragment.lock.json
|
project.fragment.lock.json
|
||||||
artifacts/
|
artifacts/
|
||||||
**/Properties/launchSettings.json
|
**/Properties/launchSettings.json
|
||||||
|
dotnet-tools.json
|
||||||
|
|
||||||
*_i.c
|
*_i.c
|
||||||
*_p.c
|
*_p.c
|
||||||
|
|
|
||||||
|
|
@ -7,4 +7,20 @@
|
||||||
<PropertyGroup Condition="'$(MSBuildProjectName)' == 'Raylib-cs' And '$(RuntimeIdentifier)' == 'browser-wasm'">
|
<PropertyGroup Condition="'$(MSBuildProjectName)' == 'Raylib-cs' And '$(RuntimeIdentifier)' == 'browser-wasm'">
|
||||||
<OutputType>Library</OutputType>
|
<OutputType>Library</OutputType>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<!-- Raylib-cs 8.1.0 is not on nuget.org yet; pack locally so Examples and tests resolve the package with native runtimes. -->
|
||||||
|
<Target Name="_EnsureLocalRaylibCsPackage"
|
||||||
|
BeforeTargets="Restore"
|
||||||
|
Condition="'$(MSBuildProjectName)' != 'Raylib-cs' And Exists('$(MSBuildThisFileDirectory)Raylib-cs/Raylib-cs.csproj')">
|
||||||
|
<PropertyGroup>
|
||||||
|
<_LocalNuGetDir>$(MSBuildThisFileDirectory)nuget</_LocalNuGetDir>
|
||||||
|
<_LocalRaylibCsNupkg>$(_LocalNuGetDir)/Raylib-cs.$(RaylibCsVersion).nupkg</_LocalRaylibCsNupkg>
|
||||||
|
</PropertyGroup>
|
||||||
|
<MakeDir Directories="$(_LocalNuGetDir)" Condition="!Exists('$(_LocalNuGetDir)')"/>
|
||||||
|
<MSBuild Projects="$(MSBuildThisFileDirectory)Raylib-cs/Raylib-cs.csproj"
|
||||||
|
Targets="Restore;Pack"
|
||||||
|
Properties="Configuration=Release;PackageOutputPath=$(_LocalNuGetDir)"
|
||||||
|
RemoveProperties="RuntimeIdentifier;RuntimeIdentifiers;SelfContained;_IsPublishing"
|
||||||
|
Condition="!Exists('$(_LocalRaylibCsNupkg)') Or '$(ForceRaylibCsPack)' == 'true'"/>
|
||||||
|
</Target>
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
35
README.md
35
README.md
|
|
@ -65,25 +65,6 @@ otherwise the command won't work.
|
||||||
|
|
||||||
5. Start coding!
|
5. Start coding!
|
||||||
|
|
||||||
## Building from source
|
|
||||||
|
|
||||||
The `Examples` and `Raylib-cs.Tests` projects consume the binding as a NuGet package, and the in-repo
|
|
||||||
version may not be published on nuget.org yet. Pack it once into the local feed before the first build:
|
|
||||||
|
|
||||||
```
|
|
||||||
dotnet pack Raylib-cs -c Release -o nuget
|
|
||||||
dotnet build
|
|
||||||
```
|
|
||||||
|
|
||||||
`NuGet.config` points restore at the local `./nuget` feed, so both projects pick up the freshly packed
|
|
||||||
package. If you skip the pack step on a fresh clone, restore fails with NU1301 (the `./nuget` source
|
|
||||||
doesn't exist) or NU1102 (Raylib-cs not found) — running the pack command fixes both.
|
|
||||||
|
|
||||||
When iterating on the binding itself, note that NuGet caches the extracted package by version and
|
|
||||||
ignores repacks of the same version. After repacking, delete the old package from `./nuget` and clear
|
|
||||||
the cached copy (`dotnet nuget locals global-packages --clear`, or delete
|
|
||||||
`~/.nuget/packages/raylib-cs/<version>`) before restoring again.
|
|
||||||
|
|
||||||
## Hello, World!
|
## Hello, World!
|
||||||
|
|
||||||
```csharp
|
```csharp
|
||||||
|
|
@ -115,6 +96,22 @@ internal static class Program
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Building the examples locally
|
||||||
|
|
||||||
|
The `Examples` project references the sibling `Raylib-cs` project by default, so local changes to the
|
||||||
|
bindings are picked up directly:
|
||||||
|
|
||||||
|
```
|
||||||
|
dotnet run --project Examples
|
||||||
|
```
|
||||||
|
|
||||||
|
To build the examples against the Raylib-cs NuGet package instead (the version set by
|
||||||
|
`RaylibCsVersion` in [Directory.Build.props](Directory.Build.props)), set `UseRaylibCsPackage`:
|
||||||
|
|
||||||
|
```
|
||||||
|
dotnet run --project Examples -p:UseRaylibCsPackage=true
|
||||||
|
```
|
||||||
|
|
||||||
## Contributing
|
## Contributing
|
||||||
|
|
||||||
Feel free to open an issue. If you'd like to contribute, please fork the repository and make
|
Feel free to open an issue. If you'd like to contribute, please fork the repository and make
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue