OLD | NEW |
1 #!/usr/bin/env bash | 1 #!/usr/bin/env bash |
2 # Copyright 2014 The Chromium Authors. All rights reserved. | 2 # Copyright 2014 The Chromium Authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 # This script returns the flags that should be passed to clang. | 6 # This script returns the flags that should be passed to clang. |
7 | 7 |
8 SRC_DIR=$(cd $(dirname $0)/../../.. && echo $PWD) | 8 SRC_DIR=$(cd $(dirname $0)/../../.. && echo $PWD) |
9 CLANG_LIB_PATH=$SRC_DIR/third_party/llvm-build/Release+Asserts/lib | 9 CLANG_LIB_PATH=$SRC_DIR/third_party/llvm-build/Release+Asserts/lib |
10 | 10 |
11 if uname -s | grep -q Darwin; then | 11 if uname -s | grep -q Darwin; then |
12 LIBSUFFIX=dylib | 12 LIBSUFFIX=dylib |
13 else | 13 else |
14 LIBSUFFIX=so | 14 LIBSUFFIX=so |
15 fi | 15 fi |
16 LIBNAME=\ | |
17 $(grep 'set(LIBRARYNAME' "$SRC_DIR"/tools/clang/blink_gc_plugin/CMakeLists.txt \ | |
18 | cut -d ' ' -f 2 | tr -d ')') | |
19 | 16 |
20 FLAGS="" | 17 FLAGS="" |
21 PREFIX="-Xclang -plugin-arg-blink-gc-plugin -Xclang" | 18 PREFIX="-Xclang -plugin-arg-blink-gc-plugin -Xclang" |
22 for arg in "$@"; do | 19 for arg in "$@"; do |
23 if [[ "$arg" = "enable-oilpan=1" ]]; then | 20 if [[ "$arg" = "enable-oilpan=1" ]]; then |
24 FLAGS="$FLAGS $PREFIX enable-oilpan" | 21 FLAGS="$FLAGS $PREFIX enable-oilpan" |
25 elif [[ "$arg" = "dump-graph=1" ]]; then | 22 elif [[ "$arg" = "dump-graph=1" ]]; then |
26 FLAGS="$FLAGS $PREFIX dump-graph" | 23 FLAGS="$FLAGS $PREFIX dump-graph" |
27 elif [[ "$arg" = "warn-raw-ptr=1" ]]; then | 24 elif [[ "$arg" = "warn-raw-ptr=1" ]]; then |
28 FLAGS="$FLAGS $PREFIX warn-raw-ptr" | 25 FLAGS="$FLAGS $PREFIX warn-raw-ptr" |
29 elif [[ "$arg" = "warn-unneeded-finalizer=1" ]]; then | 26 elif [[ "$arg" = "warn-unneeded-finalizer=1" ]]; then |
30 FLAGS="$FLAGS $PREFIX warn-unneeded-finalizer" | 27 FLAGS="$FLAGS $PREFIX warn-unneeded-finalizer" |
31 fi | 28 fi |
32 done | 29 done |
33 | 30 |
34 echo -Xclang -load -Xclang $CLANG_LIB_PATH/lib$LIBNAME.$LIBSUFFIX \ | 31 echo -Xclang -load -Xclang $CLANG_LIB_PATH/libBlinkGCPlugin.$LIBSUFFIX \ |
35 -Xclang -add-plugin -Xclang blink-gc-plugin $FLAGS | 32 -Xclang -add-plugin -Xclang blink-gc-plugin $FLAGS |
OLD | NEW |