The changes necessary to fix this are a bit intrusive, but not
particularly risky:
* install libsyncevolution header files in a standard
path: /usr/include/syncevolution/*.h
* change the #include rules inside these .h files so that they use
"syncevolution/" as prefix for all of them, rename "core"
directory to "syncevolution"
* don't depend on config.h in the header files (apps might not
have the same defines in their own config.h)
* install libsyncevolution.la and add a .pc file for it
* scan a directory for backends to open dynamically in
SyncSource.cpp instead of using a hard-coded list
(should also work when running inside the build directory, with backends in
backends/*/.libs)
I'm curious how can you implement this? How can we
differentiate the situation whether
it is a production running or a running which is inside the build directory?