Skip to content

Commit

Permalink
This is the September 2021 Update (v2.8.0) (#604)
Browse files Browse the repository at this point in the history
* Update common.props

* Update bindings for 2.8

* Update common.props

* Update common.props

* Fix build
  • Loading branch information
Perksey committed Sep 4, 2021
1 parent a8d1cab commit ae1a4b9
Show file tree
Hide file tree
Showing 68 changed files with 2,019 additions and 290 deletions.
2 changes: 0 additions & 2 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,6 @@ jobs:
- name: Install Workloads
# TODO: This is slow. Maybe we can make a docker container with this already done?
run: dotnet workload install android android-aot ios maccatalyst maui
- name: Setup NUKE
run: dotnet tool install Nuke.GlobalTool --global
- name: Pack
run: nuke Pack --msbuild-properties ContinuousIntegrationBuild=true SilkEnableSourceLink=true --feature-sets Legacy-Android Legacy-iOS
- name: Upload Unsigned Artifacts to Actions
Expand Down
15 changes: 15 additions & 0 deletions Silk.NET.sln
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Silk.NET.OpenXR.Extensions.
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TriangleNET6", "src\Lab\Experiments\TriangleNET6\TriangleNET6.csproj", "{477046D2-AF81-4E2B-83BD-20176A971FDD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.OpenCL.Extensions.POCL", "src\OpenCL\Extensions\Silk.NET.OpenCL.Extensions.POCL\Silk.NET.OpenCL.Extensions.POCL.csproj", "{8881342D-6247-4826-9963-87D4B029ECB6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.OpenAL.Tests", "src\OpenAL\Silk.NET.OpenAL.Tests\Silk.NET.OpenAL.Tests.csproj", "{514DED00-4DA3-46D1-B2E8-10CE826CD52D}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "OpenGL Demos", "OpenGL Demos", "{2F547104-C74A-4A84-8980-D1B973CC40C1}"
Expand Down Expand Up @@ -2709,6 +2711,18 @@ Global
{477046D2-AF81-4E2B-83BD-20176A971FDD}.Release|x64.Build.0 = Release|Any CPU
{477046D2-AF81-4E2B-83BD-20176A971FDD}.Release|x86.ActiveCfg = Release|Any CPU
{477046D2-AF81-4E2B-83BD-20176A971FDD}.Release|x86.Build.0 = Release|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Debug|x64.ActiveCfg = Debug|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Debug|x64.Build.0 = Debug|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Debug|x86.ActiveCfg = Debug|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Debug|x86.Build.0 = Debug|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Release|Any CPU.Build.0 = Release|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Release|x64.ActiveCfg = Release|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Release|x64.Build.0 = Release|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Release|x86.ActiveCfg = Release|Any CPU
{8881342D-6247-4826-9963-87D4B029ECB6}.Release|x86.Build.0 = Release|Any CPU
{514DED00-4DA3-46D1-B2E8-10CE826CD52D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{514DED00-4DA3-46D1-B2E8-10CE826CD52D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{514DED00-4DA3-46D1-B2E8-10CE826CD52D}.Debug|x64.ActiveCfg = Debug|Any CPU
Expand Down Expand Up @@ -2939,6 +2953,7 @@ Global
{AE5A7BBD-E303-46C4-9DDC-29E80C9128F5} = {90471225-AC23-424E-B62E-F6EC4C6ECAC0}
{0D1E5AD9-E329-4B84-A5FE-FC1EE33BF038} = {90471225-AC23-424E-B62E-F6EC4C6ECAC0}
{477046D2-AF81-4E2B-83BD-20176A971FDD} = {39B598E9-44BA-4A61-A1BB-7C543734DBA6}
{8881342D-6247-4826-9963-87D4B029ECB6} = {757F2B10-B69D-4C19-BFE0-D99070A00AD9}
{514DED00-4DA3-46D1-B2E8-10CE826CD52D} = {081E7761-B200-4DBF-8950-941464DECACE}
{2F547104-C74A-4A84-8980-D1B973CC40C1} = {6842A2C6-5C7B-42DD-9825-0EDE91BFEBF7}
{58E7EE89-B67C-482D-9605-04B3BCC5CFBB} = {2F547104-C74A-4A84-8980-D1B973CC40C1}
Expand Down
Binary file modified build/cache/cl.json.gz
Binary file not shown.
Binary file modified build/cache/gl.json.gz
Binary file not shown.
Binary file modified build/cache/glcore.json.gz
Binary file not shown.
Binary file modified build/cache/gles2.json.gz
Binary file not shown.
Binary file modified build/cache/openxr.json.gz
Binary file not shown.
Binary file modified build/cache/vulkan.json.gz
Binary file not shown.
3 changes: 2 additions & 1 deletion build/csharp_typemap.json
Original file line number Diff line number Diff line change
Expand Up @@ -164,5 +164,6 @@
"ULONGLONG": "ulong",
"LONG_PTR": "nint",
"_screen_window": "void",
"_screen_context": "void"
"_screen_context": "void",
"int16_t": "short"
}
24 changes: 17 additions & 7 deletions build/props/common.props
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,31 @@
<LangVersion>preview</LangVersion>
<Authors>.NET Foundation and Contributors</Authors>
<PackageReleaseNotes>
Silk.NET August 2021 Update
Silk.NET September 2021 Update

- Add code signing to all Silk.NET binaries
- Add support for platform-default calling conventions
- Add TryGetExtension methods to AL &amp; ALContext
- Add support for .NET 6 Android
- Update to Vulkan 1.2.190
- Update to OpenXR 1.0.19
- Update to latest OpenGL specifications
- Update to Vulkan 1.2.187
- Update to OpenXR 1.0.18
- Fix loading some OpenAL extensions
- Update to latest OpenCL specifications
- Fix calling CreateInput on an uninitialized IView resulting in a AccessViolationException
- Fix calling Close on an uninitialized IView resulting in an AccessViolationException
- Fix Silk.NET (and by extension SDL) taking full control of orientation on Android
- Fix DoRender being called if Window.Close was called during DoUpdate
- Fix Scalar.Abs for double values
- Fix "Pfn" function pointer structures being marshalled with the incorrect calling convention
- Fix Scalar.IsNaN and Scalar.IsInfinity returning true for non floating point types
- Fix Box2D.Center returning bogus values
- Fix incorrect documentation in Thumbstick.Direction
- Fix incorrect documentation in WindowOptions
</PackageReleaseNotes>
<PackageTags Condition="'$(PackageTags)' == ''">OpenCL;OpenGL;OpenAL;OpenGLES;GLES;Vulkan;Assimp;DirectX;GLFW;SDL;Windowing;Input;Gamepad;Joystick;Keyboard;Mouse;SilkTouch;Source;Generator;C#;F#;.NET;DotNet;Mono;Vector;Math;Maths;Numerics;Game;Graphics;Compute;Audio;Sound;Engine;Silk;Silk.NET;Slim.NET;ElgarTK;GPU;Sharp;Science;Scientific;Visualization;Visual;Audiovisual;Windows;macOS;Linux;Android;Bindings;OSX;Wrapper;Native</PackageTags>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<PackageOutputPath>$(MSBuildThisFileDirectory)/../output_packages</PackageOutputPath>
<RepositoryUrl>https://github.com/dotnet/Silk.NET</RepositoryUrl>
<RepositoryType>Git</RepositoryType>
<VersionPrefix>2.7.0</VersionPrefix>
<VersionPrefix>2.8.0</VersionPrefix>
<VersionSuffix Condition="'$(VersionSuffix)' == ''"></VersionSuffix>
<Description Condition="'$(Description)' == ''">
Silk.NET is a high-speed, advanced library, providing bindings to popular low-level APIs such as OpenGL, OpenCL, OpenAL, OpenXR, GLFW, SDL, Vulkan, Assimp, and DirectX.
Expand Down
6 changes: 4 additions & 2 deletions generator.json
Original file line number Diff line number Diff line change
Expand Up @@ -616,7 +616,8 @@
},
"exclude": [
"XrUuidMSFT",
"XrSceneSphereBoundMSFT"
"XrSceneSphereBoundMSFT",
"XrVector4sFB"
],
"typeMaps": [
{
Expand Down Expand Up @@ -657,7 +658,8 @@
"VkSamplerMipmapMode": "uint",
"VkComponentSwizzle": "uint",
"VkSamplerAddressMode": "uint",
"VkFilter": "uint"
"VkFilter": "uint",
"XrVector4sFB": "Silk.NET.Maths.Vector4D<short>"
},
{
"$include.commonTypeMap": "build/csharp_typemap.json"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,10 @@ public enum KHR : int
DeviceIntegerDotProductInput4x8BitPackedKhr = 0x1,
[NativeName("Name", "CL_DEVICE_INTEGER_DOT_PRODUCT_CAPABILITIES_KHR")]
DeviceIntegerDotProductCapabilitiesKhr = 0x1073,
[NativeName("Name", "CL_DEVICE_INTEGER_DOT_PRODUCT_ACCELERATION_PROPERTIES_8BIT_KHR")]
DeviceIntegerDotProductAccelerationProperties8BitKhr = 0x1074,
[NativeName("Name", "CL_DEVICE_INTEGER_DOT_PRODUCT_ACCELERATION_PROPERTIES_4x8BIT_PACKED_KHR")]
DeviceIntegerDotProductAccelerationProperties4x8BitPackedKhr = 0x1075,
[NativeName("Name", "CL_SAMPLER_MIP_FILTER_MODE_KHR")]
SamplerMipFilterModeKhr = 0x1155,
[NativeName("Name", "CL_SAMPLER_LOD_MIN_KHR")]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.


using System;
using Silk.NET.Core.Attributes;

#pragma warning disable 1591

namespace Silk.NET.OpenCL.Extensions.POCL
{
[NativeName("Name", "GLenum")]
public enum POCL : int
{
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
using System;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System.Text;
using Silk.NET.Core;
using Silk.NET.Core.Native;
using Silk.NET.Core.Attributes;
using Silk.NET.Core.Contexts;
using Silk.NET.Core.Loader;
using Silk.NET.OpenCL;
using Extension = Silk.NET.Core.Attributes.ExtensionAttribute;

#pragma warning disable 1591

namespace Silk.NET.OpenCL.Extensions.POCL
{
[Extension("POCL_content_size")]
public unsafe partial class PoclContentSize : NativeExtension<CL>
{
public const string ExtensionName = "POCL_content_size";
[NativeApi(EntryPoint = "clSetContentSizeBufferPoCL")]
public partial int SetContentSizeBufferPoCL([Flow(FlowDirection.In)] nint buffer, [Flow(FlowDirection.In)] nint content_size_buffer);

public PoclContentSize(INativeContext ctx)
: base(ctx)
{
}
}
}

Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFrameworks>netstandard2.0;netstandard2.1;netcoreapp3.1;net5.0</TargetFrameworks>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<LangVersion>preview</LangVersion>
</PropertyGroup>

<ItemGroup>
<ProjectReference Include="..\..\Silk.NET.OpenCL\Silk.NET.OpenCL.csproj" />
</ItemGroup>

<Import Project="..\..\..\..\build\props\bindings.props" />
</Project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.


using System;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System.Text;
using Silk.NET.Core;
using Silk.NET.Core.Native;
using Silk.NET.Core.Attributes;
using Silk.NET.Core.Contexts;
using Silk.NET.Core.Loader;

#pragma warning disable 1591

namespace Silk.NET.OpenCL
{
[NativeName("Name", "cl_device_integer_dot_product_acceleration_properties_khr")]
public unsafe partial struct DeviceIntegerDotProductAccelerationPropertiesKhr
{
public DeviceIntegerDotProductAccelerationPropertiesKhr
(
bool? signedAccelerated = null,
bool? unsignedAccelerated = null,
bool? mixedSignednessAccelerated = null,
bool? accumulatingSaturatingSignedAccelerated = null,
bool? accumulatingSaturatingUnsignedAccelerated = null,
bool? accumulatingSaturatingMixedSignednessAccelerated = null
) : this()
{
if (signedAccelerated is not null)
{
SignedAccelerated = signedAccelerated.Value;
}

if (unsignedAccelerated is not null)
{
UnsignedAccelerated = unsignedAccelerated.Value;
}

if (mixedSignednessAccelerated is not null)
{
MixedSignednessAccelerated = mixedSignednessAccelerated.Value;
}

if (accumulatingSaturatingSignedAccelerated is not null)
{
AccumulatingSaturatingSignedAccelerated = accumulatingSaturatingSignedAccelerated.Value;
}

if (accumulatingSaturatingUnsignedAccelerated is not null)
{
AccumulatingSaturatingUnsignedAccelerated = accumulatingSaturatingUnsignedAccelerated.Value;
}

if (accumulatingSaturatingMixedSignednessAccelerated is not null)
{
AccumulatingSaturatingMixedSignednessAccelerated = accumulatingSaturatingMixedSignednessAccelerated.Value;
}
}

/// <summary></summary>
[NativeName("Type", "cl_bool")]
[NativeName("Type.Name", "cl_bool")]
[NativeName("Name", "signed_accelerated")]
public bool SignedAccelerated;
/// <summary></summary>
[NativeName("Type", "cl_bool")]
[NativeName("Type.Name", "cl_bool")]
[NativeName("Name", "unsigned_accelerated")]
public bool UnsignedAccelerated;
/// <summary></summary>
[NativeName("Type", "cl_bool")]
[NativeName("Type.Name", "cl_bool")]
[NativeName("Name", "mixed_signedness_accelerated")]
public bool MixedSignednessAccelerated;
/// <summary></summary>
[NativeName("Type", "cl_bool")]
[NativeName("Type.Name", "cl_bool")]
[NativeName("Name", "accumulating_saturating_signed_accelerated")]
public bool AccumulatingSaturatingSignedAccelerated;
/// <summary></summary>
[NativeName("Type", "cl_bool")]
[NativeName("Type.Name", "cl_bool")]
[NativeName("Name", "accumulating_saturating_unsigned_accelerated")]
public bool AccumulatingSaturatingUnsignedAccelerated;
/// <summary></summary>
[NativeName("Type", "cl_bool")]
[NativeName("Type.Name", "cl_bool")]
[NativeName("Name", "accumulating_saturating_mixed_signedness_accelerated")]
public bool AccumulatingSaturatingMixedSignednessAccelerated;
}
}
Loading

0 comments on commit ae1a4b9

Please sign in to comment.