1
mirror of https://github.com/jedisct1/libsodium.git synced 2024-12-19 18:15:18 -07:00
libsodium/packaging/dotnet-core
Henrik Gaßmann e8795ff105 [.NET Core] SUPPORT .NET FRAMEWORK >= 4.6 (#547)
Add MSBuild targets for net46 target framework which copy both x86 and
x64 libsodium binaries into corresponding folders. This allows AnyCPU
applications to load the appropriate binary at runtime via
`LoadLibraryEx`.
2017-05-19 16:44:44 +02:00
..
recipes Add missing file for packaging for .NET Core (#507) 2017-03-06 14:20:54 +01:00
.gitignore Add missing file for packaging for .NET Core (#507) 2017-03-06 14:20:54 +01:00
desktop.targets [.NET Core] SUPPORT .NET FRAMEWORK >= 4.6 (#547) 2017-05-19 16:44:44 +02:00
libsodium.props [.NET Core] SUPPORT .NET FRAMEWORK >= 4.6 (#547) 2017-05-19 16:44:44 +02:00
prepare.py [.NET Core] SUPPORT .NET FRAMEWORK >= 4.6 (#547) 2017-05-19 16:44:44 +02:00
README.md Bump package (not library) version 2017-03-28 12:57:19 +02:00

This directory contains scripts and files to package libsodium for .NET Core.

In .NET Core, it is customary to provide pre-compiled binaries for all platforms as NuGet packages. The purpose of the prepare.py script in this directory is to generate a Makefile that downloads and builds libsodium binaries for a number of platforms and assembles them in a NuGet package that can be uploaded to nuget.org.

See prepare.py for the complete list of supported platforms.

The metadata for the NuGet package is located in libsodium.props.

Making a pre-release

  1. Run python3 prepare.py 1.0.13-preview-01 to generate the Makefile. 1.0.13 is the libsodium version number; 01 is the pre-release number and needs to be incremented for each pre-release.
  2. Take a look at the generated Makefile. It uses sudo a few times.
  3. Run make to download and build the binaries and create the NuGet package. You may need to install docker, make, curl, tar and unzip first. The NuGet package is output as a .nupkg file in the build directory.
  4. Grab a cup of coffee. Downloading the Docker images and compiling the Linux binaries takes a while.
  5. Verify that everything in the .nupkg file is in place.
  6. Publish the release by uploading the .nupkg file to nuget.org.

Making a release

  1. Run python3 prepare.py 1.0.13 to generate the Makefile.

The remaining steps are the same.