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

Side by Side Diff: chrome/BUILD.gn

Issue 2647393004: Add Widevine signature files into Mac build (Closed)
Patch Set: template Created 3 years, 10 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
« no previous file with comments | « no previous file | third_party/widevine/cdm/BUILD.gn » ('j') | third_party/widevine/cdm/widevine.gni » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/compiler/pgo/pgo.gni") 8 import("//build/config/compiler/pgo/pgo.gni")
9 import("//build/config/features.gni") 9 import("//build/config/features.gni")
10 import("//build/config/locales.gni") 10 import("//build/config/locales.gni")
(...skipping 630 matching lines...) Expand 10 before | Expand all | Expand 10 after
641 ":clean_up_old_versions", 641 ":clean_up_old_versions",
642 642
643 # keystone_registration_framework copies the framework into the framework 643 # keystone_registration_framework copies the framework into the framework
644 # bundle via a script that performs additional actions, rather than 644 # bundle via a script that performs additional actions, rather than
645 # relying on a bundle_data to copy it. 645 # relying on a bundle_data to copy it.
646 ":keystone_registration_framework", 646 ":keystone_registration_framework",
647 647
648 # verify_chrome_framework_order depends on :chrome_framework and, for 648 # verify_chrome_framework_order depends on :chrome_framework and, for
649 # non-component builds, will ensure the export symbol table is correct. 649 # non-component builds, will ensure the export symbol table is correct.
650 ":verify_chrome_framework_order", 650 ":verify_chrome_framework_order",
651
652 # framework_signed_for_widevine depends on :chrome_framework as the
653 # framework needs to be linked before signing can occur.
654 ":framework_signed_for_widevine",
651 ] 655 ]
652 } 656 }
653 657
654 action("clean_up_old_versions") { 658 action("clean_up_old_versions") {
655 script = "//chrome/tools/build/mac/clean_up_old_versions.py" 659 script = "//chrome/tools/build/mac/clean_up_old_versions.py"
656 outputs = [ 660 outputs = [
657 "$root_gen_dir/run_$target_name.stamp", 661 "$root_gen_dir/run_$target_name.stamp",
658 ] 662 ]
659 args = [ 663 args = [
660 rebase_path("$root_out_dir/$chrome_product_full_name.app", 664 rebase_path("$root_out_dir/$chrome_product_full_name.app",
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after
855 "{{bundle_root_dir}}/Libraries/$widevine_cdm_path/{{source_file_part}}", 859 "{{bundle_root_dir}}/Libraries/$widevine_cdm_path/{{source_file_part}}",
856 ] 860 ]
857 public_deps = [ 861 public_deps = [
858 # Need this intermediate dependency because "widevinecdm" is a 862 # Need this intermediate dependency because "widevinecdm" is a
859 # shared_library if !is_chrome_branded, and then depending on 863 # shared_library if !is_chrome_branded, and then depending on
860 # "widevinecdm" directly would cause it to be linked into the Chromium 864 # "widevinecdm" directly would cause it to be linked into the Chromium
861 # Framework, which we don't want. 865 # Framework, which we don't want.
862 ":widevine_cdm_library_copy", 866 ":widevine_cdm_library_copy",
863 "//third_party/widevine/cdm:widevinecdmadapter", 867 "//third_party/widevine/cdm:widevinecdmadapter",
864 ] 868 ]
869
870 # Signatures are only generated for official chrome.
871 if (is_chrome_branded) {
872 sources += [
873 "$root_out_dir/$widevine_cdm_path/widevinecdmadapter.plugin.sig",
874 "$root_out_dir/libwidevinecdm.dylib.sig",
875 ]
876 public_deps += [ ":sign_cdm_adapter_for_widevine" ]
877 }
865 } 878 }
866 879
867 copy("widevine_cdm_library_copy") { 880 copy("widevine_cdm_library_copy") {
868 sources = [ 881 sources = [
869 "$root_out_dir/$widevine_cdm_path/libwidevinecdm.dylib", 882 "$root_out_dir/$widevine_cdm_path/libwidevinecdm.dylib",
870 ] 883 ]
884 if (is_chrome_branded) {
885 sources +=
886 [ "$root_out_dir/$widevine_cdm_path/libwidevinecdm.dylib.sig" ]
887 }
871 outputs = [ 888 outputs = [
872 "$root_out_dir/{{source_file_part}}", 889 "$root_out_dir/{{source_file_part}}",
873 ] 890 ]
874 deps = [ 891 deps = [
875 "//third_party/widevine/cdm:widevinecdm", 892 "//third_party/widevine/cdm:widevinecdm",
876 ] 893 ]
877 } 894 }
878 895
879 bundle_data("widevine_cdm_library_manifest") { 896 bundle_data("widevine_cdm_library_manifest") {
880 sources = [ 897 sources = [
881 "$root_out_dir/WidevineCdm/manifest.json", 898 "$root_out_dir/WidevineCdm/manifest.json",
882 ] 899 ]
883 outputs = [ 900 outputs = [
884 "{{bundle_root_dir}}/Libraries/WidevineCdm/{{source_file_part}}", 901 "{{bundle_root_dir}}/Libraries/WidevineCdm/{{source_file_part}}",
885 ] 902 ]
886 public_deps = [ 903 public_deps = [
887 "//third_party/widevine/cdm:widevine_cdm_manifest", 904 "//third_party/widevine/cdm:widevine_cdm_manifest",
888 ] 905 ]
889 } 906 }
907
908 widevine_sign_file("sign_cdm_adapter_for_widevine") {
909 file = "$root_out_dir/$widevine_cdm_path/widevinecdmadapter.plugin"
910 deps = [
911 "//third_party/widevine/cdm:widevinecdmadapter",
912 ]
913 }
914
915 # Bundle the Chrome framework signature into the app. As the framework can
916 # only be signed once the framework has been linked, this can't be bundled
917 # with the framework, so :widevine_generate_framework_signature adds the
918 # signature to the Chrome framework, and this bundles it with the app.
919 bundle_data("widevine_chrome_framework_signature") {
920 sources = [
921 "$root_out_dir/$chrome_framework_name.framework/$chrome_framework_name.s ig",
922 ]
923 outputs = [
924 "{{bundle_root_dir}}/Versions/$chrome_version_full/$chrome_framework_nam e.framework/{{source_file_part}}",
925 ]
926 public_deps = [
927 ":sign_chrome_framework_for_widevine",
928 ]
929 }
930
931 widevine_sign_file("sign_chrome_framework_for_widevine") {
932 file = "$root_out_dir/$chrome_framework_name.framework/$chrome_framework_n ame"
933 deps = [
934 ":chrome_framework",
935 ]
936 }
890 } 937 }
891 938
892 group("widevine_cdm_library") { 939 group("widevine_cdm_library") {
893 if (_should_bundle_widevine) { 940 if (_should_bundle_widevine) {
894 deps = [ 941 deps = [
895 ":widevine_cdm_library_binaries", 942 ":widevine_cdm_library_binaries",
896 ":widevine_cdm_library_manifest", 943 ":widevine_cdm_library_manifest",
897 ] 944 ]
898 } 945 }
899 } 946 }
900 947
948 group("framework_signed_for_widevine") {
949 # Only do this for official Chrome.
950 if (is_chrome_branded && _should_bundle_widevine) {
951 deps = [
952 ":widevine_chrome_framework_signature",
953 ]
954 }
955 }
956
901 if (is_chrome_branded) { 957 if (is_chrome_branded) {
902 action("keystone_registration_framework") { 958 action("keystone_registration_framework") {
903 script = "//chrome/tools/build/mac/copy_keystone_framework.py" 959 script = "//chrome/tools/build/mac/copy_keystone_framework.py"
904 960
905 framework_path = "//third_party/googlemac/Releases/Keystone/KeystoneRegist ration.framework" 961 framework_path = "//third_party/googlemac/Releases/Keystone/KeystoneRegist ration.framework"
906 output_path = "$root_out_dir/$chrome_framework_name.framework/Frameworks/" 962 output_path = "$root_out_dir/$chrome_framework_name.framework/Frameworks/"
907 963
908 sources = [ 964 sources = [
909 framework_path, 965 framework_path,
910 script, 966 script,
(...skipping 685 matching lines...) Expand 10 before | Expand all | Expand 10 after
1596 "//chrome/app/theme/$branding_path_component/product_logo_48.png", 1652 "//chrome/app/theme/$branding_path_component/product_logo_48.png",
1597 "//chrome/tools/build/linux/chrome-wrapper", 1653 "//chrome/tools/build/linux/chrome-wrapper",
1598 "//third_party/xdg-utils/scripts/xdg-mime", 1654 "//third_party/xdg-utils/scripts/xdg-mime",
1599 "//third_party/xdg-utils/scripts/xdg-settings", 1655 "//third_party/xdg-utils/scripts/xdg-settings",
1600 ] 1656 ]
1601 outputs = [ 1657 outputs = [
1602 "$root_out_dir/{{source_file_part}}", 1658 "$root_out_dir/{{source_file_part}}",
1603 ] 1659 ]
1604 } 1660 }
1605 } 1661 }
OLDNEW
« no previous file with comments | « no previous file | third_party/widevine/cdm/BUILD.gn » ('j') | third_party/widevine/cdm/widevine.gni » ('J')

Powered by Google App Engine
This is Rietveld 408576698