-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
civetweb: conan v2 support #12270
civetweb: conan v2 support #12270
Conversation
@property | ||
def _build_subfolder(self): | ||
return "build_subfolder" | ||
no_copy_source = True |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no_copy_source = True |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
without it, build fails before generate method call with:
ERROR: The folder cache/open-source/.conan/data/civetweb/1.15/_/_/build/a6857e39dd728ca8fee09108efc211b3685e325c/build/Release does not exist and could not be created (Not a directory).
I detected other pull requests that are modifying civetweb/all recipe: This message is automatically generated by https://github.com/ericLemanissier/conan-center-conflicting-prs so don't hesitate to report issues/improvements there. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Co-authored-by: Uilian Ries <uilianries@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@dornbirndevelops By any chance did you try to build From what I can see, the migration didn't go well as it's not possible to build |
@Corendos I tried the following routine now (which worked for me): conan remote clean
conan export recipes/civetweb/all civetweb/1.15@
conan export recipes/openssl/1.x.x openssl/1.1.1q@
conan install civetweb/1.15@ \
-b missing \
-s:b arch=x86_64 \
-s:b os=Linux \
-s:b compiler=gcc \
-s:b compiler.version=9 \
-s:b compiler.libcxx=libstdc++11 \
-s:b build_type=Release \
-s:h arch=x86_64 \
-s:h os=Linux \
-s:h compiler=gcc \
-s:h compiler.version=9 \
-s:h compiler.libcxx=libstdc++11 \
-s:h build_type=Release \
-o:h civetweb:with_ssl=True |
@dornbirndevelops I'm seeing the same behavior as @Corendos. I'm still on conan v1.51.0. I haven't kept up with all the changes that have gone into conan v2 but is it possible that the
always evaluates to In the conan output when building:
|
@dwosk After wasting one day on this issue, I finally came up to the same conclusion. Updating from conan 1.51.0 to 1.51.3 made the problem go away. That might be a dumb question @dornbirndevelops, but how are we supposed to make use of conan if it keeps breaking every time someone changes something ? Isn't the purpose of package manager to offer reproducible builds ? At work, we use conan for a very specific use case and it has been the cause of 100% of our CI problems for the past 8 months, with every time the same scenario :
I'm sure I'm missing something but haven't found in the documentation a way to pin the exact recipe that worked with a specific version of conan. I think we will get rid of conan at some point in the future due to these problems, but I would personally like to understand how it's supposed to be used correctly, any thoughts ? In any case, thanks for the help 😁 |
@Corendos I can understand your frustration, but you might have missed the reason why I did this particular change. To answer your questions, I also experienced issues and inconsistencies in terms of working builds using the (always updated) packages from Conan center. For such rapidly changing solutions, one way to approach this would be to not use conancenter directly, but rather keep a fixed commit of the index inside your corporate Artifactory. Speaking of build reproducibility, the package manager per se is not in charge of accomplishing this goal.
again, lock files and a fixed commit index do the trick for me.
the minimum required version of a recipe can be stated inside the recipe (the same way the follow up of this PR is done)
well a good source of information on how to use it correctly can be the official documentation. |
And 1.50.2 !!! |
Specify library name and version: civetweb/all
This is also a good place to share with all of us why you are submitting this PR (specially if it is a new addition to ConanCenter): is it a dependency of other libraries you want to package? Are you the author of the library? Thanks!