|
We don't want our code to be duplicated in memory for each application
that uses it, so the library should not be linked statically.
Some ramifications worth mentioning:
- The unit tests had to be moved into the library,
because otherwise we would need to export random
internal symbols. This is why the patch appears so big.
A follow-up patch should probably make compilation
of tests optional, so the library can be deployed without
unneeded code.
- The DESTDIR of the auto test executables is now the
same as the one of all other executables, so they
can all use the dll on Windows without additional
setup.
- Some internal symbols were exported, namely:
a) Logging-related stuff. This allows us to use
a uniform logging approach in the library and in
our command-line tools; I consider this acceptable.
b) A handful of classes and functions currently needed
by certain command-line tools. These seem more questionable
to me and we should probably find a different way to implement
the respective functionality.
Change-Id: I9cd21e12cd622b55cf62f5e04ad398734410ede1
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|