Add ability to build with system installed jsoncpp #1178
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This first patch in this patch set adds the build option
USE_SYSTEM_JSONCPP
, which instead of using the internal version ofjsoncpp.cpp
links to a system installed one.Even though I didn't need the second patch to make it work for me, it removes the local
json.h
from the CMake include path, which could cause problems on certain systems when building withUSE_SYSTEM_JSONCPP
. The second patch moves jsoncpp to athirdparty
directory and includes it when the system version should not be used.This is an attempt to solve #1176 in a upstreamable fashion, keeping the previous behavior when the build flag is not set.
The problem was discovered during the packaging process of xrdesktop for Debian. This patch set will enable conformance with the Debian policy "embedded-library", as seen in https://lintian.debian.org/tags/embedded-library.html
I was able to build the examples (after applying #1177), as well as run xrdesktop in a system wide installation with these patches.