$gen = "gen"
if (!(Test-Path $gen)) { mkdir $gen | Out-Null }

$files = Get-ChildItem sources/*.proto | ForEach-Object { $_.Name }

protoc `
    --proto_path=sources `
    --go_out=$gen `
    $files

$clientDir = "$gen/client"
if (!(Test-Path $clientDir)) { mkdir $clientDir | Out-Null }

protoc `
    --proto_path=sources `
    --csharp_out=$clientDir `
    $files