Hello, I'd like to for an exception to allow three header-only C++ libraries used in the usbguard package. The usbguard package is currently undergoing review to be included in Fedora. The review bz is: https://bugzilla.redhat.com/show_bug.cgi?id=1209971
The libraries in question are located in the src/ThirdParty/ directory in the distribution tarball. Their upstream repositories are here:
https://github.com/cppformat/cppformat https://github.com/nlohmann/json/ https://github.com/gabime/spdlog
All these projects state that to use the library, you should copy the provides C++ header file. Therefore I think, they can be classified as copylibs.
cppformat: used in a header-only configuration by defining FMT_HEADER_ONLY. The project site usage page states: "To use the C++ Format library, add :file:format.h and :file:format.cc from a release archive or the Git repository to your project."
format.h
format.cc
json: header-only, no install section, no build system, upstream project doesn't do releases
spdlog: header-only, no releases, install says: "Just copy the files to your build tree and use a C++11 compiler"
Package SRPM is here: https://fedorapeople.org/~dkopecek/usbguard/usbguard-0.3-1.fc20.src.rpm
You can look at eigen3 for an example of packaged header only C++ library. I would prefer to follow that model than bundle.
See http://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_Header_Only_Libraries
I don't think eigen3 is a good example. usbguard isn't a library, it's a daemon which provides access to it's IPC interface via a library.
Should usbguard have a BuildRequires on its own -devel subpackage? The bundled header only libraries aren't provided in the public interface (in the header files that usbguard-devel installs).
Removed the cppformat library from the source tree
New SRPM is at: https://fedorapeople.org/~dkopecek/usbguard/usbguard-0.3p1-1.fc20.src.rpm
So the exception request is now only for json and spdlog.
Feel free to close this. I've submitted review requests for the remaining libraries. This would probably take longer than the reviews...
Login to comment on this ticket.