https://github.com/v8/v8/blob/main/bazel/defs.bzl sets `linkstatic` to `True` for all of the library targets, and there is no option to create shared objects for the libraries instead (as far as I can tell). If I naively patch `defs.bzl` to have `linkstatic = False`, I get the following link errors:
```
ld.lld: error: undefined reference due to --no-allow-shlib-undefined: v8_Default_embedded_blob_code_
>>> referenced by bazel-out/k8-fastbuild/bin/_solib_k8/libexternal_Sv8_Slibv8_Ulibshared_Uicu.so
ld.lld: error: undefined reference due to --no-allow-shlib-undefined: v8_Default_embedded_blob_code_size_
>>> referenced by bazel-out/k8-fastbuild/bin/_solib_k8/libexternal_Sv8_Slibv8_Ulibshared_Uicu.so
ld.lld: error: undefined reference due to --no-allow-shlib-undefined: v8_Default_embedded_blob_data_
>>> referenced by bazel-out/k8-fastbuild/bin/_solib_k8/libexternal_Sv8_Slibv8_Ulibshared_Uicu.so
ld.lld: error: undefined reference due to --no-allow-shlib-undefined: v8_Default_embedded_blob_data_size_
>>> referenced by bazel-out/k8-fastbuild/bin/_solib_k8/libexternal_Sv8_Slibv8_Ulibshared_Uicu.so
collect2: error: ld returned 1 exit status
```
I think (please correct me if I'm wrong) that the gn-based build does support generating shared objects for the various V8 libraries instead, and I see references e.g. to defines like `BUILDING_V8_SHARED` in
https://github.com/v8/v8/blob/main/BUILD.gn. I'm not interested in cross-version stability, just the ability to link dynamically in order to have smaller test binaries involving V8, but I'm wondering:
* Is it true that the gn build supports dynamic linking? I'm having trouble deciphering this from the docs/sources.
* Is dynamic linking with the Bazel build on the roadmap? I don't see any related mentions on
the issue tracker.
Thanks!
Elliott