| ... | ... | @@ -137,7 +137,18 @@ pub const IncludeDir = union(enum) { |
| 137 | 137 | }; |
| 138 | 138 | |
| 139 | 139 | pub const LinkFrameworkOptions = struct { |
| 140 | /// Causes dynamic libraries to be linked regardless of whether they are |
| 141 | /// actually depended on. When false, dynamic libraries with no referenced |
| 142 | /// symbols will be omitted by the linker. |
| 140 | 143 | needed: bool = false, |
| 144 | /// Marks all referenced symbols from this library as weak, meaning that if |
| 145 | /// a same-named symbol is provided by another compilation unit, instead of |
| 146 | /// emitting a "duplicate symbol" error, the linker will resolve all |
| 147 | /// references to the symbol with the strong version. |
| 148 | /// |
| 149 | /// When the linker encounters two weak symbols, the chosen one is |
| 150 | /// determined by the order compilation units are provided to the linker, |
| 151 | /// priority given to later ones. |
| 141 | 152 | weak: bool = false, |
| 142 | 153 | }; |
| 143 | 154 | |
| ... | ... | @@ -414,7 +425,18 @@ pub fn iterateDependencies( |
| 414 | 425 | } |
| 415 | 426 | |
| 416 | 427 | pub const LinkSystemLibraryOptions = struct { |
| 428 | /// Causes dynamic libraries to be linked regardless of whether they are |
| 429 | /// actually depended on. When false, dynamic libraries with no referenced |
| 430 | /// symbols will be omitted by the linker. |
| 417 | 431 | needed: bool = false, |
| 432 | /// Marks all referenced symbols from this library as weak, meaning that if |
| 433 | /// a same-named symbol is provided by another compilation unit, instead of |
| 434 | /// emitting a "duplicate symbol" error, the linker will resolve all |
| 435 | /// references to the symbol with the strong version. |
| 436 | /// |
| 437 | /// When the linker encounters two weak symbols, the chosen one is |
| 438 | /// determined by the order compilation units are provided to the linker, |
| 439 | /// priority given to later ones. |
| 418 | 440 | weak: bool = false, |
| 419 | 441 | use_pkg_config: SystemLib.UsePkgConfig = .yes, |
| 420 | 442 | preferred_link_mode: std.builtin.LinkMode = .dynamic, |