Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
consolidate installed libraries and source tree cleanup #1095
As discussed in #1084, this PR moves libkvs, libkz, and libjsc from src/modules to src/common and folds libkvs and libjsc into libflux-core.so. libkz is not publicly exported so it's folded into libflux-common.la. There are no actual API or code changes proposed here, just moving things around internally and conslidating external libraries.
Having separate installed shared libraries for those interfaces that are all listed in flux-core.pc was a bit silly. We got there by trying to co-locate comms modules and their APIs together in the source tree, but I think the consensus in hindsight is that this is not worth it.
The reason for kicking this off now was to make it easier to enumerate the library interfaces that are licensable under LGPL; however, I'm not sure that's actually needed. We could just say "in addition Flux libraries may be licensed..." and not actually name them. So just consider this cleanup.
One loose end is libflux-optparse.so. I left that one separate because it's fairly standalone. It seems like either it should be folded into libflux-core.so like the others, or have it's own pc file. Thoughts?
It probably should not go into libflux -- is it installed publicly just because other projects might want to use it? (i.e. any reason it can't also be included as convenience library only) If it needs to be installed I agree it should have its own .pc file.
@@ Coverage Diff @@ ## master #1095 +/- ## ========================================== + Coverage 77.97% 78.01% +0.04% ========================================== Files 151 151 Lines 26115 26115 ========================================== + Hits 20362 20374 +12 + Misses 5753 5741 -12