Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Packaging QuadDType

Packaging QuadDType #3

Workflow file for this run

name:Build Wheels
on:
push:
branches:
-main
tags:
-'quaddtype-v*'
paths:
-'quaddtype/**'
pull_request:
paths:
-'quaddtype/**'
workflow_dispatch:
jobs:
build_wheels_linux:
name:Build wheels on Linux
runs-on:ubuntu-latest
steps:
-uses:actions/checkout@v3
-name:Set up Python
uses:actions/setup-python@v4
with:
python-version:'>=3.10.0'
-name:Install cibuildwheel
run:pip install cibuildwheel==2.20.0
-name:Build wheels
env:
CIBW_BUILD:'cp310-manylinux_x86_64 cp311-manylinux_x86_64 cp312-manylinux_x86_64'
CIBW_MANYLINUX_X86_64_IMAGE:manylinux_2_28
CIBW_BUILD_VERBOSITY:'3'
CIBW_BEFORE_ALL:|
git clone https://github.com/shibatch/sleef.git
cd sleef
cmake -S . -B build -DSLEEF_BUILD_QUAD:BOOL=ON -DSLEEF_BUILD_SHARED_LIBS:BOOL=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON
cmake --build build/ --clean-first -j
cmake --install build --prefix /usr/local
CIBW_ENVIRONMENT:>
CFLAGS="-I/usr/local/include $CFLAGS"
CXXFLAGS="-I/usr/local/include $CXXFLAGS"
LDFLAGS="-L/usr/local/lib64 $LDFLAGS"
LD_LIBRARY_PATH="/usr/local/lib64:$LD_LIBRARY_PATH"
CIBW_REPAIR_WHEEL_COMMAND:|
auditwheel repair -w {dest_dir} --plat manylinux_2_28_x86_64 {wheel}
CIBW_TEST_COMMAND:|
pip install {package}[test]
pytest {project}/tests
CIBW_TEST_EXTRAS:'test'
run:|
python -m cibuildwheel --output-dir wheelhouse
working-directory:./quaddtype
-uses:actions/upload-artifact@v4
with:
path:./quaddtype/wheelhouse/*.whl
name:wheels-linux
build_wheels_macos:
name:Build wheels on ${{ matrix.os }}
runs-on:${{ matrix.os }}
strategy:
matrix:
os:[macos-13, macos-14]
steps:
-uses:actions/checkout@v3
-name:Set up Python
uses:actions/setup-python@v4
with:
python-version:'3.10'
-name:Install SLEEF
env:
MACOSX_DEPLOYMENT_TARGET:'11.0'
run:|
git clone https://github.com/shibatch/sleef.git
cd sleef
cmake -S . -B build \
-DSLEEF_BUILD_QUAD:BOOL=ON \
-DSLEEF_BUILD_SHARED_LIBS:BOOL=ON \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 \
-DCMAKE_INSTALL_RPATH="@loader_path/../lib" \
-DCMAKE_BUILD_WITH_INSTALL_RPATH=ON
cmake --build build/ --clean-first -j
sudo cmake --install build --prefix /usr/local
-name:Install cibuildwheel
run:pip install cibuildwheel==2.20.0
-name:Build wheels
env:
CIBW_BUILD:'cp310-* cp311-* cp312-*'
CIBW_ARCHS_MACOS:${{ matrix.os == 'macos-13' && 'x86_64' || 'arm64' }}
CIBW_BUILD_VERBOSITY:'1'
CIBW_ENVIRONMENT:>
MACOSX_DEPLOYMENT_TARGET="11.0"
DYLD_LIBRARY_PATH="/usr/local/lib:$DYLD_LIBRARY_PATH"
CFLAGS="-I/usr/local/include $CFLAGS"
CXXFLAGS="-I/usr/local/include $CXXFLAGS"
LDFLAGS="-L/usr/local/lib $LDFLAGS"
CIBW_REPAIR_WHEEL_COMMAND:>
delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}
CIBW_TEST_COMMAND:|
pip install {package}[test]
pytest {project}/tests
CIBW_TEST_EXTRAS:'test'
run:|
python -m cibuildwheel --output-dir wheelhouse
working-directory:./quaddtype
-uses:actions/upload-artifact@v4
with:
path:./quaddtype/wheelhouse/*.whl
name:wheels-${{ matrix.os }}
build_wheels_windows:
name:Build wheels on Windows
runs-on:windows-latest
strategy:
matrix:
architecture:[x64]
steps:
-uses:actions/checkout@v3
-name:Setup MSVC
uses:ilammy/msvc-dev-cmd@v1
with:
arch:${{ matrix.architecture }}
-name:Set up Python 3.10
uses:actions/setup-python@v4
with:
python-version:'3.10'
architecture:${{ matrix.architecture }}
-name:Install CMake
uses:lukka/get-cmake@latest
-name:Clone and Build SLEEF
shell:pwsh
run:|
git clone https://github.com/shibatch/sleef.git
cd sleef
cmake -S . -B build -G "Visual Studio 17 2022" -A ${{ matrix.architecture == 'x86' && 'Win32' || 'x64' }} -DSLEEF_BUILD_QUAD:BOOL=ON -DSLEEF_BUILD_SHARED_LIBS:BOOL=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON
cmake --build build --config Release --parallel
cmake --install build --prefix "C:/sleef" --config Release
-name:Setup build environment
shell:pwsh
run:|
$env:INCLUDE += ";C:\sleef\include"
$env:LIB += ";C:\sleef\lib"
$env:PATH = "C:\sleef\bin;$env:PATH"
echo "INCLUDE=$env:INCLUDE" >> $env:GITHUB_ENV
echo "LIB=$env:LIB" >> $env:GITHUB_ENV
echo "PATH=$env:PATH" >> $env:GITHUB_ENV
-name:Install build dependencies
shell:bash -l {0}
run:|
pip install -U pip
pip install cibuildwheel==2.20.0 ninja meson meson-python numpy delvewheel pytest
-name:Build wheels
env:
CIBW_BUILD:'cp310-* cp311-* cp312-*'
CIBW_SKIP:'pp* cp36-* cp37-* cp38-* cp39-* cp313-*'
CIBW_ARCHS_WINDOWS:${{ matrix.architecture == 'x86' && 'x86' || 'AMD64' }}
CIBW_BUILD_VERBOSITY:'3'
DISTUTILS_USE_SDK:'1'
MSSdk:'1'
CIBW_BEFORE_BUILD:|
pip install meson meson-python ninja numpy
CIBW_REPAIR_WHEEL_COMMAND:'delvewheel repair -w {dest_dir} {wheel} --add-path C:\sleef\bin'
CIBW_TEST_COMMAND:|
pip install {package}[test]
python -m pytest -v {project}/test
CIBW_TEST_EXTRAS:test
CIBW_TEST_FAIL_FAST:1
shell:pwsh
run:|
python -m cibuildwheel --output-dir wheelhouse
if (-not (Test-Path wheelhouse/*.whl)) { throw "Wheel was not created" }
working-directory:./quaddtype
-uses:actions/upload-artifact@v4
with:
path:./quaddtype/wheelhouse/*.whl
name:wheels-windows-${{ matrix.architecture }}
publish_to_testpypi:
name:Publish to TestPyPI
needs:[build_wheels_linux, build_wheels_macos, build_wheels_windows]
runs-on:ubuntu-latest
if:startsWith(github.ref, 'refs/tags/quaddtype-v')
steps:
-name:Download all workflow run artifacts
uses:actions/download-artifact@v4
with:
path:dist
-name:Publish to TestPyPI
uses:pypa/gh-action-pypi-publish@v1.9.0
with:
user:__token__
password:${{ secrets.PYPI_API_TOKEN }}
repository-url:https://test.pypi.org/legacy/
packages-dir:dist/*
create_release:
name:Create Release
needs:[build_wheels_linux, build_wheels_macos, build_wheels_windows]
runs-on:ubuntu-latest
if:startsWith(github.ref, 'refs/tags/quaddtype-v')
steps:
-name:Checkout code
uses:actions/checkout@v2
-name:Download all workflow run artifacts
uses:actions/download-artifact@v4
with:
path:artifacts
-name:Create Release
id:create_release
uses:actions/create-release@v1
env:
GITHUB_TOKEN:${{ secrets.ACCESS_TOKEN }}
with:
tag_name:${{ github.ref }}
release_name:Release ${{ github.ref }}
draft:false
prerelease:false
-name:Upload Release Assets
uses:softprops/action-gh-release@v1
if:startsWith(github.ref, 'refs/tags/')
with:
files:./artifacts/**/*.whl
env:
GITHUB_TOKEN:${{ secrets.ACCESS_TOKEN }}

[8]ページ先頭

©2009-2025 Movatter.jp