-
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
[autoconf] conan v2 #12896
[autoconf] conan v2 #12896
Conversation
Note: test_package can't use the new Autools generator due to conan-io/conan#11975
From review comment
According review comment
According review comment
KB-H013 states that everything needs to be installed under bin for tools. This also means that the `PATH` for the actual bin location `bin/bin` needs to be added to the `build_env`
Should fix KB-H071
subsystem isn't known at this time
No need to actually compile something with this tool we simply need to know if it runs. The win_bash for the run needs to be set explicitly due to the conf not working properly in the test_package see conan-io/conan#11975
This reverts commit d9ee4de.
This allows us to use the msys2 bash without using the conf_info in the test_package. Which is currently problematic due to: conan-io/conan#11975 Contributes to CURA-9574
Contributes to CURA-8831
The ducktyping seems to affect the usage of the Autotools in the main recipe as well Contributes to CURA-8831
Contributes to CURA-8831
Contributes to CURA-8831
The subsystem isn't known when consuming projects request the info Contributes to CURA-8831
Using some duck typing and inheritance to work around GH issue conan-io/conan#11980 Contributes to CURA-9595
Contribute to CURA-8831
Contribute to CURA-8831
Still an issue: conan-io/conan#11975 Contribute to CURA-8831
This comment has been minimized.
This comment has been minimized.
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.
Matches what was discussed 👍
Unless there's a blocker I think fine tuning in the next PR is good :)
f05d39a
Co-authored-by: Chris Mc <prince.chrismc@gmail.com>
if self._settings_build.os == "Windows" and not self.conf.get("tools.microsoft.bash:path", default=False, check_type=bool): | ||
return # autoconf needs a bash if there isn't a bash no need to build |
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.
shouldn't be merged in this state where windows is not tested, needs conan 1.53.0 in c3i
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.
Why does this need 1.53? 👀
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.
conan-io/conan#12095. So currently test is skipped on Windows, not good.
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.
@jellespijker please remove this condition, now that conan 1.53.0 is dsployed, tools.microsoft.bash:path
should be found in test package
if can_run(self): | ||
ext = ".exe" if self.settings.os == "Windows" else "" | ||
test_cmd = unix_path(self, path.join(self.build_folder, f"test_package{ext}")) | ||
|
||
self.run(test_cmd, env="conanbuild") |
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.
not need to protect with can_run, since it's executed in build scope.
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.
Should this be run scope? Seems odd to be using build scope in a "can the test run" scenario 🤔
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.
yes it should be run scope
This comment has been minimized.
This comment has been minimized.
Co-authored-by: SpaceIm <30052553+SpaceIm@users.noreply.github.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
As I said in #12896 (comment), Windows is not tested, so I don't understand why it's approved. Actually it seems to break windows builds relying on autoreconf: #14110 (comment) Where does it come from? |
so, should we revert? |
At least still convert all paths in |
@jellespijker did by any chance test that this recipe also runs from within I've tried a bunch of different profiles to try to get
to work but have had zero success with that. |
these changes were instigated specifically for use because of the need to run it in msys2. At the moment we're not using the chain of dependencies (in which autoconf is a part with) in production but it should work. we planned on using it with this recipe https://github.com/Ultimaker/conan-ultimaker-index/blob/CURA-8831_pyqt6_recipe/recipes/pyqt6/conanfile.py using the following configuration https://github.com/Ultimaker/conan-config/tree/CURA-8831_pyqt6_recipe which should work on Mac, Linux and Windows. I'm gonna try if broke on msys2 somewhere this week and come back to you. But I suggest that if it is indeed broken for you that you create a bug report, so the CCI maintainers can process it in their normal workflow |
@jellespijker Thanks for your prompt reply 😊 I've created an issue -> #14375 |
Specify library name and version: autoconf/x.x.x
I took the liberty of defining a conf value:
tools.autoconf:autoconf
,tools.autoconf:autoreconf
,tools.autoconf:autoheader
,tools.autoconf:autom4te
which are paths to the binary m4 executable. I don't know if tools is a reserved namespace but it maid sense in my mind. Let me know if that should change.Based on this template:
https://github.com/conan-io/conan-center-index/tree/master/docs/package_templates/autotools_package
Contribute to CURA-8831