1
0
mirror of https://github.com/facebook/zstd.git synced 2025-07-30 22:23:13 +03:00

reduce length of scanbuild static analyzer test

This was ~30mn, by far the longest run on travisCI.
That's because it re-analyzes multiple times the same files (library files notably).
It also performs actions that make no sense for the static analyzer purpose,
such as building the single-file library.

Reduced time spent in this test by reducing its scope :
just build the CLI, and obviously the library along it.
These are the only ones that really deserve to be analyzed.

Unfortunately, it still results in a number of false positives when using newer versions of scanbuild
(each version of scanbuild generates a different list of false positives).
These will have to be fixed before transfering to Github Actions.
This commit is contained in:
Yann Collet
2021-08-29 15:26:31 -07:00
parent 7f37b8a547
commit 72bd2a83a0
3 changed files with 10 additions and 4 deletions

View File

@ -51,7 +51,7 @@ matrix:
- make -C tests fuzztest - make -C tests fuzztest
# TODO: migrate to GH actions once newest clang staticanalyze warnings are fixed # TODO: migrate to GH actions once newest clang staticanalyze warnings are fixed
- name: static analyzer scanbuild # ~26mn - name: static analyzer scanbuild # ~8mn
dist: trusty # note : it's important to pin down a version of static analyzer, since different versions report different false positives dist: trusty # note : it's important to pin down a version of static analyzer, since different versions report different false positives
script: script:
- make staticAnalyze - make staticAnalyze
@ -104,8 +104,9 @@ matrix:
- make arminstall - make arminstall
- make aarch64fuzz - make aarch64fuzz
# To be removed once confirmed transferred to GA # This test currently fails on GA specifically, for no obvious reason
- name: Versions Compatibility Test # 11.5mn # (it works fine on travisCI, and on local test platforms).
- name: Versions Compatibility Test # ~6mn
script: script:
- make -C tests versionsTest - make -C tests versionsTest

View File

@ -416,5 +416,5 @@ bmi32build: clean
staticAnalyze: SCANBUILD ?= scan-build staticAnalyze: SCANBUILD ?= scan-build
staticAnalyze: staticAnalyze:
$(CC) -v $(CC) -v
CC=$(CC) CPPFLAGS=-g $(SCANBUILD) --status-bugs -v $(MAKE) allzstd examples contrib CC=$(CC) CPPFLAGS=-g $(SCANBUILD) --status-bugs -v $(MAKE) zstd
endif endif

View File

@ -244,6 +244,9 @@ if __name__ == '__main__':
make(['zstd'], False) make(['zstd'], False)
else: else:
os.chdir(programs_dir) os.chdir(programs_dir)
print('-----------------------------------------------')
print('compiling head')
print('-----------------------------------------------')
make(['zstd'], False) make(['zstd'], False)
shutil.copy2('zstd', dst_zstd) shutil.copy2('zstd', dst_zstd)
@ -260,7 +263,9 @@ if __name__ == '__main__':
print('cp ' + dict_files + ' ' + dict_source_path) print('cp ' + dict_files + ' ' + dict_source_path)
execute('cp ' + dict_files + ' ' + dict_source_path, param_shell=True) execute('cp ' + dict_files + ' ' + dict_source_path, param_shell=True)
print('-----------------------------------------------')
print('Compress test.dat by all released zstd') print('Compress test.dat by all released zstd')
print('-----------------------------------------------')
error_code = 0 error_code = 0
for tag in tags: for tag in tags: