mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
This pipes the `-static` flag when building a static library into IRGen. This should have no impact on non-Windows targets as the usage of the information simply removes the `dllexport` attribute on the generated interfaces. This ensures that a library built with `-static` will not re-export its interfaces from the consumer. This is important to ensure that the consumer does not vend the API surface when it statically links a library. In conjunction with the removal of the force load symbol, this allows the generation of static libraries which may be linked against on Windows. However, a subsequent change is needed to ensure that the consumer does not mark the symbol as being imported from a foreign module (i.e. `dllimport`).
95 KiB
95 KiB