Add nuget package for Windows x86 (#683)

This commit is contained in:
Fangjun Kuang
2024-03-21 14:57:01 +08:00
committed by GitHub
parent acf0975153
commit c8770aec20
5 changed files with 82 additions and 17 deletions

View File

@@ -87,7 +87,7 @@ def process_macos(s):
f.write(s)
def process_windows(s):
def process_windows(s, rid):
libs = [
"espeak-ng.dll",
"kaldi-decoder-core.dll",
@@ -103,18 +103,18 @@ def process_windows(s):
version = get_version()
prefix = "/tmp/windows/"
prefix = f"/tmp/windows-{rid}/"
libs = [prefix + lib for lib in libs]
libs = "\n ;".join(libs)
d = get_dict()
d["dotnet_rid"] = "win-x64"
d["dotnet_rid"] = f"win-{rid}"
d["libs"] = libs
environment = jinja2.Environment()
template = environment.from_string(s)
s = template.render(**d)
with open("./windows/sherpa-onnx.runtime.csproj", "w") as f:
with open(f"./windows-{rid}/sherpa-onnx.runtime.csproj", "w") as f:
f.write(s)
@@ -122,7 +122,8 @@ def main():
s = read_proj_file("./sherpa-onnx.csproj.runtime.in")
process_macos(s)
process_linux(s)
process_windows(s)
process_windows(s, "x64")
process_windows(s, "x86")
s = read_proj_file("./sherpa-onnx.csproj.in")
d = get_dict()

View File

@@ -16,14 +16,15 @@ HF_MIRROR=hf.co
mkdir -p /tmp/
pushd /tmp
mkdir -p linux macos windows
mkdir -p linux macos windows-x64 windows-x86
# You can pre-download the required wheels to /tmp
src_dir=/tmp
linux_wheel=$src_dir/sherpa_onnx-${SHERPA_ONNX_VERSION}-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
macos_wheel=$src_dir/sherpa_onnx-${SHERPA_ONNX_VERSION}-cp38-cp38-macosx_11_0_x86_64.whl
windows_wheel=$src_dir/sherpa_onnx-${SHERPA_ONNX_VERSION}-cp38-cp38-win_amd64.whl
windows_x64_wheel=$src_dir/sherpa_onnx-${SHERPA_ONNX_VERSION}-cp38-cp38-win_amd64.whl
windows_x86_wheel=$src_dir/sherpa_onnx-${SHERPA_ONNX_VERSION}-cp38-cp38-win32.whl
if [ ! -f /tmp/linux/libsherpa-onnx-core.so ]; then
echo "---linux x86_64---"
@@ -72,13 +73,13 @@ if [ ! -f /tmp/macos/libsherpa-onnx-core.dylib ]; then
fi
if [ ! -f /tmp/windows/sherpa-onnx-core.dll ]; then
if [ ! -f /tmp/windows-x64/sherpa-onnx-core.dll ]; then
echo "---windows x64---"
cd windows
cd windows-x64
mkdir -p wheel
cd wheel
if [ -f $windows_wheel ]; then
cp -v $windows_wheel .
if [ -f $windows_x64_wheel ]; then
cp -v $windows_x64_wheel .
else
curl -OL https://$HF_MIRROR/csukuangfj/sherpa-onnx-wheels/resolve/main/sherpa_onnx-${SHERPA_ONNX_VERSION}-cp38-cp38-win_amd64.whl
fi
@@ -92,9 +93,29 @@ if [ ! -f /tmp/windows/sherpa-onnx-core.dll ]; then
cd ..
fi
if [ ! -f /tmp/windows-x86/sherpa-onnx-core.dll ]; then
echo "---windows x86---"
cd windows-x86
mkdir -p wheel
cd wheel
if [ -f $windows_x86_wheel ]; then
cp -v $windows_x86_wheel .
else
curl -OL https://$HF_MIRROR/csukuangfj/sherpa-onnx-wheels/resolve/main/sherpa_onnx-${SHERPA_ONNX_VERSION}-cp38-cp38-win32.whl
fi
unzip sherpa_onnx-${SHERPA_ONNX_VERSION}-cp38-cp38-win32.whl
cp -v sherpa_onnx-${SHERPA_ONNX_VERSION}.data/data/bin/*.dll ../
cp -v sherpa_onnx-${SHERPA_ONNX_VERSION}.data/data/bin/*.lib ../
cd ..
rm -rf wheel
ls -lh
cd ..
fi
popd
mkdir -p macos linux windows all
mkdir -p macos linux windows-x64 windows-x86 all
cp ./online.cs all
cp ./offline.cs all
@@ -111,7 +132,12 @@ dotnet build -c Release
dotnet pack -c Release -o ../packages
popd
pushd windows
pushd windows-x64
dotnet build -c Release
dotnet pack -c Release -o ../packages
popd
pushd windows-x86
dotnet build -c Release
dotnet pack -c Release -o ../packages
popd

View File

@@ -51,6 +51,7 @@
<PackageReference Include="org.k2fsa.sherpa.onnx.runtime.linux-x64" Version="{{ version }}" />
<PackageReference Include="org.k2fsa.sherpa.onnx.runtime.osx-x64" Version="{{ version }}" />
<PackageReference Include="org.k2fsa.sherpa.onnx.runtime.win-x64" Version="{{ version }}" />
<PackageReference Include="org.k2fsa.sherpa.onnx.runtime.win-x86" Version="{{ version }}" />
</ItemGroup>
</Project>