Get all presubmits passing

This fixes the last remaining error where no libstdc++ is available in
release builds.

Change-Id: I26d942919c3a69fadbac162e0ba260c66a6a6964
Reviewed-on: https://gn-review.googlesource.com/c/gn/+/25361
Commit-Queue: Matt Stark <msta@google.com>
Reviewed-by: Takuto Ikuta <tikuta@google.com>
diff --git a/build/gen.py b/build/gen.py
index 031bb0c..4dd28e6 100755
--- a/build/gen.py
+++ b/build/gen.py
@@ -44,8 +44,8 @@
     return 'x86_64'
   elif arch in ('arm64', 'aarch64'):
     return 'aarch64'
-  elif arch == 'riscv64':
-    return 'riscv64'
+  elif arch in ('riscv64', 'riscv64gc'):
+    return 'riscv64gc'
   return arch
 
 
diff --git a/build/run_cargo.py b/build/run_cargo.py
index ea5e6b6..f6f4b30 100755
--- a/build/run_cargo.py
+++ b/build/run_cargo.py
@@ -274,10 +274,9 @@
     os.environ['HOMEDRIVE'] = ''
     os.environ['HOMEPATH'] = ''
 
-  # When linking C++ objects instrumented with ASan/UBSan, we must allow the
-  # linker to link its default libraries so it pulls in the sanitizer runtimes.
-  if '-fsanitize=' in ldflags:
-    target_rustflags.append("-C default-linker-libraries=yes")
+  # When linking C++ objects, we must allow the linker to link its default
+  # libraries so it pulls in libc++ and any potential sanititzers.
+  target_rustflags.append("-C default-linker-libraries=yes")
 
   env_var = f"CARGO_TARGET_{target_triple.upper().replace('-', '_')}_RUSTFLAGS"
   os.environ[env_var] = ' '.join(target_rustflags)