Dependencies from header only libraries
I've been thinking about our dependency stack quite a lot.
A lot of people are refusing to compile programs with for instance boost dependencies. [1]
Kodi is commiting headers into their repo to resolve header only libs [2]
I see the following pros and cons.
Pros:
- All platforms will use the same version of boost
- We won't make people install the dependency
- Easier install
Cons:
- Compile time
I realise I might be lighting a fire now. Any thoughs?
I don't see how having Boost as a dependency is a problem for juCi++. I somehow understand anti-Boost sentiments (that means, I respect them, not that I agree with them) if you have a library with a Boost dependency, because of many problems, mentioned in the reddit thread, but none of these apply to user-facing programs, which juCi++ is.
Also, let's not forget that juCi++ has dependency on Boost libraries which require separate compilation (e.g. Filesystem), so including several boost headers into the project solves nothing.
I agree with @milleniumbug . As long as we are using good, mature and modern libraries, dependencies should not be an issue.
We will hopefully soon have a stable MSYS2 package for instance (I was requested to do this, and will create it after the v1.1.2 release), that will be installable through pacman -S jucipp, and maybe other distributions will add juCi++ too:)
@zalox Can we remove logger.h? Then both the boost-thread and boost-log dependencies are no longer needed. I never use the logger for debugging anyway, gdb/lldb is much better in my opinion.
Yes!
Splendid:) Working on this now.