[PATCH] D14345: [analyzer] Update SATestBuild.py to enable a 'download and patch' model for projects.

Devin Coughlin via cfe-commits cfe-commits at lists.llvm.org
Wed Nov 4 11:34:28 PST 2015


dcoughlin created this revision.
dcoughlin added reviewers: zaks.anna, krememek.
dcoughlin added a subscriber: cfe-commits.

Currently the SATestBuild.py and SATestAdd.py buildbot scripts expect project
sources to be checked into the project repository. This patch changes these
scripts to additionally support a model where project sources are downloaded
rather than checked into the repository. Sometimes projects may need to be
modified (for example, to support a newer versions of clang), so the updated scripts
also allow for an optional patch file that will be applied to the downloaded
project source before analysis.

To support this workflow, this patch changes the expected layout of
a project in the repository. The project-specific helper scripts will stay
in the root of each project directory, but the benchmark source itself (if
checked into the repo) should now be stored in a subdirectory named
'CachedSource':

project_name/
  cleanup_run_static_analyzer.sh [optional]
  run_static_analyzer.cmd [required]
  download_project.sh [optional]
  CachedSource/ [optional]
  changes_for_analyzer.patch [optional]

If the 'CachedSource' source directory is not present, the download script will
be executed. This script should download the project source into 'CachedSource'.
Then, if 'changes_for_analyzer.patch' is present its changes will
be applied to a copy of 'CachedSource' before analysis.


http://reviews.llvm.org/D14345

Files:
  utils/analyzer/SATestAdd.py
  utils/analyzer/SATestBuild.py

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D14345.39229.patch
Type: text/x-patch
Size: 8745 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20151104/26079d10/attachment.bin>


More information about the cfe-commits mailing list