Skip to content
This repository was archived by the owner on May 11, 2025. It is now read-only.

Commit 2ad89fe

Browse files
committed
Try to build codecs on Windows too
1 parent 0801e41 commit 2ad89fe

File tree

3 files changed

+32
-2
lines changed

3 files changed

+32
-2
lines changed

.github/workflows/build.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,19 @@ jobs:
88
strategy:
99
fail-fast: false
1010
matrix:
11-
os: [ubuntu-latest, macos-latest]
11+
os: [ubuntu-latest, macos-latest, windows-latest]
1212
steps:
1313
- uses: actions/checkout@v2
1414
- uses: actions/setup-python@v1
1515
with:
1616
python-version: 3.8
17+
- name: Install yasm
18+
if: matrix.os == 'windows-latest'
19+
run: curl -L -o 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\Tools\yasm.exe' http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win64.exe
1720
- name: Build codecs
1821
env:
1922
CIBW_BEFORE_BUILD: scripts/build-codecs /tmp/vendor
23+
CIBW_BEFORE_BUILD_WINDOWS: scripts\build-codecs.bat C:\cibw\vendor
2024
CIBW_BUILD: cp38-*
2125
CIBW_TEST_COMMAND: python -c "import dummy"
2226
run: |

scripts/build-codecs.bat

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
set destdir=%1
2+
3+
set outputfile=output\codecs-win%PYTHON_ARCH%.tar.bz2
4+
if "%PYTHON_ARCH%" == "64" (
5+
set triplet=x64-windows-static
6+
) else (
7+
set triplet=x86-windows-static
8+
)
9+
10+
vcpkg install libvpx:%triplet% opus:%triplet%
11+
12+
if exist %destdir% (
13+
rmdir /s /q %destdir%
14+
)
15+
mkdir %destdir%
16+
mkdir %destdir%\include
17+
mkdir %destdir%\lib
18+
xcopy C:\vcpkg\installed\%triplet%\include %destdir%\include\ /E
19+
xcopy C:\vcpkg\installed\%triplet%\lib %destdir%\lib\ /E
20+
21+
if not exist output (
22+
mkdir output
23+
)
24+
tar cjvf %outputfile% -C %destdir% include lib

setup.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,11 @@
44
if sys.platform == "win32":
55
include_dirs = ["C:\\cibw\\vendor\\include"]
66
library_dirs = ["C:\\cibw\\vendor\\lib"]
7+
libraries = ["opus", "vpxmt"]
78
else:
89
include_dirs = ["/tmp/vendor/include"]
910
library_dirs = ["/tmp/vendor/lib"]
11+
libraries = ["opus", "vpx"]
1012

1113
setuptools.setup(
1214
name="dummy",
@@ -17,7 +19,7 @@
1719
"dummy.binding",
1820
include_dirs=include_dirs,
1921
library_dirs=library_dirs,
20-
libraries=["opus", "vpx",],
22+
libraries=libraries,
2123
sources=["src/dummy/binding.c"],
2224
),
2325
],

0 commit comments

Comments
 (0)