Use public_deps for v8_base in GN.
authorbrettw <brettw@chromium.org>
Fri, 18 Sep 2015 09:32:30 +0000 (02:32 -0700)
committerCommit bot <commit-bot@chromium.org>
Fri, 18 Sep 2015 09:32:43 +0000 (09:32 +0000)
The previous code took advantage of the fact that a group's deps are implicitly public, but I'm trying to fix that. This also cleans up some duplicated code between component and non-component builds.

Review URL: https://codereview.chromium.org/1356723002

Cr-Commit-Position: refs/heads/master@{#30820}

BUILD.gn

index 8946d2a0067df254664f8c7a6ee9202ba8d04342..c2ca0b91993d2a1bb5df27dfe36c6818206dc320 100644 (file)
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -1747,35 +1747,25 @@ if (current_toolchain == snapshot_toolchain) {
 # Public targets
 #
 
+if (v8_use_snapshot && v8_use_external_startup_data) {
+  snapshot_target = ":v8_external_snapshot"
+} else if (v8_use_snapshot) {
+  snapshot_target = ":v8_snapshot"
+} else {
+  assert(!v8_use_external_startup_data)
+  snapshot_target = ":v8_nosnapshot"
+}
+
 if (is_component_build) {
   component("v8") {
     sources = [
       "src/v8dll-main.cc",
     ]
 
-    if (v8_use_snapshot && v8_use_external_startup_data) {
-      deps = [
-        ":v8_base",
-      ]
-      public_deps = [
-        ":v8_external_snapshot",
-      ]
-    } else if (v8_use_snapshot) {
-      deps = [
-        ":v8_base",
-      ]
-      # v8_snapshot should be public so downstream targets can declare the
-      # snapshot file as their input.
-      public_deps = [
-        ":v8_snapshot",
-      ]
-    } else {
-      assert(!v8_use_external_startup_data)
-      deps = [
-        ":v8_base",
-        ":v8_nosnapshot",
-      ]
-    }
+    public_deps = [
+      ":v8_base",
+      snapshot_target,
+    ]
 
     configs -= [ "//build/config/compiler:chromium_code" ]
     configs += [ "//build/config/compiler:no_chromium_code" ]
@@ -1794,26 +1784,10 @@ if (is_component_build) {
   }
 } else {
   group("v8") {
-    if (v8_use_snapshot && v8_use_external_startup_data) {
-      deps = [
-        ":v8_base",
-        ":v8_external_snapshot",
-      ]
-    } else if (v8_use_snapshot) {
-      deps = [
-        ":v8_base",
-      ]
-      public_deps = [
-        ":v8_snapshot",
-      ]
-    } else {
-      assert(!v8_use_external_startup_data)
-      deps = [
-        ":v8_base",
-        ":v8_nosnapshot",
-      ]
-    }
-
+    public_deps = [
+      ":v8_base",
+      snapshot_target,
+    ]
     public_configs = [ ":external_config" ]
   }
 }