The intent of this ticket is to simplify and clean up how we include third party libraries in CMake. There's a few minor improvements we can make to how we define and include external libraries:
- Splitting library includes for the wiredtiger library target between 'PUBLIC' and 'PRIVATE'
- i.e. Our various test binaries link against the wiredtiger target and transitively inherit any libraries on the PUBLIC interface. We ideally want to control this to avoid binaries inheriting unnecessary libraries.
- Move each third party library under an imported library target that the rest of the CMake project can link against.
- This centralizing the paths associated with a library under a single target. In-turn reducing unnecessary includes.