Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(12)

Unified Diff: third_party/instrumented_libraries/download_build_install.py

Issue 253613002: Instrumented libraries: pass MSan, TSan blacklists when building. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: use "cp -f" in destdir builds Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | third_party/instrumented_libraries/instrumented_libraries.gyp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/instrumented_libraries/download_build_install.py
diff --git a/third_party/instrumented_libraries/download_build_install.py b/third_party/instrumented_libraries/download_build_install.py
index d81682d7a0a46fd5498e1593f7ae7302de31e83e..8d81be9cbe02d24570fcf71d1e4e3e0c33ffd748 100755
--- a/third_party/instrumented_libraries/download_build_install.py
+++ b/third_party/instrumented_libraries/download_build_install.py
@@ -127,7 +127,7 @@ def destdir_configure_make_install(parsed_arguments, environment,
# errors in dependent libraries.
'rm %s/lib/*.la -f' % destdir,
# Now move the contents of the temporary destdir to their final place.
- 'cp %s/* %s/ -rd' % (destdir, install_prefix)],
+ 'cp %s/* %s/ -rdf' % (destdir, install_prefix)],
parsed_arguments.verbose, environment)
@@ -263,15 +263,24 @@ def download_build_install(parsed_arguments):
environment['CC'] = parsed_arguments.c_compiler
if 'CXX' not in environment and parsed_arguments.cxx_compiler:
environment['CXX'] = parsed_arguments.cxx_compiler
- environment['CFLAGS'] = '%s %s' % (sanitizer_params['compiler_flags'],
+
+ product_directory = os.path.normpath('%s/%s' % (
+ get_script_absolute_path(),
+ parsed_arguments.product_directory))
+
+ compiler_flags = sanitizer_params['compiler_flags']
+ if parsed_arguments.sanitizer_blacklist:
+ compiler_flags += ' -fsanitize-blacklist=%s/%s' % (
+ product_directory,
+ parsed_arguments.sanitizer_blacklist)
+ environment['CFLAGS'] = '%s %s' % (compiler_flags,
parsed_arguments.custom_c_compiler_flags)
environment['CXXFLAGS'] = '%s %s' % (
- sanitizer_params['compiler_flags'],
+ compiler_flags,
parsed_arguments.custom_cxx_compiler_flags)
- install_prefix = '%s/%s/instrumented_libraries/%s' % (
- get_script_absolute_path(),
- parsed_arguments.product_directory,
+ install_prefix = '%s/instrumented_libraries/%s' % (
+ product_directory,
parsed_arguments.sanitizer_type)
# Make sure the linker searches the instrumented libraries dir for
@@ -348,6 +357,7 @@ def main():
# e.g. extracting archives with sources, patching makefiles, etc.
argument_parser.add_argument('--run-before-build', default='')
argument_parser.add_argument('--build-method', default='destdir')
+ argument_parser.add_argument('--sanitizer-blacklist', default='')
# Ignore all empty arguments because in several cases gyp passes them to the
# script, but ArgumentParser treats them as positional arguments instead of
« no previous file with comments | « no previous file | third_party/instrumented_libraries/instrumented_libraries.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698