| 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). |