Skip to content
This repository was archived by the owner on Jan 17, 2026. It is now read-only.

Mark project as deprecated with alternatives #9

Mark project as deprecated with alternatives

Mark project as deprecated with alternatives #9

name: Generate Bindings
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
workflow_dispatch:
workflow_call:
outputs:
nupkg-artifact:
value: ${{ jobs.generate-bindings.outputs.nupkg-artifact }}
jobs:
generate-bindings:
runs-on: windows-latest
outputs:
nupkg-artifact: ${{ steps.upload-nupkg-artifact.outputs.artifact-id }}
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 9.0.x
- name: Restore dependencies
run: dotnet restore
- name: Install ClangSharpPInvokeGenerator
run: dotnet tool install --global ClangSharpPInvokeGenerator --version 18.1.0
- name: ExtractSdlVersion
run: dotnet fsi ./Scripts/ExtractSdlVersion.fsx
- name: ExtractSdlProps
run: dotnet fsi ./Scripts/ExtractSdlProps.fsx
- name: PreGen
run: dotnet fsi ./Scripts/PreGen.fsx
- name: GenBinding
run: dotnet fsi ./Scripts/GenBinding.fsx
- name: FixBinding
run: dotnet fsi ./Scripts/FixBinding.fsx
- name: Build
run: dotnet build --no-restore -c Release ./Coplt.Sdl3/Coplt.Sdl3.csproj
- id: upload-nupkg-artifact
uses: actions/upload-artifact@v4
with:
name: 'binding.nupkg'
path: ./Coplt.Sdl3/bin/Release/*.nupkg
overwrite: true