From fc730cc7055a38a05dfd5817c8eac03c7b1ca0a3 Mon Sep 17 00:00:00 2001 From: Robo Date: Tue, 21 Aug 2018 02:32:52 +0530 Subject: [PATCH] build: [gn mac] copy ffmpeg lib to framework bundle (#14225) * build: [gn mac] copy ffmpeg lib to framework bundle * Pull build config from enviroment variable * build: use component ffmpeg in testing mode --- BUILD.gn | 22 ++++++++++++++++++++++ build/args/testing.gn | 2 +- vsts-gn.yml | 3 ++- 3 files changed, 25 insertions(+), 2 deletions(-) diff --git a/BUILD.gn b/BUILD.gn index 57e3c538c5e3..dd319a34392a 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -437,6 +437,27 @@ if (is_mac) { ] } + if (!is_component_build) { + bundle_data("electron_framework_libraries") { + sources = [] + public_deps = [] + if (is_component_ffmpeg) { + sources += [ + "$root_out_dir/libffmpeg.dylib", + ] + public_deps += [ + "//third_party/ffmpeg:ffmpeg", + ] + } + outputs = [ + "{{bundle_contents_dir}}/Libraries/{{source_file_part}}", + ] + } + } else { + group("electron_framework_libraries") { + } + } + bundle_data("electron_crashpad_helper") { sources = [ "$root_out_dir/crashpad_handler", @@ -460,6 +481,7 @@ if (is_mac) { ] deps = [ ":electron_framework_resources", + ":electron_framework_libraries", ":electron_xibs", ] if (!is_mas_build) { diff --git a/build/args/testing.gn b/build/args/testing.gn index f757788904d4..eead3d81635f 100644 --- a/build/args/testing.gn +++ b/build/args/testing.gn @@ -4,4 +4,4 @@ is_component_build = false is_official_build = false dcheck_always_on = true symbol_level = 1 -use_jumbo_build = true +is_component_ffmpeg = true diff --git a/vsts-gn.yml b/vsts-gn.yml index eafed53616db..e8bf757b2e13 100644 --- a/vsts-gn.yml +++ b/vsts-gn.yml @@ -37,7 +37,8 @@ phases: "$SCCACHE_WRAPPER" -s echo "##vso[task.setvariable variable=SCCACHE_WRAPPER]$SCCACHE_WRAPPER" echo "##vso[task.setvariable variable=CHROMIUM_BUILDTOOLS_PATH]`pwd`/buildtools" - gn gen out/Default --args='import("//electron/build/args/testing.gn") cc_wrapper="'"$SCCACHE_WRAPPER"'"' + echo "GN gen for: $GN_CONFIG" + gn gen out/Default --args='import("'$GN_CONFIG'") cc_wrapper="'"$SCCACHE_WRAPPER"'"' name: GN_gen - bash: |