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

Side by Side Diff: webrtc/modules/audio_coding/BUILD.gn

Issue 2656823005: iSAC: Untangle some cyclic dependencies (Closed)
Patch Set: Created 3 years, 11 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 unified diff | Download patch
OLDNEW
1 # Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. 1 # Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
2 # 2 #
3 # Use of this source code is governed by a BSD-style license 3 # Use of this source code is governed by a BSD-style license
4 # that can be found in the LICENSE file in the root of the source 4 # that can be found in the LICENSE file in the root of the source
5 # tree. An additional intellectual property rights grant can be found 5 # tree. An additional intellectual property rights grant can be found
6 # in the file PATENTS. All contributing project authors may 6 # in the file PATENTS. All contributing project authors may
7 # be found in the AUTHORS file in the root of the source tree. 7 # be found in the AUTHORS file in the root of the source tree.
8 8
9 import("../../webrtc.gni") 9 import("../../webrtc.gni")
10 import("audio_coding.gni") 10 import("audio_coding.gni")
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 ":audio_format", 70 ":audio_format",
71 71
72 # TODO(charujain): Clean this dependency when downstream projects are 72 # TODO(charujain): Clean this dependency when downstream projects are
73 # updated to properly depend on audio_format_conversion target. 73 # updated to properly depend on audio_format_conversion target.
74 ":audio_format_conversion", 74 ":audio_format_conversion",
75 "../../base:rtc_base_approved", 75 "../../base:rtc_base_approved",
76 ] 76 ]
77 } 77 }
78 78
79 rtc_static_library("builtin_audio_decoder_factory") { 79 rtc_static_library("builtin_audio_decoder_factory") {
80 # TODO(kjellander): Remove (bugs.webrtc.org/6828)
81 # Errors on cyclic dependency with :isac_fix if enabled.
82 check_includes = false
83
84 sources = [ 80 sources = [
85 "codecs/builtin_audio_decoder_factory.cc", 81 "codecs/builtin_audio_decoder_factory.cc",
86 "codecs/builtin_audio_decoder_factory.h", 82 "codecs/builtin_audio_decoder_factory.h",
87 ] 83 ]
88 deps = [ 84 deps = [
89 "../..:webrtc_common", 85 "../..:webrtc_common",
90 "../../base:rtc_base_approved", 86 "../../base:rtc_base_approved",
91 ":audio_decoder_factory_interface", 87 ":audio_decoder_factory_interface",
92 ] + audio_codec_deps 88 ] + audio_codec_deps
93 defines = audio_codec_defines 89 defines = audio_codec_defines
(...skipping 399 matching lines...) Expand 10 before | Expand all | Expand 10 after
493 deps = [ 489 deps = [
494 ":audio_decoder_interface", 490 ":audio_decoder_interface",
495 ":audio_encoder_interface", 491 ":audio_encoder_interface",
496 "../..:webrtc_common", 492 "../..:webrtc_common",
497 "../../base:rtc_base_approved", 493 "../../base:rtc_base_approved",
498 "../../common_audio", 494 "../../common_audio",
499 ] 495 ]
500 } 496 }
501 497
502 rtc_static_library("isac_common") { 498 rtc_static_library("isac_common") {
503 # TODO(kjellander): Remove (bugs.webrtc.org/6828)
504 # Has a cyclic dependency with :isac if checks are enabled.
505 check_includes = false
506
507 sources = [ 499 sources = [
508 "codecs/isac/audio_encoder_isac_t.h", 500 "codecs/isac/audio_encoder_isac_t.h",
509 "codecs/isac/audio_encoder_isac_t_impl.h", 501 "codecs/isac/audio_encoder_isac_t_impl.h",
510 "codecs/isac/locked_bandwidth_info.cc", 502 "codecs/isac/locked_bandwidth_info.cc",
511 "codecs/isac/locked_bandwidth_info.h", 503 "codecs/isac/locked_bandwidth_info.h",
512 ] 504 ]
513 deps = [ 505 deps = [
514 ":audio_encoder_interface", 506 ":audio_encoder_interface",
507 "../..:webrtc_common",
515 "../../base:rtc_base_approved", 508 "../../base:rtc_base_approved",
516 ] 509 ]
517 } 510 }
518 511
519 config("isac_config") { 512 config("isac_config") {
520 include_dirs = [ 513 include_dirs = [
521 "../../..", 514 "../../..",
522 "codecs/isac/main/include", 515 "codecs/isac/main/include",
523 ] 516 ]
524 } 517 }
525 518
526 rtc_static_library("isac") { 519 rtc_static_library("isac") {
527 sources = [ 520 sources = [
521 "codecs/isac/main/include/audio_decoder_isac.h",
522 "codecs/isac/main/include/audio_encoder_isac.h",
528 "codecs/isac/main/source/audio_decoder_isac.cc", 523 "codecs/isac/main/source/audio_decoder_isac.cc",
529 "codecs/isac/main/source/audio_encoder_isac.cc", 524 "codecs/isac/main/source/audio_encoder_isac.cc",
530 ] 525 ]
531 526
532 deps = [ 527 deps = [
533 ":audio_decoder_interface", 528 ":audio_decoder_interface",
534 ":audio_encoder_interface", 529 ":audio_encoder_interface",
535 ":isac_common", 530 ":isac_common",
536 ] 531 ]
537 public_deps = [ 532 public_deps = [
538 ":isac_c", 533 ":isac_c",
539 ] 534 ]
540 } 535 }
541 536
542 rtc_static_library("isac_c") { 537 rtc_static_library("isac_c") {
543 visibility = [ ":*" ] # Only targets in this file can depend on this. 538 visibility = [ ":*" ] # Only targets in this file can depend on this.
544 sources = [ 539 sources = [
545 "codecs/isac/main/include/audio_decoder_isac.h",
546 "codecs/isac/main/include/audio_encoder_isac.h",
547 "codecs/isac/main/include/isac.h", 540 "codecs/isac/main/include/isac.h",
548 "codecs/isac/main/source/arith_routines.c", 541 "codecs/isac/main/source/arith_routines.c",
549 "codecs/isac/main/source/arith_routines.h", 542 "codecs/isac/main/source/arith_routines.h",
550 "codecs/isac/main/source/arith_routines_hist.c", 543 "codecs/isac/main/source/arith_routines_hist.c",
551 "codecs/isac/main/source/arith_routines_logist.c", 544 "codecs/isac/main/source/arith_routines_logist.c",
552 "codecs/isac/main/source/bandwidth_estimator.c", 545 "codecs/isac/main/source/bandwidth_estimator.c",
553 "codecs/isac/main/source/bandwidth_estimator.h", 546 "codecs/isac/main/source/bandwidth_estimator.h",
554 "codecs/isac/main/source/codec.h", 547 "codecs/isac/main/source/codec.h",
555 "codecs/isac/main/source/crc.c", 548 "codecs/isac/main/source/crc.c",
556 "codecs/isac/main/source/crc.h", 549 "codecs/isac/main/source/crc.h",
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
634 ] 627 ]
635 public_deps = [ 628 public_deps = [
636 ":isac_fix_c", 629 ":isac_fix_c",
637 ] 630 ]
638 631
639 if (rtc_build_with_neon) { 632 if (rtc_build_with_neon) {
640 deps += [ ":isac_neon" ] 633 deps += [ ":isac_neon" ]
641 } 634 }
642 } 635 }
643 636
637 rtc_source_set("isac_fix_common") {
638 visibility = [ ":*" ] # Only targets in this file can depend on this.
639 sources = [
640 "codecs/isac/fix/source/codec.h",
641 "codecs/isac/fix/source/fft.c",
642 "codecs/isac/fix/source/fft.h",
643 "codecs/isac/fix/source/settings.h",
644 ]
645 public_configs = [ ":isac_fix_config" ]
646 }
647
644 rtc_source_set("isac_fix_c") { 648 rtc_source_set("isac_fix_c") {
645 # TODO(kjellander): Remove (bugs.webrtc.org/6828)
646 # Errors on cyclic dependency with :builtin_audio_decoder_factory if enabled.
647 check_includes = false
648
649 visibility = [ ":*" ] # Only targets in this file can depend on this. 649 visibility = [ ":*" ] # Only targets in this file can depend on this.
650 sources = [ 650 sources = [
651 "codecs/isac/fix/include/audio_decoder_isacfix.h", 651 "codecs/isac/fix/include/audio_decoder_isacfix.h",
652 "codecs/isac/fix/include/audio_encoder_isacfix.h", 652 "codecs/isac/fix/include/audio_encoder_isacfix.h",
653 "codecs/isac/fix/include/isacfix.h", 653 "codecs/isac/fix/include/isacfix.h",
654 "codecs/isac/fix/source/arith_routines.c", 654 "codecs/isac/fix/source/arith_routines.c",
655 "codecs/isac/fix/source/arith_routines_hist.c", 655 "codecs/isac/fix/source/arith_routines_hist.c",
656 "codecs/isac/fix/source/arith_routines_logist.c", 656 "codecs/isac/fix/source/arith_routines_logist.c",
657 "codecs/isac/fix/source/arith_routins.h", 657 "codecs/isac/fix/source/arith_routins.h",
658 "codecs/isac/fix/source/bandwidth_estimator.c", 658 "codecs/isac/fix/source/bandwidth_estimator.c",
659 "codecs/isac/fix/source/bandwidth_estimator.h", 659 "codecs/isac/fix/source/bandwidth_estimator.h",
660 "codecs/isac/fix/source/codec.h",
661 "codecs/isac/fix/source/decode.c", 660 "codecs/isac/fix/source/decode.c",
662 "codecs/isac/fix/source/decode_bwe.c", 661 "codecs/isac/fix/source/decode_bwe.c",
663 "codecs/isac/fix/source/decode_plc.c", 662 "codecs/isac/fix/source/decode_plc.c",
664 "codecs/isac/fix/source/encode.c", 663 "codecs/isac/fix/source/encode.c",
665 "codecs/isac/fix/source/entropy_coding.c", 664 "codecs/isac/fix/source/entropy_coding.c",
666 "codecs/isac/fix/source/entropy_coding.h", 665 "codecs/isac/fix/source/entropy_coding.h",
667 "codecs/isac/fix/source/fft.c",
668 "codecs/isac/fix/source/fft.h",
669 "codecs/isac/fix/source/filterbank_tables.c", 666 "codecs/isac/fix/source/filterbank_tables.c",
670 "codecs/isac/fix/source/filterbank_tables.h", 667 "codecs/isac/fix/source/filterbank_tables.h",
671 "codecs/isac/fix/source/filterbanks.c", 668 "codecs/isac/fix/source/filterbanks.c",
672 "codecs/isac/fix/source/filters.c", 669 "codecs/isac/fix/source/filters.c",
673 "codecs/isac/fix/source/initialize.c", 670 "codecs/isac/fix/source/initialize.c",
674 "codecs/isac/fix/source/isac_fix_type.h", 671 "codecs/isac/fix/source/isac_fix_type.h",
675 "codecs/isac/fix/source/isacfix.c", 672 "codecs/isac/fix/source/isacfix.c",
676 "codecs/isac/fix/source/lattice.c", 673 "codecs/isac/fix/source/lattice.c",
677 "codecs/isac/fix/source/lattice_c.c", 674 "codecs/isac/fix/source/lattice_c.c",
678 "codecs/isac/fix/source/lpc_masking_model.c", 675 "codecs/isac/fix/source/lpc_masking_model.c",
679 "codecs/isac/fix/source/lpc_masking_model.h", 676 "codecs/isac/fix/source/lpc_masking_model.h",
680 "codecs/isac/fix/source/lpc_tables.c", 677 "codecs/isac/fix/source/lpc_tables.c",
681 "codecs/isac/fix/source/lpc_tables.h", 678 "codecs/isac/fix/source/lpc_tables.h",
682 "codecs/isac/fix/source/pitch_estimator.c", 679 "codecs/isac/fix/source/pitch_estimator.c",
683 "codecs/isac/fix/source/pitch_estimator.h", 680 "codecs/isac/fix/source/pitch_estimator.h",
684 "codecs/isac/fix/source/pitch_estimator_c.c", 681 "codecs/isac/fix/source/pitch_estimator_c.c",
685 "codecs/isac/fix/source/pitch_filter.c", 682 "codecs/isac/fix/source/pitch_filter.c",
686 "codecs/isac/fix/source/pitch_filter_c.c", 683 "codecs/isac/fix/source/pitch_filter_c.c",
687 "codecs/isac/fix/source/pitch_gain_tables.c", 684 "codecs/isac/fix/source/pitch_gain_tables.c",
688 "codecs/isac/fix/source/pitch_gain_tables.h", 685 "codecs/isac/fix/source/pitch_gain_tables.h",
689 "codecs/isac/fix/source/pitch_lag_tables.c", 686 "codecs/isac/fix/source/pitch_lag_tables.c",
690 "codecs/isac/fix/source/pitch_lag_tables.h", 687 "codecs/isac/fix/source/pitch_lag_tables.h",
691 "codecs/isac/fix/source/settings.h",
692 "codecs/isac/fix/source/spectrum_ar_model_tables.c", 688 "codecs/isac/fix/source/spectrum_ar_model_tables.c",
693 "codecs/isac/fix/source/spectrum_ar_model_tables.h", 689 "codecs/isac/fix/source/spectrum_ar_model_tables.h",
694 "codecs/isac/fix/source/structs.h", 690 "codecs/isac/fix/source/structs.h",
695 "codecs/isac/fix/source/transform.c", 691 "codecs/isac/fix/source/transform.c",
696 "codecs/isac/fix/source/transform_tables.c", 692 "codecs/isac/fix/source/transform_tables.c",
697 ] 693 ]
698 694
699 public_configs = [ ":isac_fix_config" ] 695 public_configs = [ ":isac_fix_config" ]
700 696
701 deps = [ 697 deps = [
702 ":audio_decoder_interface", 698 ":audio_decoder_interface",
703 ":audio_encoder_interface", 699 ":audio_encoder_interface",
704 ":isac_common", 700 ":isac_common",
705 "../..:webrtc_common", 701 "../..:webrtc_common",
706 "../../base:rtc_base_approved", 702 "../../base:rtc_base_approved",
707 "../../common_audio", 703 "../../common_audio",
708 "../../system_wrappers", 704 "../../system_wrappers",
709 ] 705 ]
710 706
707 public_deps = [
708 ":isac_fix_common",
709 ]
710
711 if (rtc_build_with_neon) { 711 if (rtc_build_with_neon) {
712 deps += [ ":isac_neon" ] 712 deps += [ ":isac_neon" ]
713 } 713 }
714 714
715 if (current_cpu == "arm" && arm_version >= 7) { 715 if (current_cpu == "arm" && arm_version >= 7) {
716 sources += [ 716 sources += [
717 "codecs/isac/fix/source/lattice_armv7.S", 717 "codecs/isac/fix/source/lattice_armv7.S",
718 "codecs/isac/fix/source/pitch_filter_armv6.S", 718 "codecs/isac/fix/source/pitch_filter_armv6.S",
719 ] 719 ]
720 sources -= [ 720 sources -= [
(...skipping 22 matching lines...) Expand all
743 "codecs/isac/fix/source/lpc_masking_model_mips.c", 743 "codecs/isac/fix/source/lpc_masking_model_mips.c",
744 "codecs/isac/fix/source/pitch_filter_mips.c", 744 "codecs/isac/fix/source/pitch_filter_mips.c",
745 ] 745 ]
746 sources -= [ "codecs/isac/fix/source/pitch_filter_c.c" ] 746 sources -= [ "codecs/isac/fix/source/pitch_filter_c.c" ]
747 } 747 }
748 } 748 }
749 } 749 }
750 750
751 if (rtc_build_with_neon) { 751 if (rtc_build_with_neon) {
752 rtc_static_library("isac_neon") { 752 rtc_static_library("isac_neon") {
753 # TODO(mbonadei): Remove (bugs.webrtc.org/6828)
754 # Errors on cyclic dependency with :isac_fix_c if enabled.
755 check_includes = false
756
757 sources = [ 753 sources = [
758 "codecs/isac/fix/source/entropy_coding_neon.c", 754 "codecs/isac/fix/source/entropy_coding_neon.c",
759 "codecs/isac/fix/source/filterbanks_neon.c", 755 "codecs/isac/fix/source/filterbanks_neon.c",
760 "codecs/isac/fix/source/filters_neon.c", 756 "codecs/isac/fix/source/filters_neon.c",
761 "codecs/isac/fix/source/lattice_neon.c", 757 "codecs/isac/fix/source/lattice_neon.c",
762 "codecs/isac/fix/source/transform_neon.c", 758 "codecs/isac/fix/source/transform_neon.c",
763 ] 759 ]
764 760
765 if (current_cpu != "arm64") { 761 if (current_cpu != "arm64") {
766 # Enable compilation for the NEON instruction set. This is needed 762 # Enable compilation for the NEON instruction set. This is needed
767 # since //build/config/arm.gni only enables NEON for iOS, not Android. 763 # since //build/config/arm.gni only enables NEON for iOS, not Android.
768 # This provides the same functionality as webrtc/build/arm_neon.gypi. 764 # This provides the same functionality as webrtc/build/arm_neon.gypi.
769 suppressed_configs += [ "//build/config/compiler:compiler_arm_fpu" ] 765 suppressed_configs += [ "//build/config/compiler:compiler_arm_fpu" ]
770 cflags = [ "-mfpu=neon" ] 766 cflags = [ "-mfpu=neon" ]
771 } 767 }
772 768
773 # Disable LTO on NEON targets due to compiler bug. 769 # Disable LTO on NEON targets due to compiler bug.
774 # TODO(fdegans): Enable this. See crbug.com/408997. 770 # TODO(fdegans): Enable this. See crbug.com/408997.
775 if (rtc_use_lto) { 771 if (rtc_use_lto) {
776 cflags -= [ 772 cflags -= [
777 "-flto", 773 "-flto",
778 "-ffat-lto-objects", 774 "-ffat-lto-objects",
779 ] 775 ]
780 } 776 }
781 777
782 deps = [ 778 deps = [
779 ":isac_fix_common",
783 "../../base:rtc_base_approved", 780 "../../base:rtc_base_approved",
784 "../../common_audio", 781 "../../common_audio",
785 ] 782 ]
786 } 783 }
787 } 784 }
788 785
789 config("pcm16b_config") { 786 config("pcm16b_config") {
790 include_dirs = [ 787 include_dirs = [
791 "../../..", 788 "../../..",
792 "codecs/pcm16b/include", 789 "codecs/pcm16b/include",
(...skipping 1227 matching lines...) Expand 10 before | Expand all | Expand 10 after
2020 ":acm_send_test", 2017 ":acm_send_test",
2021 ":audio_coding", 2018 ":audio_coding",
2022 ":audio_decoder_interface", 2019 ":audio_decoder_interface",
2023 ":audio_encoder_interface", 2020 ":audio_encoder_interface",
2024 ":audio_format_conversion", 2021 ":audio_format_conversion",
2025 ":audio_network_adaptor", 2022 ":audio_network_adaptor",
2026 ":builtin_audio_decoder_factory", 2023 ":builtin_audio_decoder_factory",
2027 ":cng", 2024 ":cng",
2028 ":g711", 2025 ":g711",
2029 ":ilbc", 2026 ":ilbc",
2027 ":isac",
2030 ":isac_c", 2028 ":isac_c",
2031 ":isac_fix", 2029 ":isac_fix",
2032 ":neteq", 2030 ":neteq",
2033 ":neteq_test_support", 2031 ":neteq_test_support",
2034 ":neteq_unittest_tools", 2032 ":neteq_unittest_tools",
2035 ":pcm16b", 2033 ":pcm16b",
2036 ":red", 2034 ":red",
2037 ":rent_a_codec", 2035 ":rent_a_codec",
2038 ":webrtc_opus", 2036 ":webrtc_opus",
2039 "../..:webrtc_common", 2037 "../..:webrtc_common",
(...skipping 23 matching lines...) Expand all
2063 ":neteq_unittest_proto", 2061 ":neteq_unittest_proto",
2064 ] 2062 ]
2065 } 2063 }
2066 2064
2067 if (!build_with_chromium && is_clang) { 2065 if (!build_with_chromium && is_clang) {
2068 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). 2066 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
2069 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] 2067 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
2070 } 2068 }
2071 } 2069 }
2072 } 2070 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698