-
Notifications
You must be signed in to change notification settings - Fork 319
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
Analyzing a CMake/Conan build directory throws IllegalArgumentException #6623
Comments
I'm actually not so sure anymore about our intention here 😆
I believe the idea is better tracked at #2896, and I just closed #4958 in favor of it.
Sounds more like you'd want #2031 then? Or could we support all CMake projects by always leveraging |
Eh, I guess intentions can change over time :-D
Thanks, that makes it easier to navigate this!
[Disclaimer: I'm not an expert on CMake or Conan.] So, I think solving #2031 would be a much better solution than running just the Conan analyzer (at least for the C++ projects that I'm familiar with). But: not all CMake projects use Conan; and even if they use Conan they might still install some dependencies through other ways (e.g. in my projects there are some dependencies which are still installed via APT/DPKG). Also, not all CMake+Conan projects necessarily use the Another point is that while CMake might provide the most complete list of dependencies, I think it does not provide details like license or homepage for each dependency. OTOH Conan does provide those details. So maybe the most complete solution for CMake projects would be:
So an analyzer for CMake projects would be really useful, to get a more complete list of dependencies. But even then it will be necessary that the Conan analyzer can analyze a build directory which is not under version control (for case 2a). For those cases, ORT could use the source checkout directory as What do you think? |
TBH, I don't see this happening any time soon. This CMake/Conan mix seems to be a rather special case, and I'd prefer to focus on getting "vanilla" CMake support (#2031) done. |
Closing this in favor of #8803. |
I'm trying to run ORT on the build directory of a CMake project. Since this is a build directory, it is not under version control.
I'm running ORT like this:
/tmp/ort1/bin/ort --stacktrace -P ort.analyzer.allowDynamicVersions=true --info analyze -f JSON -i /tmp/build/ -o /tmp/ort-results/ort-analyzer-4
.This results in an exception:
I've read in some places (e.g. #4958 (comment)) that analyzing a non-VCS directory is not really supported, but that there is intention to make this a supported use case (or something like that?). Is there an issue to track this idea?
Btw. the reason why I'm running ORT on the build directory rather than on the source directory is that we don't have a
conanfile.txt
in our sources, since we use https://github.com/conan-io/cmake-conan instead. During build aconanfile.txt
file is created in the build directory though, so I wanted to analyze that file instead.The text was updated successfully, but these errors were encountered: