Based on the documentation, i am aware that conan has the following files that affects its settings or configurations:
conanfile.py can also modify what is defined in the above files.conanfile.py to check self.settings.compiler.libcxx to see which lib is used. But i cannot have the value modified.conanfile.py to modify the settings in settings.yml.conanfile.py to use different profilesSo, it becomes confusing to me that:
what exactly are these files related to each other? And when should i use conanfiles.py to make the modification and when should I modify these files directly?
I tried to dig such info from the doc but it does not seem to be straightforward to me.
settings which of those settings will be used in the recipesettings.yml that will raise a validation error.Some minor clarifications:
conanfile.py to modify anything at settings.yml. It can only declare the settings that are usedconanfile.py to use different profiles. It is the user/command-line who uses different profiles, and pass their values to conanfiles.This is very helpful, meanwhile, how about conan.conf file?
conan.conf is a "global/general" configuration of the client tool. For example where the packages are stored, if the client is using revisions or not, the number of CPUs available for parallel operations if possible, if the downloads do retries in case of failures, etc.