Skip to content

[com9] Add com9 compilation (instead of fixed .exe) - #1281

Merged
fso42 merged 3 commits into
masterfrom
addCom9Compil
Jun 8, 2026
Merged

[com9] Add com9 compilation (instead of fixed .exe)#1281
fso42 merged 3 commits into
masterfrom
addCom9Compil

Conversation

@fso42

@fso42 fso42 commented May 27, 2026

Copy link
Copy Markdown
Contributor

Summary

Remove precompiled MoT-Voellmy binaries from version control and instead compile them at package time. A build script fetches the C source from the upstream GitHub repository and compiles for the target platform.

Changes

  • New build script (avaframe/com9MoTVoellmy/_buildMoTVoellmy.py): discovers the latest C source from the upstream repo via the GitHub API, caches it, and compiles with gcc
  • Pixi task: pixi run compilemot for manual compilation, optionally with a local .c file path
  • setup.py hook: compiles the binary automatically during pip install (best-effort, warns if gcc is missing)
  • CI wheels: CIBW_BEFORE_BUILD_* runs the build script in each platform environment
  • CI sdist: compiles Linux natively and cross-compiles Windows via mingw-w64, ships both binaries in the source tarball

@fso42 fso42 self-assigned this May 27, 2026
@fso42 fso42 added the enhancement New feature or request label May 27, 2026
@qltysh

qltysh Bot commented May 27, 2026

Copy link
Copy Markdown
Contributor

All good ✅

Comment thread avaframe/com9MoTVoellmy/_buildMoTVoellmy.py
Comment thread avaframe/com9MoTVoellmy/_buildMoTVoellmy.py
@qltysh

qltysh Bot commented May 27, 2026

Copy link
Copy Markdown
Contributor

Qlty


Coverage Impact

⬆️ Merging this pull request will increase total coverage on master by 0.60%.

Modified Files with Diff Coverage (1)

RatingFile% DiffUncovered Line #s
Coverage rating: F Coverage rating: A
avaframe/com9MoTVoellmy/com9MoTVoellmy.py100.0%
Total100.0%
🚦 See full report on Qlty Cloud »

🛟 Help
  • Diff Coverage: Coverage for added or modified lines of code (excludes deleted files). Learn more.

  • Total Coverage: Coverage for the whole repository, calculated as the sum of all File Coverage. Learn more.

  • File Coverage: Covered Lines divided by Covered Lines plus Missed Lines. (Excludes non-executable lines including blank lines and comments.)

    • Indirect Changes: Changes to File Coverage for files that were not modified in this PR. Learn more.

@fso42 fso42 changed the title Add com9 compilation (instead of fixed .exe) [com9] Add com9 compilation (instead of fixed .exe) May 27, 2026
Comment thread avaframe/tests/test_com9MoTVoellmy.py
Comment thread avaframe/com9MoTVoellmy/_buildMoTVoellmy.py
Comment thread avaframe/com9MoTVoellmy/_buildMoTVoellmy.py
Comment thread avaframe/com9MoTVoellmy/_buildMoTVoellmy.py
Comment thread avaframe/com9MoTVoellmy/_buildMoTVoellmy.py
Comment thread avaframe/tests/test_com9MoTVoellmy.py
fso42 added 3 commits June 8, 2026 09:02
Remove precompiled binaries from version control. Add build script
that fetches the C source from the upstream GitHub repo and compiles
for the current platform. Integration via setup.py hook, pixi task,
and CI (cibuildwheel + sdist cross-compilation).

com9MoTVoellmy: improve gcc-not-found error with download hint

com9MoTVoellmy: drop env var source option, document build process

fix(com9MoTVoellmy): update `simTypeList` to use all available input data

test(com9MoTVoellmy): add integration test with avaKot

Run full com9MoTVoellmyMain pipeline with simType=null, verify peak
files and config files are produced. Skip when MoT binary is absent.

Also add `pixi run compilemot` to CI so the binary is built before
tests run.

chore(coverage): exclude com9MoTVoellmy build script
chore(github-actions): update `cibuildwheel` paths for `com9MoTVoellmy` build script

Relocated the `com9MoTVoellmy` build script to the `avaframe` directory across all platforms in the GitHub Actions workflow. Ensures correct script execution during the build process.

chore(github-actions): add `CIBW_ENVIRONMENT` variable to workflows

Set `CIBW_ENVIRONMENT` to include `GITHUB_TOKEN` in the PyPI build and upload workflow. Ensures access to GitHub secrets during the build process.

fix(com9MoTVoellmy): remove `-static` flag from Linux build command

Remove the `-static` flag from the Linux build command in `_buildMoTVoellmy.py` to address compatibility issues with dynamic linking. Ensures smoother builds on Linux systems.

fix(com9MoTVoellmy): update macOS task to use platform-specific binary
@fso42

fso42 commented Jun 8, 2026

Copy link
Copy Markdown
Contributor Author

Standardtests ident, apart from know com5

@fso42 fso42 added this to the Version 2.1 milestone Jun 8, 2026
@fso42
fso42 merged commit e3bd766 into master Jun 8, 2026
4 checks passed
@fso42
fso42 deleted the addCom9Compil branch June 8, 2026 07:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants