I am working on a project (cross-platform, but only Windows matters in this case) that creates a lot of shared libraries (which are somewhat dependent of each other). All the header files that declare functions or structures/classes/enums/etc. are found in a separate /include folder but the source files are grouped into modules.
I have created a macro for _declspec import/export but my question is this:
Should I have a different preprocessor directive that triggers the export version for each library? Since the libraries can use headers that belong to other libraries, is it important that those symbols are seen as import?
From what I have tested on a mock project, you can have them all as export symbols and they still work, but is this good practice?
Thank you.