Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🩹 make GMP dependency opt-in instead of used-if-found #608

Merged
merged 1 commit into from
May 23, 2024

Conversation

burgholzer
Copy link
Member

Description

This PR changes the CMake configuration so that GMP, which can be used in the ZX library, needs to be explicitly added (opt-in) instead of automatically being used (actually unconditionally, without an opt-out option).

This has popped up in cda-tum/mqt-qcec#396 since delocate fails to properly repair the produced wheel. This is a result of gmp being automatically installed on macOS runners via brew. However, this gets the latest system version, which is not compatible with the minimum macOS targets that we set. I believe this only popped up now, because there has been a delocate update that catches this.
In lack of a better option at the moment, this PR makes GMP support entirely opt-in, which disables it for wheel builds and resolves the underlying issue.
Anyone that wants to build MQT Core with GMP support, can now configure CMake with -DMQT_CORE_WITH_GMP

In the future, it might be worth investigating whether there is a better way to do this, e.g., by manually building gmp with the required compatibility.

Checklist:

  • The pull request only contains commits that are related to it.
  • I have added appropriate tests and documentation.
  • I have made sure that all CI jobs on GitHub pass.
  • The pull request introduces no new warnings and follows the project's style guidelines.

@burgholzer burgholzer self-assigned this May 23, 2024
@burgholzer burgholzer added dependencies Pull requests that update a dependency file fix Fix for something that isn't working c++ Anything related to C++ code labels May 23, 2024
Signed-off-by: burgholzer <burgholzer@me.com>
Copy link

codecov bot commented May 23, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 91.6%. Comparing base (acb8895) to head (315ee62).
Report is 110 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@          Coverage Diff          @@
##            main    #608   +/-   ##
=====================================
  Coverage   91.6%   91.6%           
=====================================
  Files        147     147           
  Lines      14635   14635           
  Branches    2341    2341           
=====================================
+ Hits       13408   13409    +1     
+ Misses      1227    1226    -1     
Flag Coverage Δ
cpp 91.3% <ø> (+<0.1%) ⬆️
python 99.7% <ø> (ø)

see 1 file with indirect coverage changes

@burgholzer burgholzer merged commit 5f27ae7 into main May 23, 2024
33 checks passed
@burgholzer burgholzer deleted the make-gmp-opt-in branch May 23, 2024 15:50
burgholzer added a commit to cda-tum/mqt-qcec that referenced this pull request May 23, 2024
Signed-off-by: burgholzer <burgholzer@me.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c++ Anything related to C++ code dependencies Pull requests that update a dependency file fix Fix for something that isn't working
Projects
Status: Done
Status: Done
Development

Successfully merging this pull request may close these issues.

1 participant