Migrate the build to Conan 2.x - #42
Conversation
|
hi @hamidelmaazouz this repo is no longer actively maintained, so it may be a while before someone from @openqasm/qe-maintainers has a chance to take a look. I looked over your changes and it looked reasonable, so if no one else responds this week, I am willing to approve PR. |
Thanks for the update @blakejohnson, never considered this repo is about to be abandoned 😅. Not sure why, but I'm curious ^^. Come think of it, I've been putting up a similar migration for the |
|
I think this repo, in conjunction with |
While indeed it's heavy, I think I'll continue with LLVM for now. I find the IR(s), infrastructure, and tooling really useful. Anyway, thank you for the insight @blakejohnson, would be happy to contribute and merge once you're happy with it. |
mbhealy
left a comment
There was a problem hiding this comment.
Hi Hamide, in general your changes look good to me, but CI is currently failing a static check. It seems the conanfile.py is not formatted with black. Please update the PR accordingly.
|
Apologies for the delay in responding, I've been at a workshop earlier this week and didn't get to this until now. |
983c2ed to
746675d
Compare
930bbf6 to
7df41c4
Compare
|
hello @mbhealy, @blakejohnson Sorry it took me a while to get back to this, I believe I've addressed CI issues. Could you give it another look 🙏🏽 ? |
mbhealy
left a comment
There was a problem hiding this comment.
Couple small things, but generally LGTM.
| requirements: | ||
| - "gmp/6.3.0" | ||
| - "mpfr/4.2.1" | ||
| - "mpfr/4.2.0" |
There was a problem hiding this comment.
@mbhealy mpc/1.3.1 is strictly configured to mpfr/4.2.0: https://github.com/conan-io/conan-center-index/blob/master/recipes/mpc/all/conanfile.py#L52 and build fails with mpfr/4.2.1
There was a problem hiding this comment.
... unless you prefer overriding transitive deps ? which can be done via the override=True flag on the Requirements object:
def requirements(self):
# Private deps won't be linked against by consumers, which is important
# at least for Flex which does not expose a CMake target.
private_deps = ["bison", "flex"]
for req in self.conan_data["requirements"]:
private = any(req.startswith(d) for d in private_deps)
self.requires(req, visible=not private, override=True)
7df41c4 to
9fc245a
Compare
Hey @steleman, @steleman, @openqasm/qe-maintainers,
I Found a few issues getting started on the project. As I got lots of warnings and errors about Conan 1 deprecations, I thought it's a good first step to try and migrate the build to latest Conan.
Changes are also reflected on the CI pipeline, which should be running fine.