jsoncpp: Build the library within CMake
Update json/json.h to account for our lack of autolink.h. Update json/config.h to include KWSys Large File Support configuration so that consistent stream libraries are used (on AIX with XL). Add a cm_jsoncpp_reader.h header to include the CMake-provided copy of the json/reader.h header from CMake sources.
This commit is contained in:
parent
84d5674d4e
commit
1fc556536e
|
@ -371,6 +371,11 @@ macro (CMAKE_BUILD_UTILITIES)
|
||||||
CMAKE_SET_TARGET_FOLDER(cmexpat "Utilities/3rdParty")
|
CMAKE_SET_TARGET_FOLDER(cmexpat "Utilities/3rdParty")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
#---------------------------------------------------------------------
|
||||||
|
# Build jsoncpp library.
|
||||||
|
add_subdirectory(Utilities/cmjsoncpp)
|
||||||
|
CMAKE_SET_TARGET_FOLDER(cmjsoncpp "Utilities/3rdParty")
|
||||||
|
|
||||||
#---------------------------------------------------------------------
|
#---------------------------------------------------------------------
|
||||||
# Build XMLRPC library for CMake and CTest.
|
# Build XMLRPC library for CMake and CTest.
|
||||||
if(CTEST_USE_XMLRPC)
|
if(CTEST_USE_XMLRPC)
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
/*============================================================================
|
||||||
|
CMake - Cross Platform Makefile Generator
|
||||||
|
Copyright 2000-2015 Kitware, Inc., Insight Software Consortium
|
||||||
|
|
||||||
|
Distributed under the OSI-approved BSD License (the "License");
|
||||||
|
see accompanying file Copyright.txt for details.
|
||||||
|
|
||||||
|
This software is distributed WITHOUT ANY WARRANTY; without even the
|
||||||
|
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
See the License for more information.
|
||||||
|
============================================================================*/
|
||||||
|
#ifndef cm_jsoncpp_reader_h
|
||||||
|
#define cm_jsoncpp_reader_h
|
||||||
|
|
||||||
|
/* Use the jsoncpp library configured for CMake. */
|
||||||
|
#include <cmjsoncpp/include/json/reader.h>
|
||||||
|
|
||||||
|
#endif
|
|
@ -0,0 +1,17 @@
|
||||||
|
project(JsonCpp CXX)
|
||||||
|
|
||||||
|
set(JSONCPP_SOURCES
|
||||||
|
src/lib_json/json_batchallocator.h
|
||||||
|
src/lib_json/json_reader.cpp
|
||||||
|
src/lib_json/json_tool.h
|
||||||
|
src/lib_json/json_value.cpp
|
||||||
|
src/lib_json/json_valueiterator.inl
|
||||||
|
src/lib_json/json_writer.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
include_directories(
|
||||||
|
${JsonCpp_SOURCE_DIR}/include
|
||||||
|
${KWSYS_HEADER_ROOT}
|
||||||
|
)
|
||||||
|
|
||||||
|
add_library(cmjsoncpp ${JSONCPP_SOURCES})
|
|
@ -6,6 +6,9 @@
|
||||||
#ifndef JSON_CONFIG_H_INCLUDED
|
#ifndef JSON_CONFIG_H_INCLUDED
|
||||||
#define JSON_CONFIG_H_INCLUDED
|
#define JSON_CONFIG_H_INCLUDED
|
||||||
|
|
||||||
|
// Include KWSys Large File Support configuration.
|
||||||
|
#include <cmsys/Configure.h>
|
||||||
|
|
||||||
/// If defined, indicates that json library is embedded in CppTL library.
|
/// If defined, indicates that json library is embedded in CppTL library.
|
||||||
//# define JSON_IN_CPPTL 1
|
//# define JSON_IN_CPPTL 1
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,6 @@
|
||||||
#ifndef JSON_JSON_H_INCLUDED
|
#ifndef JSON_JSON_H_INCLUDED
|
||||||
#define JSON_JSON_H_INCLUDED
|
#define JSON_JSON_H_INCLUDED
|
||||||
|
|
||||||
#include "autolink.h"
|
|
||||||
#include "value.h"
|
#include "value.h"
|
||||||
#include "reader.h"
|
#include "reader.h"
|
||||||
#include "writer.h"
|
#include "writer.h"
|
||||||
|
|
Loading…
Reference in New Issue