By default when BUILD_SHARED_LIBS=ON, all libraries are forced to be
shared. However, with circular dependencies between libraries this
becomes a problem. This change allows libraries to be explicitly
marked as static in CMAKE to solve circular dependencies while getting
most of the build-time advantages from BUILD_SHARED_LIBS=ON
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
@tstellar: Not that I know of, but MLIR has some circular dependencies and I've used this to solve them. This should be NFC for existing usage.
Comment Actions
Now that MLIR is in tree, are there any specific objections to accepting this patch? We intend to eliminate the circular library dependence as well, however, there seems to be little reason to disallow this usage, as far as I can see.