| name: library |
| returns: lib |
| description: | |
| Builds a library that is either static, shared or both depending on |
| the value of `default_library` |
| user [option](https://mesonbuild.com/Builtin-options.html). |
| You should use this instead of [[shared_library]], |
| [[static_library]] or |
| [[both_libraries]] most of the time. This allows you |
| to toggle your entire project (including subprojects) from shared to |
| static with only one option. This option applies to libraries being |
| built internal to the entire project. For external dependencies, the |
| default library type preferred is shared. This can be adapted on a per |
| library basis using the [[dependency]] `static` keyword. |
| |
| The keyword arguments for this are the same as for |
| [[build_target]] |
| |
| posargs_inherit: _build_target_base |
| varargs_inherit: _build_target_base |
| kwargs_inherit: |
| - shared_library |
| - static_library |