Reland: Make dex2oat(d) visible for use as implicit dexpreopt tool deps.

This relands https://r.android.com/1205787.

Bug: 145934348
Test: m
Change-Id: I16d4fd22395041448a0a1eecb013771e13fd7bb7
diff --git a/dex2oat/Android.bp b/dex2oat/Android.bp
index 8f84b2e..a4bbf40 100644
--- a/dex2oat/Android.bp
+++ b/dex2oat/Android.bp
@@ -231,6 +231,9 @@
         "dex2oat-defaults",
         "dex2oat-pgo-defaults",
     ],
+    // Modules that do dexpreopting, e.g. android_app, depend implicitly on
+    // either dex2oat or dex2oatd in ART source builds.
+    visibility: ["//visibility:public"],
     shared_libs: [
         "libprofile",
         "libart-compiler",
@@ -282,6 +285,9 @@
         "art_debug_defaults",
         "dex2oat-defaults",
     ],
+    // Modules that do dexpreopting, e.g. android_app, depend implicitly on
+    // either dex2oat or dex2oatd in ART source builds.
+    visibility: ["//visibility:public"],
     shared_libs: [
         "libprofiled",
         "libartd-compiler",