jsoncpp: bump version

keep lib:libjsoncpp version 22 for compatibility.
This commit is contained in:
Jerome Duval
2020-10-20 17:04:17 +02:00
parent 0cbfeb6fa2
commit 726aba3555
3 changed files with 91 additions and 2 deletions

View File

@@ -8,14 +8,14 @@ COPYRIGHT="2007-2018 Baptiste Lepilleur and The JsonCpp Authors"
LICENSE="MIT"
REVISION="1"
SOURCE_URI="https://github.com/open-source-parsers/jsoncpp/archive/$portVersion.tar.gz"
CHECKSUM_SHA256="77a402fb577b2e0e5d0bdc1cf9c65278915cdb25171e3452c68b6da8a561f8f0"
CHECKSUM_SHA256="8593c1d69e703563d94d8c12244e2e18893eeb9a8a9f8aa3d09a327aa45c8f7d"
SOURCE_FILENAME="jsoncpp-$portVersion.tar.gz"
PATCHES="jsoncpp-$portVersion.patchset"
ARCHITECTURES="!x86_gcc2 ?x86 x86_64"
SECONDARY_ARCHITECTURES="x86"
libVersion="22"
libVersion="24"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="

View File

@@ -0,0 +1,67 @@
SUMMARY="A C++ library for interacting with JSON"
DESCRIPTION="JsonCpp is a C++ library that allows manipulating JSON values, \
including serialization and deserialization to and from strings. It can also \
preserve existing comment in unserialization/serialization steps, making it a \
convenient format to store user input files."
HOMEPAGE="https://github.com/open-source-parsers/jsoncpp"
COPYRIGHT="2007-2018 Baptiste Lepilleur and The JsonCpp Authors"
LICENSE="MIT"
REVISION="1"
SOURCE_URI="https://github.com/open-source-parsers/jsoncpp/archive/$portVersion.tar.gz"
CHECKSUM_SHA256="77a402fb577b2e0e5d0bdc1cf9c65278915cdb25171e3452c68b6da8a561f8f0"
SOURCE_DIR="jsoncpp-$portVersion"
SOURCE_FILENAME="jsoncpp-$portVersion.tar.gz"
PATCHES="jsoncpp-$portVersion.patchset"
ARCHITECTURES="!x86_gcc2 ?x86 x86_64"
SECONDARY_ARCHITECTURES="x86"
libVersion="22"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
jsoncpp22$secondaryArchSuffix = $portVersion
lib:libjsoncpp$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:meson
cmd:ninja
cmd:pkg_config$secondaryArchSuffix
cmd:python2
"
BUILD()
{
for i in shared static; do
meson --prefix="$prefix" --libdir="$libDir" --includedir="$includeDir" \
--buildtype release \
--default-library $i . build-$i
ninja -C build-$i $jobArgs
done
}
INSTALL()
{
ninja -C build-shared install
ninja -C build-static install
prepareInstalledDevelLib libjsoncpp
fixPkgconfig
rm -rf $developDir
}
TEST()
{
LIBRARY_PATH="$sourceDir/build-shared${LIBRARY_PATH:+:$LIBRARY_PATH}" \
ninja -C build-shared test
}

View File

@@ -0,0 +1,22 @@
From bb65fc8bc61a9af3063f3bbb9cc55ed8313d4b1c Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Fri, 20 Mar 2020 17:54:32 +0100
Subject: protect EOF
diff --git a/src/lib_json/json_reader.cpp b/src/lib_json/json_reader.cpp
index 0c1e88d..a8957a8 100644
--- a/src/lib_json/json_reader.cpp
+++ b/src/lib_json/json_reader.cpp
@@ -107,7 +107,7 @@ bool Reader::parse(std::istream& is, Value& root, bool collectComments) {
// Since String is reference-counted, this at least does not
// create an extra copy.
String doc;
- std::getline(is, doc, static_cast<char> EOF);
+ std::getline(is, doc, static_cast<char> (EOF));
return parse(doc.data(), doc.data() + doc.size(), root, collectComments);
}
--
2.24.0