Skip to content

Add executable generation for Linux and macOS #4

Add executable generation for Linux and macOS

Add executable generation for Linux and macOS #4

Workflow file for this run

name: WeasyPrint’s exe generation
on: [push]
jobs:
generate:
name: ${{ matrix.os }} - ${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ['ubuntu-20.04', 'macos-11']
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Use absolute imports
run: |
sed -i 's/^from \. /from weasyprint /' weasyprint/__main__.py
sed -i 's/^from \./from weasyprint\./' weasyprint/__main__.py
- name: Install Pango (MacOS)
if: matrix.os == 'macos-latest'
run: |
rm /usr/local/bin/2to3
brew install pango
- name: Install Pango (Windows)
if: matrix.os == 'windows-latest'
run: |
C:\msys64\usr\bin\bash -lc 'pacman -S mingw-w64-x86_64-pango --noconfirm'
rm C:\msys64\mingw64\bin\python.exe
- name: Install requirements
run: python -m pip install . pyinstaller
- name: Generate executable
run: python -m PyInstaller weasyprint/__main__.py -n weasyprint -F
- name: Test executable
run: dist/weasyprint --help
- name: Store executable
uses: actions/upload-artifact@v3
with:
name: weasyprint
path: |
dist/weasyprint
README.rst
LICENSE