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

[feature] Toolchain type of the package #12596

Open
1 task done
redradist opened this issue Nov 23, 2022 · 4 comments
Open
1 task done

[feature] Toolchain type of the package #12596

redradist opened this issue Nov 23, 2022 · 4 comments

Comments

@redradist
Copy link
Contributor

redradist commented Nov 23, 2022

From the following presentation I saw a new feature package-type: https://youtu.be/v5BMoW9wVg8?t=497

My suggestion is to add a new package_type="toolchain". The reason is that although package_type="application" could be considered as toolchain, toolchain usually has additional standard utility like: linker, objdump, debbuger and etc., and it would be useful to distinguish between type of applications

Also in future conan could install toolchain and generate profile for installed toolchain, for example if toolchain was installed by conan the conanfile.txt could looks like:

[requires]
glfw/3.3.7
glew/2.2.0
glm/0.9.9.8

[generators]
cmake

[toolchain]
clang-17

And conan will figured out profile from toolchain name

@redradist
Copy link
Contributor Author

redradist commented Jun 20, 2023

@memsharded Any thoughts on this topic ?

@memsharded
Copy link
Member

We have already some tests that simulate the usage of packages containing "toolchain" like things, from compilers, ndk, libc++: https://github.com/conan-io/conan/blob/release/2.0/conans/test/integration/build_requires/test_toolchain_packages.py At the moment it seems that a new package type is not necessary, and tool_requires behave good for the purpose. If there is some other case in which a different package-type will provide different behavior, we can consider it, but the current design would only add a new package types if it is necessary to disambiguate the behavior.

@redradist
Copy link
Contributor Author

@memsharded

We have already some tests that simulate the usage of packages containing "toolchain" like things, from compilers, ndk, libc++: https://github.com/conan-io/conan/blob/release/2.0/conans/test/integration/build_requires/test_toolchain_packages.py At the moment it seems that a new package type is not necessary, and tool_requires behave good for the purpose. If there is some other case in which a different package-type will provide different behavior, we can consider it, but the current design would only add a new package types if it is necessary to disambiguate the behavior.

Toolchain is not simple tool, it is a bunch of tools that main purpose is to build project.
For example with current tool package type we do not have special attributes for this package like: linker, compiler, objdump and etc.
If we'll add this type of package then it will be possible to assign such attributes to this package

@redradist
Copy link
Contributor Author

redradist commented Jan 10, 2024

Hi @memsharded,

One additional benefits that this feature could bring is to make Conan equal to PlatformIO for embedded development as well as simplify installing different compilers

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants