[build][idk] Switch to Bazel built Fuchsia IDK

Switch "//sdk:final_fuchsia_idk.exported" to use
"//build/bazel/bazel_sdk:final_fuchsia_idk" rather than using the
`idk()` GN template.

Bug: 413071161
Test: fx build //sdk:final_fuchsia_idk.validation
Change-Id: I54d36e995de2d69f73478a193d87ed46092e140c
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1266917
Reviewed-by: David Turner <digit@google.com>
Commit-Queue: David Dorwin <ddorwin@google.com>
diff --git a/BUILD.gn b/BUILD.gn
index b737f1b..5cf5ae6 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -2371,9 +2371,6 @@
     # `target_cpu` architecture.
     "//sdk:final_fuchsia_sdk_head_only",
 
-    # The final Fuchsia IDK built from Bazel.
-    "//sdk:bazel_built_final_fuchsia_idk_bazel_sdk_tests",
-
     # This target is listed explicitly by multiple CI bot build configurations.
     # See https://fxbug.dev/42162374 for context.
     "//build/images:record_filesystem_sizes",
diff --git a/build/bazel/BUILD.gn b/build/bazel/BUILD.gn
index 96f9510..3fd74da 100644
--- a/build/bazel/BUILD.gn
+++ b/build/bazel/BUILD.gn
@@ -152,7 +152,7 @@
     "//examples/drivers/template:bazel_package.bazel_build",
     "//examples/drivers/transport/driver/v2:child_bazel_package.bazel_build",
     "//examples/drivers/transport/driver/v2:parent_bazel_package.bazel_build",
-    "//sdk:bazel_built_fuchsia_idk",
+    "//sdk:final_fuchsia_idk.exported",
     "//sdk/lib/driver/devicetree/examples/example-board:bazel_package.bazel_build",
     "//src:bazel_tests.bazel_build",
     "//src/devices/block/drivers/aml-sdmmc:aml-sdmmc-no-banjo-bazel-package.bazel_build",
diff --git a/sdk/BUILD.gn b/sdk/BUILD.gn
index d0a782e..ac31070 100644
--- a/sdk/BUILD.gn
+++ b/sdk/BUILD.gn
@@ -192,7 +192,7 @@
 
 # Generates the "final" IDK archive, including prebuilt binaries for all
 # supported target_cpu architectures on all Supported API levels.
-final_fuchsia_idk_for_cpus_and_levels("final_fuchsia_idk.exported") {
+bazel_build_action("final_fuchsia_idk.exported") {
   visibility = []
   visibility = [
     ":final_fuchsia_idk",
@@ -205,13 +205,10 @@
     ":final_fuchsia_sdk",
   ]
 
-  output_name = "fuchsia_idk"
-  target_cpus = idk_buildable_cpus
-  api_levels = idk_buildable_api_levels
-}
+  # The following are implicit.
+  # target_cpus = idk_buildable_cpus
+  # api_levels = idk_buildable_api_levels
 
-bazel_build_action("bazel_built_fuchsia_idk") {
-  testonly = true
   bazel_target = "//build/bazel/bazel_sdk:final_fuchsia_idk"
   deps = [
     "//sdk:fuchsia_collection_all_subbuilds_for_merge",
@@ -223,10 +220,12 @@
   directory_outputs = [
     {
       bazel_dir = "{{BAZEL_TARGET_OUT_DIR}}/{{BAZEL_TARGET_NAME}}"
-      ninja_dir = "sdk/exported/bazel_built_final_idk"
+      ninja_dir = "sdk/exported/fuchsia_idk"
       tracked_files = [ "meta/manifest.json" ]
     },
   ]
+
+  no_sdk = true
 }
 
 idk_archive("final_fuchsia_idk.archive") {
@@ -264,15 +263,6 @@
   idk_exported_target = "//sdk:final_fuchsia_idk.exported"
 }
 
-# Same as above but for the IDK built in Bazel.
-# TODO(https://fxbug.dev/413071161) Replace the contents of the target above
-# when switching to the IDK built in Bazel.
-run_fuchsia_bazel_sdk_tests("bazel_built_final_fuchsia_idk_bazel_sdk_tests") {
-  target_cpus = idk_buildable_cpus
-  idk_exported_path = "$root_build_dir/sdk/exported/bazel_built_final_idk"
-  idk_exported_target = "//sdk:bazel_built_fuchsia_idk"
-}
-
 # This target generates a Fuchsia Bazel SDK directory directly
 # from the content of the in-tree IDK. This requires a working Bazel
 # workspace, but its output does not depend on the content of the
@@ -337,8 +327,7 @@
     ]
     subbuilds_visibility = [
       ":final_fuchsia_idk.exported",
-      ":bazel_built_fuchsia_idk",
-      ":bazel_built_fuchsia_idk.bazel_inputs",
+      ":final_fuchsia_idk.exported.bazel_inputs",
     ]
 
     forward_variables_from(fuchsia_idk_contents, "*")