As stated in the CMake manual,
we are supposed to use MODULE rules to generate plugin libraries:
MODULE libraries are plugins that are not linked into other targets but may be loaded dynamically at runtime using dlopen-like functionality
Besides, LLVM's plugin infrastructure fits with the AIX treatment of .so shared objects more than it fits with the AIX treatment of .a library archives (which may contain shared objects).
My experiment (i.e., cmake --system-information) with cmake3.15.7 on an AIX7.2 machine shown that CMAKE_SHARED_LIBRARY_SUFFIX expanded to .so, am I missing part of the story?
Also, is CMAKE_SHARED_MODULE_SUFFIX a viable option here?