OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import("//build/config/sanitizers/sanitizers.gni") | 5 import("//build/config/sanitizers/sanitizers.gni") |
6 import("//build/toolchain/goma.gni") | 6 import("//build/toolchain/goma.gni") |
7 | 7 |
8 declare_args() { | 8 declare_args() { |
9 # The default number of jobs to use when building instrumented libraries. | |
10 instrumented_libraries_jobs = 8 | |
11 | |
12 # The platform on which the instrumented libraries are being built. | 9 # The platform on which the instrumented libraries are being built. |
13 instrumented_libraries_platform = "trusty" | 10 instrumented_libraries_platform = "trusty" |
14 } | 11 } |
15 | 12 |
16 group("deps") { | 13 group("deps") { |
17 if (use_prebuilt_instrumented_libraries) { | 14 if (use_prebuilt_instrumented_libraries) { |
18 assert(prebuilt_instrumented_libraries_available, | 15 assert(prebuilt_instrumented_libraries_available, |
19 "Prebuilt instrumented libraries are only available when " + | 16 "Prebuilt instrumented libraries are only available when " + |
20 "is_msan = true and msan_track_origins = {0, 2}") | 17 "is_msan = true and msan_track_origins = {0, 2}") |
21 deps = [ | 18 deps = [ |
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
195 if (defined(invoker.build_method)) { | 192 if (defined(invoker.build_method)) { |
196 build_method = invoker.build_method | 193 build_method = invoker.build_method |
197 } | 194 } |
198 | 195 |
199 cc = rebase_path("//third_party/llvm-build/Release+Asserts/bin/clang") | 196 cc = rebase_path("//third_party/llvm-build/Release+Asserts/bin/clang") |
200 cxx = rebase_path("//third_party/llvm-build/Release+Asserts/bin/clang++") | 197 cxx = rebase_path("//third_party/llvm-build/Release+Asserts/bin/clang++") |
201 if (use_goma) { | 198 if (use_goma) { |
202 cc = "${goma_dir}/gomacc ${cc}" | 199 cc = "${goma_dir}/gomacc ${cc}" |
203 cxx = "${goma_dir}/gomacc ${cxx}" | 200 cxx = "${goma_dir}/gomacc ${cxx}" |
204 } | 201 } |
205 jobs = instrumented_libraries_jobs | |
206 if (defined(invoker.jobs)) { | |
207 jobs = invoker.jobs | |
208 } | |
209 package_cflags = [ | 202 package_cflags = [ |
210 "-O2", | 203 "-O2", |
211 "-gline-tables-only", | 204 "-gline-tables-only", |
212 "-fPIC", | 205 "-fPIC", |
213 "-w", | 206 "-w", |
214 "-U_FORITFY_SOURCE", | 207 "-U_FORITFY_SOURCE", |
215 "-fno-omit-frame-pointer", | 208 "-fno-omit-frame-pointer", |
216 ] | 209 ] |
217 package_ldflags = [] | 210 package_ldflags = [] |
218 if (is_asan) { | 211 if (is_asan) { |
(...skipping 18 matching lines...) Expand all Loading... |
237 if (defined(invoker.deps)) { | 230 if (defined(invoker.deps)) { |
238 deps = invoker.deps | 231 deps = invoker.deps |
239 } | 232 } |
240 product_dir = rebase_path(root_out_dir) | 233 product_dir = rebase_path(root_out_dir) |
241 intermediate_dir = rebase_path(target_gen_dir) | 234 intermediate_dir = rebase_path(target_gen_dir) |
242 args = [ | 235 args = [ |
243 "--build-method=${build_method}", | 236 "--build-method=${build_method}", |
244 "--cc=${cc}", | 237 "--cc=${cc}", |
245 "--cxx=${cxx}", | 238 "--cxx=${cxx}", |
246 "--intermediate-dir=${intermediate_dir}", | 239 "--intermediate-dir=${intermediate_dir}", |
247 "--jobs=${jobs}", | |
248 "--libdir=lib", | 240 "--libdir=lib", |
249 "--package=${target_name}", | 241 "--package=${target_name}", |
250 "--product-dir=${product_dir}", | 242 "--product-dir=${product_dir}", |
251 "--cflags=${package_cflags}", | 243 "--cflags=${package_cflags}", |
252 "--ldflags=${package_ldflags}", | 244 "--ldflags=${package_ldflags}", |
253 "--sanitizer=${sanitizer_type}", | 245 "--sanitizer=${sanitizer_type}", |
254 ] | 246 ] |
255 outputs = [ | 247 outputs = [ |
256 "${root_out_dir}/instrumented_libraries/${sanitizer_type}/${target_name}
.txt", | 248 "${root_out_dir}/instrumented_libraries/${sanitizer_type}/${target_name}
.txt", |
257 ] | 249 ] |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
346 ] | 338 ] |
347 } | 339 } |
348 | 340 |
349 instrumented_library("libappindicator1") { | 341 instrumented_library("libappindicator1") { |
350 extra_configure_flags = [ | 342 extra_configure_flags = [ |
351 "--disable-static", | 343 "--disable-static", |
352 | 344 |
353 # See above. | 345 # See above. |
354 "--disable-introspection", | 346 "--disable-introspection", |
355 ] | 347 ] |
356 jobs = 1 | |
357 pre_build = "scripts/pre-build/autogen.sh" | 348 pre_build = "scripts/pre-build/autogen.sh" |
358 } | 349 } |
359 | 350 |
360 instrumented_library("libasound2") { | 351 instrumented_library("libasound2") { |
361 extra_configure_flags = [ "--disable-static" ] | 352 extra_configure_flags = [ "--disable-static" ] |
362 pre_build = "scripts/pre-build/libasound2.sh" | 353 pre_build = "scripts/pre-build/libasound2.sh" |
363 } | 354 } |
364 | 355 |
365 instrumented_library("libatk-bridge2.0-0") { | 356 instrumented_library("libatk-bridge2.0-0") { |
366 extra_configure_flags = [ "--disable-static" ] | 357 extra_configure_flags = [ "--disable-static" ] |
(...skipping 17 matching lines...) Expand all Loading... |
384 extra_configure_flags = [ "--disable-static" ] | 375 extra_configure_flags = [ "--disable-static" ] |
385 build_method = "custom_libcap" | 376 build_method = "custom_libcap" |
386 } | 377 } |
387 | 378 |
388 instrumented_library("libcredentialkit_pkcs11") { | 379 instrumented_library("libcredentialkit_pkcs11") { |
389 build_method = "stub" | 380 build_method = "stub" |
390 } | 381 } |
391 | 382 |
392 instrumented_library("libcups2") { | 383 instrumented_library("libcups2") { |
393 patch = "patches/libcups2.diff" | 384 patch = "patches/libcups2.diff" |
394 jobs = 1 | |
395 extra_configure_flags = [ | 385 extra_configure_flags = [ |
396 "--disable-static", | 386 "--disable-static", |
397 | 387 |
398 # All from debian/rules. | 388 # All from debian/rules. |
399 "--localedir=/usr/share/cups/locale", | 389 "--localedir=/usr/share/cups/locale", |
400 "--enable-slp", | 390 "--enable-slp", |
401 "--enable-libpaper", | 391 "--enable-libpaper", |
402 "--enable-ssl", | 392 "--enable-ssl", |
403 "--enable-gnutls", | 393 "--enable-gnutls", |
404 "--disable-openssl", | 394 "--disable-openssl", |
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
616 instrumented_library("libp11-kit0") { | 606 instrumented_library("libp11-kit0") { |
617 extra_configure_flags = [ "--disable-static" ] | 607 extra_configure_flags = [ "--disable-static" ] |
618 | 608 |
619 # Required on Trusty due to autoconf version mismatch. | 609 # Required on Trusty due to autoconf version mismatch. |
620 pre_build = "scripts/pre-build/autoreconf.sh" | 610 pre_build = "scripts/pre-build/autoreconf.sh" |
621 } | 611 } |
622 | 612 |
623 instrumented_library("libpci3") { | 613 instrumented_library("libpci3") { |
624 extra_configure_flags = [ "--disable-static" ] | 614 extra_configure_flags = [ "--disable-static" ] |
625 build_method = "custom_libpci3" | 615 build_method = "custom_libpci3" |
626 jobs = 1 | |
627 } | 616 } |
628 | 617 |
629 instrumented_library("libpcre3") { | 618 instrumented_library("libpcre3") { |
630 extra_configure_flags = [ | 619 extra_configure_flags = [ |
631 "--enable-utf8", | 620 "--enable-utf8", |
632 "--enable-unicode-properties", | 621 "--enable-unicode-properties", |
633 "--disable-static", | 622 "--disable-static", |
634 ] | 623 ] |
635 } | 624 } |
636 | 625 |
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
802 # is a huge pain in the neck. Let's link them statically instead, and | 791 # is a huge pain in the neck. Let's link them statically instead, and |
803 # hope for the best. | 792 # hope for the best. |
804 "--with-included-modules=yes", | 793 "--with-included-modules=yes", |
805 ] | 794 ] |
806 } | 795 } |
807 | 796 |
808 instrumented_library("pulseaudio") { | 797 instrumented_library("pulseaudio") { |
809 # New location of libpulsecommon. | 798 # New location of libpulsecommon. |
810 if (is_precise) { | 799 if (is_precise) { |
811 patch = "patches/pulseaudio.precise.diff" | 800 patch = "patches/pulseaudio.precise.diff" |
812 jobs = 1 | |
813 } | 801 } |
814 if (is_trusty) { | 802 if (is_trusty) { |
815 package_ldflags = [ "-Wl,-R,XORIGIN/pulseaudio/." ] | 803 package_ldflags = [ "-Wl,-R,XORIGIN/pulseaudio/." ] |
816 } | 804 } |
817 extra_configure_flags = [ | 805 extra_configure_flags = [ |
818 "--disable-static", | 806 "--disable-static", |
819 | 807 |
820 # From debian/rules. | 808 # From debian/rules. |
821 "--enable-x11", | 809 "--enable-x11", |
822 "--disable-hal-compat", | 810 "--disable-hal-compat", |
(...skipping 15 matching lines...) Expand all Loading... |
838 "--disable-gudev", | 826 "--disable-gudev", |
839 ] | 827 ] |
840 pre_build = "scripts/pre-build/udev.sh" | 828 pre_build = "scripts/pre-build/udev.sh" |
841 } | 829 } |
842 | 830 |
843 instrumented_library("zlib1g") { | 831 instrumented_library("zlib1g") { |
844 # --disable-static is not supported | 832 # --disable-static is not supported |
845 patch = "patches/zlib1g.diff" | 833 patch = "patches/zlib1g.diff" |
846 } | 834 } |
847 } | 835 } |
OLD | NEW |