name: shared_module returns: build_tgt since: 0.37.0 description: | Builds a shared module with the given sources. This is useful for building modules that will be `dlopen()`ed and hence may contain undefined symbols that will be provided by the library that is loading it. If you want the shared module to be able to refer to functions and variables defined in the [[executable]] it is loaded by, you will need to set the `export_dynamic` argument of the executable to `true`. posargs_inherit: _build_target_base varargs_inherit: _build_target_base kwargs_inherit: _build_target_base kwargs: vs_module_defs: type: str | file | custom_tgt | custom_idx since: 0.52.0 description: | Specify a Microsoft module definition file for controlling symbol exports, etc., on platforms where that is possible (e.g. Windows).