OLD | NEW |
---|---|
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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/buildflag_header.gni") | 5 import("//build/buildflag_header.gni") |
6 import("//build/config/chrome_build.gni") | 6 import("//build/config/chrome_build.gni") |
7 import("//build/config/compiler/compiler.gni") | 7 import("//build/config/compiler/compiler.gni") |
8 import("//build/config/features.gni") | 8 import("//build/config/features.gni") |
9 import("//build/config/locales.gni") | 9 import("//build/config/locales.gni") |
10 import("//build/config/sanitizers/sanitizers.gni") | 10 import("//build/config/sanitizers/sanitizers.gni") |
11 import("//build/config/ui.gni") | 11 import("//build/config/ui.gni") |
12 import("//build/config/win/console_app.gni") | 12 import("//build/config/win/console_app.gni") |
13 import("//build/config/win/manifest.gni") | 13 import("//build/config/win/manifest.gni") |
14 import("//chrome/chrome_repack_locales.gni") | 14 import("//chrome/chrome_repack_locales.gni") |
15 import("//chrome/common/features.gni") | 15 import("//chrome/common/features.gni") |
16 import("//chrome/version.gni") | 16 import("//chrome/version.gni") |
17 import("//third_party/widevine/cdm/widevine.gni") | |
17 import("//ui/base/ui_features.gni") | 18 import("//ui/base/ui_features.gni") |
18 | 19 |
19 if (is_android) { | 20 if (is_android) { |
20 import("//build/config/android/rules.gni") | 21 import("//build/config/android/rules.gni") |
21 } else if (is_mac) { | 22 } else if (is_mac) { |
22 import("//build/compiled_action.gni") | 23 import("//build/compiled_action.gni") |
23 import("//build/config/mac/rules.gni") | 24 import("//build/config/mac/rules.gni") |
24 import("//build/config/mac/symbols.gni") | 25 import("//build/config/mac/symbols.gni") |
25 import("//build/mac/tweak_info_plist.gni") | 26 import("//build/mac/tweak_info_plist.gni") |
26 import("//build/util/branding.gni") | 27 import("//build/util/branding.gni") |
(...skipping 761 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
788 "$root_out_dir/PepperFlash/PepperFlashPlayer.plugin", | 789 "$root_out_dir/PepperFlash/PepperFlashPlayer.plugin", |
789 "$root_out_dir/PepperFlash/manifest.json", | 790 "$root_out_dir/PepperFlash/manifest.json", |
790 ] | 791 ] |
791 outputs = [ | 792 outputs = [ |
792 "{{bundle_root_dir}}/Internet Plug-Ins/PepperFlash/{{source_file_part}}" , | 793 "{{bundle_root_dir}}/Internet Plug-Ins/PepperFlash/{{source_file_part}}" , |
793 ] | 794 ] |
794 public_deps = [ | 795 public_deps = [ |
795 "//third_party/adobe/flash:flapper_binaries", | 796 "//third_party/adobe/flash:flapper_binaries", |
796 ] | 797 ] |
797 } | 798 } |
799 } else { | |
800 group("flash_player_plugin") { | |
801 } | |
802 } | |
798 | 803 |
804 _should_bundle_widevine = | |
805 (is_chrome_branded || enable_widevine) && enable_pepper_cdms | |
806 if (_should_bundle_widevine) { | |
807 # The Widevine CDM and manifest are either the actual Widevine CDM and | |
808 # manifest or stubs used for testing only. The choice is made within the | |
809 # corresponding Widevine targets based on branding. | |
799 bundle_data("widevine_cdm_library_binaries") { | 810 bundle_data("widevine_cdm_library_binaries") { |
800 sources = [ | 811 sources = [ |
801 "$root_out_dir/$widevine_cdm_path/libwidevinecdm.dylib", | 812 "$root_out_dir/libwidevinecdm.dylib", |
802 "$root_out_dir/$widevine_cdm_path/widevinecdmadapter.plugin", | 813 "$root_out_dir/$widevine_cdm_path/widevinecdmadapter.plugin", |
803 ] | 814 ] |
804 outputs = [ | 815 outputs = [ |
805 "{{bundle_root_dir}}/Libraries/$widevine_cdm_path/{{source_file_part}}", | 816 "{{bundle_root_dir}}/Libraries/$widevine_cdm_path/{{source_file_part}}", |
806 ] | 817 ] |
807 public_deps = [ | 818 public_deps = [ |
819 # Need this intermediate dependency because "widevinecdm" is a | |
820 # shared_library if !is_chrome_branded, and then depending on | |
821 # "widevinecdm" directly would cause it to be linked into the Chromium | |
822 # Framework, which we don't want. | |
823 ":widevine_cdm_library_copy", | |
xhwang
2016/08/25 00:05:45
Can this be a data_deps?
https://chromium.googles
wdzierzanowski
2016/08/25 14:32:02
Tried it. Unfortunately, GN now doesn't generate t
| |
824 "//third_party/widevine/cdm:widevinecdmadapter", | |
825 ] | |
826 } | |
827 | |
828 copy("widevine_cdm_library_copy") { | |
829 sources = [ | |
830 "$root_out_dir/$widevine_cdm_path/libwidevinecdm.dylib", | |
831 ] | |
832 outputs = [ | |
833 "$root_out_dir/{{source_file_part}}", | |
834 ] | |
835 deps = [ | |
808 "//third_party/widevine/cdm:widevinecdm", | 836 "//third_party/widevine/cdm:widevinecdm", |
809 "//third_party/widevine/cdm:widevinecdmadapter", | |
810 ] | 837 ] |
811 } | 838 } |
812 | 839 |
813 bundle_data("widevine_cdm_library_manifest") { | 840 bundle_data("widevine_cdm_library_manifest") { |
814 sources = [ | 841 sources = [ |
815 "$root_out_dir/WidevineCdm/manifest.json", | 842 "$root_out_dir/WidevineCdm/manifest.json", |
816 ] | 843 ] |
817 outputs = [ | 844 outputs = [ |
818 "{{bundle_root_dir}}/Libraries/WidevineCdm/{{source_file_part}}", | 845 "{{bundle_root_dir}}/Libraries/WidevineCdm/{{source_file_part}}", |
819 ] | 846 ] |
820 public_deps = [ | 847 public_deps = [ |
821 "//third_party/widevine/cdm:widevine_cdm_manifest", | 848 "//third_party/widevine/cdm:widevine_cdm_manifest", |
822 ] | 849 ] |
823 } | 850 } |
824 } else { | |
825 group("flash_player_plugin") { | |
826 } | |
827 } | 851 } |
828 | 852 |
829 group("widevine_cdm_library") { | 853 group("widevine_cdm_library") { |
830 if (is_chrome_branded) { | 854 if (_should_bundle_widevine) { |
831 deps = [ | 855 deps = [ |
832 ":widevine_cdm_library_binaries", | 856 ":widevine_cdm_library_binaries", |
833 ":widevine_cdm_library_manifest", | 857 ":widevine_cdm_library_manifest", |
834 ] | 858 ] |
835 } | 859 } |
836 } | 860 } |
837 | 861 |
838 if (enable_mac_keystone) { | 862 if (enable_mac_keystone) { |
839 action("keystone_registration_framework") { | 863 action("keystone_registration_framework") { |
840 script = "//chrome/tools/build/mac/copy_keystone_framework.py" | 864 script = "//chrome/tools/build/mac/copy_keystone_framework.py" |
(...skipping 933 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1774 "//chrome/app/theme/$branding_path_component/product_logo_48.png", | 1798 "//chrome/app/theme/$branding_path_component/product_logo_48.png", |
1775 "//chrome/tools/build/linux/chrome-wrapper", | 1799 "//chrome/tools/build/linux/chrome-wrapper", |
1776 "//third_party/xdg-utils/scripts/xdg-mime", | 1800 "//third_party/xdg-utils/scripts/xdg-mime", |
1777 "//third_party/xdg-utils/scripts/xdg-settings", | 1801 "//third_party/xdg-utils/scripts/xdg-settings", |
1778 ] | 1802 ] |
1779 outputs = [ | 1803 outputs = [ |
1780 "$root_out_dir/{{source_file_part}}", | 1804 "$root_out_dir/{{source_file_part}}", |
1781 ] | 1805 ] |
1782 } | 1806 } |
1783 } | 1807 } |
OLD | NEW |