When I arrived at the JsonCpp GitHub page, as an intermediate C++ developer, I could not figure out how to include JsonCpp into my project. The changes I propose to the README make this much clearer, and define a clear distinction between which instructions are for those developing and contributing to JsonCpp, and those who are just using it.
Do not prepend ${prefix} to substituted includedir & libdir
in the pkg-config file -- if the paths are overriden by user, CMake puts
absolute paths there (even if user specifies a relative path). Instead,
use the absolute path provided by CMake and appropriately default
LIBRARY_INSTALL_DIR & INCLUDE_INSTALL_DIR to absolute paths with
${CMAKE_INSTALL_PREFIX} prepended.
Fixes: https://github.com/open-source-parsers/jsoncpp/issues/279
Signed-off-by: Michał Górny <mgorny@gentoo.org>
fix compile error on android
But note that we do not have continuous integration testing for Android. This could break again.
`snprintf` drives me crazy. It should have been part of every C library 20 years ago.
Use standard **cmake** variables, to support superprojects better.
- `JSONCPP_LIB_BUILD_SHARED` -> `BUILD_SHARED_LIBS`
- `JSONCPP_LIB_BUILD_STATIC` -> `BUILD_STATIC_LIBS`
Currently JSONCPP_LIB_BUILD_SHARED variable is used as option to build static/shared libraries.
The current patch uses standard CMake variables for this.
Such a workaround is done in https://github.com/open-source-parsers/jsoncpp/issues/51
Current patch will make it generic.
New `appveyor.yml`: All tests pass, in both Appveyor and Travis!
Henceforth, GitHub will run both for any pull-request, so this file will be needed in the `0.y.z` branch too.
Don't use C++11 unique_ptr in the 0.y.z branch.
Although this usage is guarded with __cplusplus >= 201103
some build configurations (notably chromium) use a
C++11-compliant compiler but a pre-11 library.
pull #238
re: 28836b8acc2c002b0488c13dba28fd5be864970a
A global instance of a Value (viz. 'null') was a mistake,
but dropping it breaks binary-compatibility. So we will keep it
everywhere except the one platform where it was crashing, ARM.
This partially reverts commit 45cd9490cd261da31cef84a44d2c587be7e26e99.
Ignored ValueInternal* changes, since those did not produce symbols for
Debian build. (They must not have used the INTERNAL stuff.)
Ignored CZString changes since those are private (and sizeof struct did
not change).
https://github.com/open-source-parsers/jsoncpp/issues/78
Conflicts:
include/json/value.h
src/lib_json/json_internalarray.inl
src/lib_json/json_internalmap.inl
src/lib_json/json_value.cpp