We must remember to do this for every file that implements TOPOTOOLBOX_API functions, because it controls whether the Windows __declspec is dllexport or dllimport. This only affects Windows, so it did not show up on our Unix development machines, and we didn't catch this in our CI because we only ever build static libraries.
.github/workflows/ci.yaml adds a shared library build step to catch errors like this.
We must remember to do this for every file that implements TOPOTOOLBOX_API functions, because it controls whether the Windows __declspec is dllexport or dllimport. This only affects Windows, so it did not show up on our Unix development machines, and we didn't catch this in our CI because we only ever build static libraries.
.github/workflows/ci.yaml adds a shared library build step to catch errors like this.