[PATCH] D126196: [analyzer] SATest: Ensure Docker image can be built
Marco Antognini via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue May 24 02:44:27 PDT 2022
mantognini added a comment.
In D126196#3533678 <https://reviews.llvm.org/D126196#3533678>, @steakhal wrote:
> LGTM;
> So you have used this tool. Could you add some notes somewhere on how to get this to work?
> What is the workflow?
> Is it documented anywhere?
>
> I know that's an unrelated topic, but I might consider using/integrating this stuff into our workflow.
Thanks for the review.
It's kind of underdocumented at the moment. Happy to share here the commands I've run. I'm not planning to update a README file at this point as I believe `--help` messages from various scripts should be clarified too to avoid conflicting/confusing information. Unfortunately, I don't have the bandwidth at the moment to do that properly.
Essentially, I've run this to 1) build the docker image, 2) create some docker volume for persistent storage, and 3) open a shell in a docker container.
python3 ./clang/utils/analyzer/SATest.py docker --build-image
docker volume create --name satest-build
docker volume create --name satest-install
python3 ./clang/utils/analyzer/SATest.py docker \
--build-dir satest-build --clang-dir satest-install --llvm-project-dir $(pwd) \
--shell
Then, in that container, I've run essentially this to generate the reference data (mind the final `-r`):
python /entrypoint.py --build-llvm-only
cd /projects
python /scripts/SATest.py build [--projects cxxopts,...] [-j 10] -v -r
Then, to test some changes, I check out the relevant patch and re-run the above without `-r` to build and compare the results.
(I guess it should be possible to do all this without manually running commands in the container shell, but I haven't figured out how.)
I hope this helps.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D126196/new/
https://reviews.llvm.org/D126196
More information about the cfe-commits
mailing list