Working cibuildwheel github action by brunoenten · Pull Request #121 · SpotlightKid/python-rtmidi · GitHub
Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
01afb1c
docs: convert readme, changelog, authors, and install docs to Markdown
SpotlightKid Dec 12, 2022
81fdac2
feat: generate dev requirements via pip-tools
SpotlightKid Oct 26, 2022
1fa98c3
feat: switch to meson / mesonpep517 build system
SpotlightKid Dec 12, 2022
b82abd8
docs: update install instructions
SpotlightKid Dec 13, 2022
eea2603
feat: remove travis and Appveyor CI setup
SpotlightKid Dec 13, 2022
16609dc
fix: version restrictions for JACK 1 dependency
SpotlightKid Dec 13, 2022
310c92b
fix: remove uneeded stuff from meson build files and correct comments
SpotlightKid Dec 13, 2022
0378b2f
fix: use 'host_machine' instead of 'target_machine' in meson build f…
SpotlightKid Dec 13, 2022
6bc8478
fix: meson dependency checks
SpotlightKid Dec 13, 2022
d816644
fix: run meson install and dist scripts with correct Python version
SpotlightKid Dec 13, 2022
1857bcc
fix: handle neither JACK 1 nor JACK 2 dependency found
SpotlightKid Dec 13, 2022
7a6e363
feat: add GitHub Actions workflow to build wheels with cibuildwheel
SpotlightKid Dec 13, 2022
a443563
feat: add cibuildwheel config to pyproject.toml
SpotlightKid Dec 13, 2022
f52c649
fix: workflow step 'upload_pypi' also depends on step 'build_arch_whe…
SpotlightKid Dec 14, 2022
ebde2fb
fix: update GitHub Actions versions
SpotlightKid Dec 14, 2022
ecc1594
fix: GH actions: set python version to 3.11 and macos to latest
SpotlightKid Dec 14, 2022
edc36f4
fix: limit windows builds to amd64 arch
SpotlightKid Dec 14, 2022
b694d19
fix: provisional workaround for failing check for winmm
SpotlightKid Dec 14, 2022
3258c68
Working cibuildwheel github action
brunoenten Jan 4, 2023
43ce162
Merge branch 'SpotlightKid:master' into master
brunoenten May 21, 2023
56a579f
Merge branch 'feat/modernize' into master
brunoenten May 21, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
110 changes: 110 additions & 0 deletions .github/workflows/main.yml
25 changes: 22 additions & 3 deletions meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,30 @@ project(
default_options: [
'warning_level=2'
],
meson_version: '>=0.60.0'
meson_version: '>=0.63.0'
)

# Dependencies
cpp = meson.get_compiler('cpp')

## From https://github.com/numpy/numpy/blob/main/numpy/meson.build
# Platform detection
if host_machine.system() == 'windows' and cpp.get_id() == 'gcc'
# For mingw-w64, link statically against the UCRT.
gcc_link_args = ['-lucrt', '-static']

add_project_link_arguments(gcc_link_args, language: ['c', 'cpp'])
# Force gcc to float64 long doubles for compatibility with MSVC
# builds, for C only.
add_project_arguments('-mlong-double-64', language: 'c')
# Make fprintf("%zd") work (see https://github.com/rgommers/scipy/issues/118)
add_project_arguments('-D__USE_MINGW_ANSI_STDIO=1', language: ['c', 'cpp'])
# Manual add of MS_WIN64 macro when not using MSVC.
# https://bugs.python.org/issue28267
add_project_arguments('-DMS_WIN64', language: ['c', 'cpp'])
endif
##

# Dependencies
jack2_dep = dependency('jack', version: '>=1.9.11', required: false)
jack1_dep = dependency('jack', version: ['>=0.125.0', '<1.0'], required: false)
alsa_dep = dependency('alsa', required: false)
Expand All @@ -20,7 +39,7 @@ coremidi_dep = dependency(
modules: ['coreaudio', 'coremidi', 'foundation'],
required: false
)
winmm_dep = dependency('winmm', required: false)
winmm_dep = cpp.find_library('winmm', required: false)

if not jack2_dep.found() and jack1_dep.found()
jack_dep = jack1_dep
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ manylinux-aarch64-image = "manylinux_2_28"
build = "cp3{8,9,10,11}-manylinux*"
archs = ["auto64"]
before-all = [
"yum install -y alsa-lib-devel alsa-utils",
"dnf -y install alsa-lib-devel alsa-utils",
"pipx install ninja",
"curl -o jack2-1.9.21.tar.gz https://codeload.github.com/jackaudio/jack2/tar.gz/refs/tags/v1.9.21",
"tar -xzf jack2-1.9.21.tar.gz",
Expand Down
4 changes: 3 additions & 1 deletion rtmidi/meson.build