# Copyright (c) 2013 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("clang.gni") config("find_bad_constructs") { if (clang_use_chrome_plugins) { cflags = [] # The plugin is built directly into clang, so there's no need to load it # dynamically. cflags += [ "-Xclang", "-add-plugin", "-Xclang", "find-bad-constructs", "-Xclang", "-plugin-arg-find-bad-constructs", "-Xclang", "raw-ptr-template-as-trivial-member", ] if (is_linux || is_chromeos || is_android || is_fuchsia) { cflags += [ "-Xclang", "-plugin-arg-find-bad-constructs", "-Xclang", "check-ipc", ] } } } # Enables some extra Clang-specific warnings. Some third-party code won't # compile with these so may want to remove this config. config("extra_warnings") { cflags = [ "-Wheader-hygiene", # Warns when a const char[] is converted to bool. "-Wstring-conversion", "-Wtautological-overlap-compare", ] } group("llvm-symbolizer_data") { if (is_win) { data = [ "$clang_base_path/bin/llvm-symbolizer.exe" ] } else { data = [ "$clang_base_path/bin/llvm-symbolizer" ] if (!is_apple) { # llvm-symbolizer uses libstdc++ from the clang package. data += [ "$clang_base_path/lib/libstdc++.so.6" ] } } }