When building for both static and shared, followed by only shared, the link inputs are duplicated resulting in link errors. A clean build however succeeds.
Expected Behavior
Link inputs wouldn't be duplicated and the build would succeed without an intermediate explicit clean step.
Current Behavior
An explicit clean is required if linkage is changed from [ Linkage.STATIC, Linkage.SHARED ] to [Linkage.SHARED]
Steps to Reproduce (for bugs)
Build a library with both linkage options
Update the DSL to shared linkage only i.e. remove static as an option
The build would fail with duplicate symbols
A quick glance at generated options file show that the object files previous run were included in the build.
When building for both static and shared, followed by only shared, the link inputs are duplicated resulting in link errors. A clean build however succeeds.
Expected Behavior
Link inputs wouldn't be duplicated and the build would succeed without an intermediate explicit clean step.
Current Behavior
An explicit clean is required if linkage is changed from
[ Linkage.STATIC, Linkage.SHARED ]
to[Linkage.SHARED]
Steps to Reproduce (for bugs)
A quick glance at generated options file show that the object files previous run were included in the build.