Revert "Ensure dxc is built and loaded by tint_wgsl_fuzzer"

This reverts commit 449074e29a539a9621bf20a51724222bffc607b3.

Reason for revert: Breaks chromeos fuzzer build: https://g-issues.chromium.org/issues/347995984

Original change's description:
> Ensure dxc is built and loaded by tint_wgsl_fuzzer
>
> - Make the gn and CMake build depend on dxcompiler target.
> - In the wgsl fuzzer's init, set the dxc default path to the same
>   directory as the executable's via argv[0]. Although argv[0] is not
> guaranteed to contain the path to the executable, we mainly need this to
> work for ClusterFuzz, where this should be the case.
>
> Bug: chromium:42251292
> Change-Id: If85c6cdd52b1ff98caf95327112b93173bcdf5d7
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/193900
> Reviewed-by: dan sinclair <dsinclair@google.com>
> Commit-Queue: Antonio Maiorano <amaiorano@google.com>

TBR=rharrison@chromium.org,dsinclair@chromium.org,jrprice@google.com,amaiorano@google.com,dawn-scoped@luci-project-accounts.iam.gserviceaccount.com,dsinclair@google.com

Change-Id: Ia563b99ee6d75f27989762d8cd9ef0eed622c9f0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:42251292
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/194400
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
diff --git a/src/tint/BUILD.gn b/src/tint/BUILD.gn
index 7ecf847..746f8eb 100644
--- a/src/tint/BUILD.gn
+++ b/src/tint/BUILD.gn
@@ -282,12 +282,6 @@
   public_configs = [ ":dxc-include-config" ]
 }
 
-source_set("dxcompiler-for-fuzzer") {
-  if (use_libfuzzer && target_cpu != "x86") {
-    public_deps = [ "${dawn_dxc_dir}/../gn/dxc:dxcompiler" ]
-  }
-}
-
 ###############################################################################
 # Fuzzers
 ###############################################################################
diff --git a/src/tint/CMakeLists.txt b/src/tint/CMakeLists.txt
index ac4d4b0..3a59059 100644
--- a/src/tint/CMakeLists.txt
+++ b/src/tint/CMakeLists.txt
@@ -524,10 +524,6 @@
       target_link_libraries(${TARGET} PRIVATE ${CMAKE_DL_LIBS})
     elseif(${DEPENDENCY} STREQUAL "dxc-include")
       target_include_directories(${TARGET} PRIVATE "${DAWN_THIRD_PARTY_DIR}/dxc/include")
-    elseif(${DEPENDENCY} STREQUAL "dxcompiler-for-fuzzer")
-      if(TINT_BUILD_FUZZERS) # TODO: and target arch is not x86
-        target_link_libraries(${TARGET} PRIVATE dxcompiler)
-      endif()
     elseif(${DEPENDENCY} STREQUAL "jsoncpp")
       target_link_libraries(${TARGET} PRIVATE jsoncpp_static)
     elseif(${DEPENDENCY} STREQUAL "langsvr")
diff --git a/src/tint/cmd/fuzz/wgsl/BUILD.cfg b/src/tint/cmd/fuzz/wgsl/BUILD.cfg
index 2e2d939..de92f71 100644
--- a/src/tint/cmd/fuzz/wgsl/BUILD.cfg
+++ b/src/tint/cmd/fuzz/wgsl/BUILD.cfg
@@ -5,8 +5,7 @@
         "OutputName": "tint_wgsl_fuzzer",
         "AdditionalDependencies": {
             /* Depend on all the fuzz targets to pull them all together. */
-            "Internal": [ "**:fuzz" ],
-            "External": ["dxcompiler-for-fuzzer"],
+            "Internal": [ "**:fuzz" ]
         }
     }
 }
diff --git a/src/tint/cmd/fuzz/wgsl/BUILD.cmake b/src/tint/cmd/fuzz/wgsl/BUILD.cmake
index aeb77bb..350a170 100644
--- a/src/tint/cmd/fuzz/wgsl/BUILD.cmake
+++ b/src/tint/cmd/fuzz/wgsl/BUILD.cmake
@@ -59,7 +59,6 @@
   tint_lang_wgsl_fuzz
   tint_utils_bytes
   tint_utils_cli
-  tint_utils_command
   tint_utils_containers
   tint_utils_diagnostic
   tint_utils_ice
@@ -84,12 +83,8 @@
 
 if(TINT_BUILD_HLSL_WRITER)
   tint_target_add_dependencies(tint_cmd_fuzz_wgsl_fuzz_cmd fuzz_cmd
-    tint_lang_hlsl_validate
     tint_lang_hlsl_writer_fuzz
   )
-  tint_target_add_external_dependencies(tint_cmd_fuzz_wgsl_fuzz_cmd fuzz_cmd
-    "dxcompiler-for-fuzzer"
-  )
 endif(TINT_BUILD_HLSL_WRITER)
 
 if(TINT_BUILD_IR_BINARY)
diff --git a/src/tint/cmd/fuzz/wgsl/BUILD.gn b/src/tint/cmd/fuzz/wgsl/BUILD.gn
index a060109..89d7ea9 100644
--- a/src/tint/cmd/fuzz/wgsl/BUILD.gn
+++ b/src/tint/cmd/fuzz/wgsl/BUILD.gn
@@ -101,7 +101,6 @@
       "${tint_src_dir}/lang/wgsl/writer/raise:fuzz",
       "${tint_src_dir}/utils/bytes",
       "${tint_src_dir}/utils/cli",
-      "${tint_src_dir}/utils/command",
       "${tint_src_dir}/utils/containers",
       "${tint_src_dir}/utils/diagnostic",
       "${tint_src_dir}/utils/ice",
@@ -123,11 +122,7 @@
     }
 
     if (tint_build_hlsl_writer) {
-      deps += [
-        "${tint_src_dir}:dxcompiler-for-fuzzer",
-        "${tint_src_dir}/lang/hlsl/validate",
-        "${tint_src_dir}/lang/hlsl/writer:fuzz",
-      ]
+      deps += [ "${tint_src_dir}/lang/hlsl/writer:fuzz" ]
     }
 
     if (tint_build_ir_binary) {
diff --git a/src/tint/cmd/fuzz/wgsl/main_fuzz.cc b/src/tint/cmd/fuzz/wgsl/main_fuzz.cc
index 3e9be54..733190d 100644
--- a/src/tint/cmd/fuzz/wgsl/main_fuzz.cc
+++ b/src/tint/cmd/fuzz/wgsl/main_fuzz.cc
@@ -31,48 +31,13 @@
 
 #include "src/tint/cmd/fuzz/wgsl/fuzz.h"
 #include "src/tint/utils/cli/cli.h"
-#include "src/tint/utils/command/command.h"
 #include "src/tint/utils/macros/defer.h"
 #include "src/tint/utils/text/base64.h"
-#include "src/tint/utils/text/string.h"
-
-#if TINT_BUILD_HLSL_WRITER
-#include "src/tint/lang/hlsl/validate/validate.h"
-#endif
 
 namespace {
 
 tint::fuzz::wgsl::Options options;
 
-std::string get_default_dxc_path(char*** argv) {
-    std::string default_dxc_path = "";
-#if TINT_BUILD_HLSL_WRITER
-    // Assume the DXC library is in the same directory as this executable
-    std::string exe_path = (*argv)[0];
-    exe_path = tint::ReplaceAll(exe_path, "\\", "/");
-    auto pos = exe_path.rfind('/');
-    if (pos != std::string::npos) {
-        default_dxc_path = exe_path.substr(0, pos) + '/' + tint::hlsl::validate::kDxcDLLName;
-    } else {
-        // argv[0] doesn't contain path to exe, try relative to cwd
-        default_dxc_path = tint::hlsl::validate::kDxcDLLName;
-    }
-#endif
-    return default_dxc_path;
-}
-
-void print_dxc_path_found(const std::string& dxc_path) {
-#if TINT_BUILD_HLSL_WRITER
-    // Log whether the DXC library was found or not once at initialization.
-    auto dxc = tint::Command::LookPath(dxc_path);
-    if (dxc.Found()) {
-        std::cout << "DXC library found: " << dxc.Path() << std::endl;
-    } else {
-        std::cout << "DXC library not found: " << dxc_path << std::endl;
-    }
-#endif
-}
-
 }  // namespace
 
 extern "C" int LLVMFuzzerTestOneInput(const uint8_t* input, size_t size) {
@@ -129,12 +94,9 @@
         return 0;
     }
 
-    // Read optional user-supplied args or use default provided
     options.filter = opt_filter.value.value_or("");
     options.run_concurrently = opt_concurrent.value.value_or(false);
     options.verbose = opt_verbose.value.value_or(false);
-    options.dxc = opt_dxc.value.value_or(get_default_dxc_path(argv));
-
-    print_dxc_path_found(options.dxc);
+    options.dxc = opt_dxc.value.value_or("");
     return 0;
 }
diff --git a/src/tint/externals.json b/src/tint/externals.json
index 52150c0..1745609 100644
--- a/src/tint/externals.json
+++ b/src/tint/externals.json
@@ -20,9 +20,6 @@
         ],
         "Condition": "tint_build_hlsl_writer"
     },
-    "dxcompiler-for-fuzzer": {
-        "Condition": "tint_build_hlsl_writer"
-    },
     "google-benchmark": {
         "IncludePatterns": [
             "benchmark/benchmark.h"
diff --git a/tools/src/cmd/gen/build/BUILD.bazel.tmpl b/tools/src/cmd/gen/build/BUILD.bazel.tmpl
index 939ec4c..8432d76 100644
--- a/tools/src/cmd/gen/build/BUILD.bazel.tmpl
+++ b/tools/src/cmd/gen/build/BUILD.bazel.tmpl
@@ -140,24 +140,23 @@
 --------------------------------------------------------------------------------
 */ -}}
 {{- define "ExternalDependencyTarget"}}
-{{-        if eq $.Name "abseil"                -}}"@abseil_cpp//absl/strings",
-{{-   else if eq $.Name "dl"                    -}}{{/* unsupported */}}
-{{-   else if eq $.Name "dxc-include"           -}}{{/* unsupported */}}
-{{-   else if eq $.Name "dxcompiler-for-fuzzer" -}}{{/* unsupported */}}
-{{-   else if eq $.Name "glslang-res-limits"    -}}{{/* unsupported */}}
-{{-   else if eq $.Name "glslang"               -}}{{/* unsupported */}}
-{{-   else if eq $.Name "gmock"                 -}}"@gtest",
-{{-   else if eq $.Name "google-benchmark"      -}}"@benchmark",
-{{-   else if eq $.Name "gtest"                 -}}"@gtest",
-{{-   else if eq $.Name "jsoncpp"               -}}{{/* unsupported */}}
-{{-   else if eq $.Name "langsvr"               -}}{{/* unsupported */}}
-{{-   else if eq $.Name "metal"                 -}}{{/* unsupported */}}
-{{-   else if eq $.Name "spirv-headers"         -}}"@spirv_headers//:spirv_cpp11_headers", "@spirv_headers//:spirv_c_headers",
-{{-   else if eq $.Name "spirv-opt-internal"    -}}"@spirv_tools//:spirv_tools_opt",
-{{-   else if eq $.Name "spirv-tools"           -}}"@spirv_tools",
-{{-   else if eq $.Name "thread"                -}}{{/* unsupported */}}
-{{-   else if eq $.Name "winsock"               -}}{{/* unsupported */}}
-{{-   else                                      -}}{{Error (printf "unhandled external dependency '%v'" $.Name)}}
+{{-        if eq $.Name "abseil"             -}}"@abseil_cpp//absl/strings",
+{{-   else if eq $.Name "dl"                 -}}{{/* unsupported */}}
+{{-   else if eq $.Name "dxc-include"        -}}{{/* unsupported */}}
+{{-   else if eq $.Name "glslang-res-limits" -}}{{/* unsupported */}}
+{{-   else if eq $.Name "glslang"            -}}{{/* unsupported */}}
+{{-   else if eq $.Name "gmock"              -}}"@gtest",
+{{-   else if eq $.Name "google-benchmark"   -}}"@benchmark",
+{{-   else if eq $.Name "gtest"              -}}"@gtest",
+{{-   else if eq $.Name "jsoncpp"            -}}{{/* unsupported */}}
+{{-   else if eq $.Name "langsvr"            -}}{{/* unsupported */}}
+{{-   else if eq $.Name "metal"              -}}{{/* unsupported */}}
+{{-   else if eq $.Name "spirv-headers"      -}}"@spirv_headers//:spirv_cpp11_headers", "@spirv_headers//:spirv_c_headers",
+{{-   else if eq $.Name "spirv-opt-internal" -}}"@spirv_tools//:spirv_tools_opt",
+{{-   else if eq $.Name "spirv-tools"        -}}"@spirv_tools",
+{{-   else if eq $.Name "thread"             -}}{{/* unsupported */}}
+{{-   else if eq $.Name "winsock"            -}}{{/* unsupported */}}
+{{-   else                                   -}}{{Error (printf "unhandled external dependency '%v'" $.Name)}}
 {{-   end}}
 {{- end}}
 
diff --git a/tools/src/cmd/gen/build/BUILD.gn.tmpl b/tools/src/cmd/gen/build/BUILD.gn.tmpl
index a5c308f..47d25be 100644
--- a/tools/src/cmd/gen/build/BUILD.gn.tmpl
+++ b/tools/src/cmd/gen/build/BUILD.gn.tmpl
@@ -164,24 +164,23 @@
 --------------------------------------------------------------------------------
 */ -}}
 {{- define "ExternalDependencyTargets"}}
-{{-        if eq $.Name "abseil"                -}}"${tint_src_dir}:abseil",
-{{-   else if eq $.Name "dl"                    -}}"${tint_src_dir}:dl",
-{{-   else if eq $.Name "dxc-include"           -}}"${tint_src_dir}:dxc-include",
-{{-   else if eq $.Name "dxcompiler-for-fuzzer" -}}"${tint_src_dir}:dxcompiler-for-fuzzer",
-{{-   else if eq $.Name "glslang-res-limits"    -}}"${tint_glslang_dir}:glslang_default_resource_limits_sources",
-{{-   else if eq $.Name "glslang"               -}}"${tint_glslang_dir}:glslang_lib_sources",
-{{-   else if eq $.Name "google-benchmark"      -}}"${tint_src_dir}:google_benchmark",
-{{-   else if eq $.Name "gtest"                 -}}"${tint_src_dir}:gmock_and_gtest",
-{{-   else if eq $.Name "jsoncpp"               -}}"${tint_src_dir}:jsoncpp",
-{{-   else if eq $.Name "langsvr"               -}}"${tint_src_dir}:langsvr",
-{{-   else if eq $.Name "libprotobuf-mutator"   -}}"${tint_lpm_dir}:libprotobuf-mutator",
-{{-   else if eq $.Name "metal"                 -}}"${tint_src_dir}:metal",
-{{-   else if eq $.Name "spirv-headers"         -}}"${tint_spirv_headers_dir}:spv_headers",
-{{-   else if eq $.Name "spirv-opt-internal"    -}}"${tint_spirv_tools_dir}:spvtools", "${tint_spirv_tools_dir}:spvtools_opt", "${tint_spirv_tools_dir}:spvtools_val",
-{{-   else if eq $.Name "spirv-tools"           -}}"${tint_spirv_tools_dir}:spvtools_headers", "${tint_spirv_tools_dir}:spvtools_val",
-{{-   else if eq $.Name "thread"                -}}"${tint_src_dir}:thread",
-{{-   else if eq $.Name "winsock"               -}}"${tint_src_dir}:winsock",
-{{-   else                                      -}}{{Error (printf "unhandled external dependency '%v'" $.Name)}}
+{{-        if eq $.Name "abseil"               -}}"${tint_src_dir}:abseil",
+{{-   else if eq $.Name "dl"                   -}}"${tint_src_dir}:dl",
+{{-   else if eq $.Name "dxc-include"          -}}"${tint_src_dir}:dxc-include",
+{{-   else if eq $.Name "glslang-res-limits"   -}}"${tint_glslang_dir}:glslang_default_resource_limits_sources",
+{{-   else if eq $.Name "glslang"              -}}"${tint_glslang_dir}:glslang_lib_sources",
+{{-   else if eq $.Name "google-benchmark"     -}}"${tint_src_dir}:google_benchmark",
+{{-   else if eq $.Name "gtest"                -}}"${tint_src_dir}:gmock_and_gtest",
+{{-   else if eq $.Name "jsoncpp"              -}}"${tint_src_dir}:jsoncpp",
+{{-   else if eq $.Name "langsvr"              -}}"${tint_src_dir}:langsvr",
+{{-   else if eq $.Name "libprotobuf-mutator"  -}}"${tint_lpm_dir}:libprotobuf-mutator",
+{{-   else if eq $.Name "metal"                -}}"${tint_src_dir}:metal",
+{{-   else if eq $.Name "spirv-headers"        -}}"${tint_spirv_headers_dir}:spv_headers",
+{{-   else if eq $.Name "spirv-opt-internal"   -}}"${tint_spirv_tools_dir}:spvtools", "${tint_spirv_tools_dir}:spvtools_opt", "${tint_spirv_tools_dir}:spvtools_val",
+{{-   else if eq $.Name "spirv-tools"          -}}"${tint_spirv_tools_dir}:spvtools_headers", "${tint_spirv_tools_dir}:spvtools_val",
+{{-   else if eq $.Name "thread"               -}}"${tint_src_dir}:thread",
+{{-   else if eq $.Name "winsock"              -}}"${tint_src_dir}:winsock",
+{{-   else                                     -}}{{Error (printf "unhandled external dependency '%v'" $.Name)}}
 {{-   end}}
 {{- end}}