You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by al...@apache.org on 2017/04/18 18:59:07 UTC
[06/12] nifi-minifi-cpp git commit: MINIFI-227: Initial Site to Site
Provenance Reporting Task implementation.
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/makefiles/msvc2010/jsontest.vcxproj
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/makefiles/msvc2010/jsontest.vcxproj b/thirdparty/jsoncpp/makefiles/msvc2010/jsontest.vcxproj
new file mode 100644
index 0000000..4c301e5
--- /dev/null
+++ b/thirdparty/jsoncpp/makefiles/msvc2010/jsontest.vcxproj
@@ -0,0 +1,96 @@
+\ufeff<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{25AF2DD2-D396-4668-B188-488C33B8E620}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">../../build/vs71/debug/jsontest\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">../../build/vs71/debug/jsontest\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">../../build/vs71/release/jsontest\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">../../build/vs71/release/jsontest\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(OutDir)jsontest.exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)jsontest.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(OutDir)jsontest.exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\jsontestrunner\main.cpp" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="lib_json.vcxproj">
+ <Project>{1e6c2c1c-6453-4129-ae3f-0ee8e6599c89}</Project>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/makefiles/msvc2010/jsontest.vcxproj.filters
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/makefiles/msvc2010/jsontest.vcxproj.filters b/thirdparty/jsoncpp/makefiles/msvc2010/jsontest.vcxproj.filters
new file mode 100644
index 0000000..610b540
--- /dev/null
+++ b/thirdparty/jsoncpp/makefiles/msvc2010/jsontest.vcxproj.filters
@@ -0,0 +1,13 @@
+\ufeff<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{903591b3-ade3-4ce4-b1f9-1e175e62b014}</UniqueIdentifier>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\jsontestrunner\main.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/makefiles/msvc2010/lib_json.vcxproj
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/makefiles/msvc2010/lib_json.vcxproj b/thirdparty/jsoncpp/makefiles/msvc2010/lib_json.vcxproj
new file mode 100644
index 0000000..e435f86
--- /dev/null
+++ b/thirdparty/jsoncpp/makefiles/msvc2010/lib_json.vcxproj
@@ -0,0 +1,143 @@
+\ufeff<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib_json\json_reader.cpp" />
+ <ClCompile Include="..\..\src\lib_json\json_value.cpp" />
+ <ClCompile Include="..\..\src\lib_json\json_writer.cpp" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\include\json\reader.h" />
+ <ClInclude Include="..\..\include\json\value.h" />
+ <ClInclude Include="..\..\include\json\writer.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{1E6C2C1C-6453-4129-AE3F-0EE8E6599C89}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>jsoncpp</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup />
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>../../include</AdditionalIncludeDirectories>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>../../include</AdditionalIncludeDirectories>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>../../include</AdditionalIncludeDirectories>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>../../include</AdditionalIncludeDirectories>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/makefiles/msvc2010/lib_json.vcxproj.filters
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/makefiles/msvc2010/lib_json.vcxproj.filters b/thirdparty/jsoncpp/makefiles/msvc2010/lib_json.vcxproj.filters
new file mode 100644
index 0000000..63c7403
--- /dev/null
+++ b/thirdparty/jsoncpp/makefiles/msvc2010/lib_json.vcxproj.filters
@@ -0,0 +1,33 @@
+\ufeff<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{c110bc57-c46e-476c-97ea-84d8014f431c}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{ed718592-5acf-47b5-8f2b-b8224590da6a}</UniqueIdentifier>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\lib_json\json_reader.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib_json\json_value.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\lib_json\json_writer.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\include\json\reader.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\include\json\value.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\include\json\writer.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/makefiles/msvc2010/test_lib_json.vcxproj
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/makefiles/msvc2010/test_lib_json.vcxproj b/thirdparty/jsoncpp/makefiles/msvc2010/test_lib_json.vcxproj
new file mode 100644
index 0000000..08c4d44
--- /dev/null
+++ b/thirdparty/jsoncpp/makefiles/msvc2010/test_lib_json.vcxproj
@@ -0,0 +1,109 @@
+\ufeff<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{B7A96B78-2782-40D2-8F37-A2DEF2B9C26D}</ProjectGuid>
+ <RootNamespace>test_lib_json</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">../../build/vs71/debug/test_lib_json\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">../../build/vs71/debug/test_lib_json\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">../../build/vs71/release/test_lib_json\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">../../build/vs71/release/test_lib_json\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(OutDir)test_lib_json.exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>$(OutDir)test_lib_json.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ <PostBuildEvent>
+ <Message>Running all unit tests</Message>
+ <Command>$(TargetPath)</Command>
+ </PostBuildEvent>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(OutDir)test_lib_json.exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ <PostBuildEvent>
+ <Message>Running all unit tests</Message>
+ <Command>$(TargetPath)</Command>
+ </PostBuildEvent>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\test_lib_json\jsontest.cpp" />
+ <ClCompile Include="..\..\src\test_lib_json\main.cpp" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\test_lib_json\jsontest.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="lib_json.vcxproj">
+ <Project>{1e6c2c1c-6453-4129-ae3f-0ee8e6599c89}</Project>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/makefiles/msvc2010/test_lib_json.vcxproj.filters
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/makefiles/msvc2010/test_lib_json.vcxproj.filters b/thirdparty/jsoncpp/makefiles/msvc2010/test_lib_json.vcxproj.filters
new file mode 100644
index 0000000..8f0a17b
--- /dev/null
+++ b/thirdparty/jsoncpp/makefiles/msvc2010/test_lib_json.vcxproj.filters
@@ -0,0 +1,24 @@
+\ufeff<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <ClCompile Include="..\..\src\test_lib_json\jsontest.cpp">
+ <Filter>Source Filter</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\src\test_lib_json\main.cpp">
+ <Filter>Source Filter</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <Filter Include="Source Filter">
+ <UniqueIdentifier>{bf40cbfc-8e98-40b4-b9f3-7e8d579cbae2}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{5fd39074-89e6-4939-aa3f-694fefd296b1}</UniqueIdentifier>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\src\test_lib_json\jsontest.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/makefiles/vs71/jsoncpp.sln
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/makefiles/vs71/jsoncpp.sln b/thirdparty/jsoncpp/makefiles/vs71/jsoncpp.sln
new file mode 100644
index 0000000..5bfa366
--- /dev/null
+++ b/thirdparty/jsoncpp/makefiles/vs71/jsoncpp.sln
@@ -0,0 +1,46 @@
+Microsoft Visual Studio Solution File, Format Version 8.00
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lib_json", "lib_json.vcproj", "{B84F7231-16CE-41D8-8C08-7B523FF4225B}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jsontest", "jsontest.vcproj", "{25AF2DD2-D396-4668-B188-488C33B8E620}"
+ ProjectSection(ProjectDependencies) = postProject
+ {B84F7231-16CE-41D8-8C08-7B523FF4225B} = {B84F7231-16CE-41D8-8C08-7B523FF4225B}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test_lib_json", "test_lib_json.vcproj", "{B7A96B78-2782-40D2-8F37-A2DEF2B9C26D}"
+ ProjectSection(ProjectDependencies) = postProject
+ {B84F7231-16CE-41D8-8C08-7B523FF4225B} = {B84F7231-16CE-41D8-8C08-7B523FF4225B}
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfiguration) = preSolution
+ Debug = Debug
+ dummy = dummy
+ Release = Release
+ EndGlobalSection
+ GlobalSection(ProjectConfiguration) = postSolution
+ {B84F7231-16CE-41D8-8C08-7B523FF4225B}.Debug.ActiveCfg = Debug|Win32
+ {B84F7231-16CE-41D8-8C08-7B523FF4225B}.Debug.Build.0 = Debug|Win32
+ {B84F7231-16CE-41D8-8C08-7B523FF4225B}.dummy.ActiveCfg = dummy|Win32
+ {B84F7231-16CE-41D8-8C08-7B523FF4225B}.dummy.Build.0 = dummy|Win32
+ {B84F7231-16CE-41D8-8C08-7B523FF4225B}.Release.ActiveCfg = Release|Win32
+ {B84F7231-16CE-41D8-8C08-7B523FF4225B}.Release.Build.0 = Release|Win32
+ {25AF2DD2-D396-4668-B188-488C33B8E620}.Debug.ActiveCfg = Debug|Win32
+ {25AF2DD2-D396-4668-B188-488C33B8E620}.Debug.Build.0 = Debug|Win32
+ {25AF2DD2-D396-4668-B188-488C33B8E620}.dummy.ActiveCfg = Debug|Win32
+ {25AF2DD2-D396-4668-B188-488C33B8E620}.dummy.Build.0 = Debug|Win32
+ {25AF2DD2-D396-4668-B188-488C33B8E620}.Release.ActiveCfg = Release|Win32
+ {25AF2DD2-D396-4668-B188-488C33B8E620}.Release.Build.0 = Release|Win32
+ {B7A96B78-2782-40D2-8F37-A2DEF2B9C26D}.Debug.ActiveCfg = Debug|Win32
+ {B7A96B78-2782-40D2-8F37-A2DEF2B9C26D}.Debug.Build.0 = Debug|Win32
+ {B7A96B78-2782-40D2-8F37-A2DEF2B9C26D}.dummy.ActiveCfg = Debug|Win32
+ {B7A96B78-2782-40D2-8F37-A2DEF2B9C26D}.dummy.Build.0 = Debug|Win32
+ {B7A96B78-2782-40D2-8F37-A2DEF2B9C26D}.Release.ActiveCfg = Release|Win32
+ {B7A96B78-2782-40D2-8F37-A2DEF2B9C26D}.Release.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ EndGlobalSection
+ GlobalSection(ExtensibilityAddIns) = postSolution
+ EndGlobalSection
+EndGlobal
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/makefiles/vs71/jsontest.vcproj
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/makefiles/vs71/jsontest.vcproj b/thirdparty/jsoncpp/makefiles/vs71/jsontest.vcproj
new file mode 100644
index 0000000..99a4dd6
--- /dev/null
+++ b/thirdparty/jsoncpp/makefiles/vs71/jsontest.vcproj
@@ -0,0 +1,119 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="7.10"
+ Name="jsontest"
+ ProjectGUID="{25AF2DD2-D396-4668-B188-488C33B8E620}"
+ Keyword="Win32Proj">
+ <Platforms>
+ <Platform
+ Name="Win32"/>
+ </Platforms>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="../../build/vs71/debug/jsontest"
+ IntermediateDirectory="../../build/vs71/debug/jsontest"
+ ConfigurationType="1"
+ CharacterSet="2">
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="../../include"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="TRUE"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="1"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="TRUE"
+ DebugInformationFormat="4"/>
+ <Tool
+ Name="VCCustomBuildTool"/>
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/jsontest.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="TRUE"
+ ProgramDatabaseFile="$(OutDir)/jsontest.pdb"
+ SubSystem="1"
+ TargetMachine="1"/>
+ <Tool
+ Name="VCMIDLTool"/>
+ <Tool
+ Name="VCPostBuildEventTool"/>
+ <Tool
+ Name="VCPreBuildEventTool"/>
+ <Tool
+ Name="VCPreLinkEventTool"/>
+ <Tool
+ Name="VCResourceCompilerTool"/>
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="../../build/vs71/release/jsontest"
+ IntermediateDirectory="../../build/vs71/release/jsontest"
+ ConfigurationType="1"
+ CharacterSet="2">
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="../../include"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="0"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="TRUE"
+ DebugInformationFormat="3"/>
+ <Tool
+ Name="VCCustomBuildTool"/>
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/jsontest.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="TRUE"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"/>
+ <Tool
+ Name="VCMIDLTool"/>
+ <Tool
+ Name="VCPostBuildEventTool"/>
+ <Tool
+ Name="VCPreBuildEventTool"/>
+ <Tool
+ Name="VCPreLinkEventTool"/>
+ <Tool
+ Name="VCResourceCompilerTool"/>
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <File
+ RelativePath="..\..\src\jsontestrunner\main.cpp">
+ </File>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/makefiles/vs71/lib_json.vcproj
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/makefiles/vs71/lib_json.vcproj b/thirdparty/jsoncpp/makefiles/vs71/lib_json.vcproj
new file mode 100644
index 0000000..fe66d8a
--- /dev/null
+++ b/thirdparty/jsoncpp/makefiles/vs71/lib_json.vcproj
@@ -0,0 +1,205 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="7.10"
+ Name="lib_json"
+ ProjectGUID="{B84F7231-16CE-41D8-8C08-7B523FF4225B}"
+ Keyword="Win32Proj">
+ <Platforms>
+ <Platform
+ Name="Win32"/>
+ </Platforms>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="../../build/vs71/debug/lib_json"
+ IntermediateDirectory="../../build/vs71/debug/lib_json"
+ ConfigurationType="4"
+ CharacterSet="2">
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="../../include"
+ PreprocessorDefinitions="WIN32;_DEBUG;_LIB"
+ StringPooling="TRUE"
+ MinimalRebuild="TRUE"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="1"
+ EnableFunctionLevelLinking="TRUE"
+ DisableLanguageExtensions="TRUE"
+ ForceConformanceInForLoopScope="FALSE"
+ RuntimeTypeInfo="TRUE"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="TRUE"
+ DebugInformationFormat="4"/>
+ <Tool
+ Name="VCCustomBuildTool"/>
+ <Tool
+ Name="VCLibrarianTool"
+ OutputFile="$(OutDir)/json_vc71_libmtd.lib"/>
+ <Tool
+ Name="VCMIDLTool"/>
+ <Tool
+ Name="VCPostBuildEventTool"/>
+ <Tool
+ Name="VCPreBuildEventTool"/>
+ <Tool
+ Name="VCPreLinkEventTool"/>
+ <Tool
+ Name="VCResourceCompilerTool"/>
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="../../build/vs71/release/lib_json"
+ IntermediateDirectory="../../build/vs71/release/lib_json"
+ ConfigurationType="4"
+ CharacterSet="2"
+ WholeProgramOptimization="TRUE">
+ <Tool
+ Name="VCCLCompilerTool"
+ GlobalOptimizations="TRUE"
+ EnableIntrinsicFunctions="TRUE"
+ AdditionalIncludeDirectories="../../include"
+ PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
+ StringPooling="TRUE"
+ RuntimeLibrary="0"
+ EnableFunctionLevelLinking="TRUE"
+ DisableLanguageExtensions="TRUE"
+ ForceConformanceInForLoopScope="FALSE"
+ RuntimeTypeInfo="TRUE"
+ UsePrecompiledHeader="0"
+ AssemblerOutput="4"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="TRUE"
+ DebugInformationFormat="3"/>
+ <Tool
+ Name="VCCustomBuildTool"/>
+ <Tool
+ Name="VCLibrarianTool"
+ OutputFile="$(OutDir)/json_vc71_libmt.lib"/>
+ <Tool
+ Name="VCMIDLTool"/>
+ <Tool
+ Name="VCPostBuildEventTool"/>
+ <Tool
+ Name="VCPreBuildEventTool"/>
+ <Tool
+ Name="VCPreLinkEventTool"/>
+ <Tool
+ Name="VCResourceCompilerTool"/>
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ </Configuration>
+ <Configuration
+ Name="dummy|Win32"
+ OutputDirectory="$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="2"
+ WholeProgramOptimization="TRUE">
+ <Tool
+ Name="VCCLCompilerTool"
+ GlobalOptimizations="TRUE"
+ EnableIntrinsicFunctions="TRUE"
+ AdditionalIncludeDirectories="../../include"
+ PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
+ StringPooling="TRUE"
+ RuntimeLibrary="4"
+ EnableFunctionLevelLinking="TRUE"
+ DisableLanguageExtensions="TRUE"
+ ForceConformanceInForLoopScope="FALSE"
+ RuntimeTypeInfo="TRUE"
+ UsePrecompiledHeader="0"
+ AssemblerOutput="4"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="TRUE"
+ DebugInformationFormat="3"/>
+ <Tool
+ Name="VCCustomBuildTool"/>
+ <Tool
+ Name="VCLinkerTool"
+ GenerateDebugInformation="TRUE"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"/>
+ <Tool
+ Name="VCMIDLTool"/>
+ <Tool
+ Name="VCPostBuildEventTool"/>
+ <Tool
+ Name="VCPreBuildEventTool"/>
+ <Tool
+ Name="VCPreLinkEventTool"/>
+ <Tool
+ Name="VCResourceCompilerTool"/>
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <File
+ RelativePath="..\..\include\json\autolink.h">
+ </File>
+ <File
+ RelativePath="..\..\include\json\config.h">
+ </File>
+ <File
+ RelativePath="..\..\include\json\features.h">
+ </File>
+ <File
+ RelativePath="..\..\include\json\forwards.h">
+ </File>
+ <File
+ RelativePath="..\..\include\json\json.h">
+ </File>
+ <File
+ RelativePath="..\..\src\lib_json\json_reader.cpp">
+ </File>
+ <File
+ RelativePath="..\..\src\lib_json\json_value.cpp">
+ </File>
+ <File
+ RelativePath="..\..\src\lib_json\json_valueiterator.inl">
+ </File>
+ <File
+ RelativePath="..\..\src\lib_json\json_writer.cpp">
+ </File>
+ <File
+ RelativePath="..\..\include\json\reader.h">
+ </File>
+ <File
+ RelativePath="..\..\include\json\value.h">
+ </File>
+ <File
+ RelativePath="..\..\include\json\writer.h">
+ </File>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/makefiles/vs71/test_lib_json.vcproj
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/makefiles/vs71/test_lib_json.vcproj b/thirdparty/jsoncpp/makefiles/vs71/test_lib_json.vcproj
new file mode 100644
index 0000000..df36700
--- /dev/null
+++ b/thirdparty/jsoncpp/makefiles/vs71/test_lib_json.vcproj
@@ -0,0 +1,130 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="7.10"
+ Name="test_lib_json"
+ ProjectGUID="{B7A96B78-2782-40D2-8F37-A2DEF2B9C26D}"
+ RootNamespace="test_lib_json"
+ Keyword="Win32Proj">
+ <Platforms>
+ <Platform
+ Name="Win32"/>
+ </Platforms>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="../../build/vs71/debug/test_lib_json"
+ IntermediateDirectory="../../build/vs71/debug/test_lib_json"
+ ConfigurationType="1"
+ CharacterSet="2">
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="../../include"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="TRUE"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="1"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="TRUE"
+ DebugInformationFormat="4"/>
+ <Tool
+ Name="VCCustomBuildTool"/>
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/test_lib_json.exe"
+ LinkIncremental="2"
+ GenerateDebugInformation="TRUE"
+ ProgramDatabaseFile="$(OutDir)/test_lib_json.pdb"
+ SubSystem="1"
+ TargetMachine="1"/>
+ <Tool
+ Name="VCMIDLTool"/>
+ <Tool
+ Name="VCPostBuildEventTool"
+ Description="Running all unit tests"
+ CommandLine="$(TargetPath)"/>
+ <Tool
+ Name="VCPreBuildEventTool"/>
+ <Tool
+ Name="VCPreLinkEventTool"/>
+ <Tool
+ Name="VCResourceCompilerTool"/>
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="../../build/vs71/release/test_lib_json"
+ IntermediateDirectory="../../build/vs71/release/test_lib_json"
+ ConfigurationType="1"
+ CharacterSet="2">
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="../../include"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="0"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="TRUE"
+ DebugInformationFormat="3"/>
+ <Tool
+ Name="VCCustomBuildTool"/>
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/test_lib_json.exe"
+ LinkIncremental="1"
+ GenerateDebugInformation="TRUE"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"/>
+ <Tool
+ Name="VCMIDLTool"/>
+ <Tool
+ Name="VCPostBuildEventTool"
+ Description="Running all unit tests"
+ CommandLine="$(TargetPath)"/>
+ <Tool
+ Name="VCPreBuildEventTool"/>
+ <Tool
+ Name="VCPreLinkEventTool"/>
+ <Tool
+ Name="VCResourceCompilerTool"/>
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <File
+ RelativePath="..\..\src\test_lib_json\jsontest.cpp">
+ </File>
+ <File
+ RelativePath="..\..\src\test_lib_json\jsontest.h">
+ </File>
+ <File
+ RelativePath="..\..\src\test_lib_json\main.cpp">
+ </File>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/makerelease.py
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/makerelease.py b/thirdparty/jsoncpp/makerelease.py
new file mode 100644
index 0000000..ea3722d
--- /dev/null
+++ b/thirdparty/jsoncpp/makerelease.py
@@ -0,0 +1,390 @@
+# Copyright 2010 Baptiste Lepilleur
+# Distributed under MIT license, or public domain if desired and
+# recognized in your jurisdiction.
+# See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
+
+"""Tag the sandbox for release, make source and doc tarballs.
+
+Requires Python 2.6
+
+Example of invocation (use to test the script):
+python makerelease.py --platform=msvc6,msvc71,msvc80,msvc90,mingw -ublep 0.6.0 0.7.0-dev
+
+When testing this script:
+python makerelease.py --force --retag --platform=msvc6,msvc71,msvc80,mingw -ublep test-0.6.0 test-0.6.1-dev
+
+Example of invocation when doing a release:
+python makerelease.py 0.5.0 0.6.0-dev
+
+Note: This was for Subversion. Now that we are in GitHub, we do not
+need to build versioned tarballs anymore, so makerelease.py is defunct.
+"""
+
+from __future__ import print_function
+import os.path
+import subprocess
+import sys
+import doxybuild
+import subprocess
+import xml.etree.ElementTree as ElementTree
+import shutil
+import urllib2
+import tempfile
+import os
+import time
+from devtools import antglob, fixeol, tarball
+import amalgamate
+
+SVN_ROOT = 'https://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/'
+SVN_TAG_ROOT = SVN_ROOT + 'tags/jsoncpp'
+SCONS_LOCAL_URL = 'http://sourceforge.net/projects/scons/files/scons-local/1.2.0/scons-local-1.2.0.tar.gz/download'
+SOURCEFORGE_PROJECT = 'jsoncpp'
+
+def set_version(version):
+ with open('version','wb') as f:
+ f.write(version.strip())
+
+def rmdir_if_exist(dir_path):
+ if os.path.isdir(dir_path):
+ shutil.rmtree(dir_path)
+
+class SVNError(Exception):
+ pass
+
+def svn_command(command, *args):
+ cmd = ['svn', '--non-interactive', command] + list(args)
+ print('Running:', ' '.join(cmd))
+ process = subprocess.Popen(cmd,
+ stdout=subprocess.PIPE,
+ stderr=subprocess.STDOUT)
+ stdout = process.communicate()[0]
+ if process.returncode:
+ error = SVNError('SVN command failed:\n' + stdout)
+ error.returncode = process.returncode
+ raise error
+ return stdout
+
+def check_no_pending_commit():
+ """Checks that there is no pending commit in the sandbox."""
+ stdout = svn_command('status', '--xml')
+ etree = ElementTree.fromstring(stdout)
+ msg = []
+ for entry in etree.getiterator('entry'):
+ path = entry.get('path')
+ status = entry.find('wc-status').get('item')
+ if status != 'unversioned' and path != 'version':
+ msg.append('File "%s" has pending change (status="%s")' % (path, status))
+ if msg:
+ msg.insert(0, 'Pending change to commit found in sandbox. Commit them first!')
+ return '\n'.join(msg)
+
+def svn_join_url(base_url, suffix):
+ if not base_url.endswith('/'):
+ base_url += '/'
+ if suffix.startswith('/'):
+ suffix = suffix[1:]
+ return base_url + suffix
+
+def svn_check_if_tag_exist(tag_url):
+ """Checks if a tag exist.
+ Returns: True if the tag exist, False otherwise.
+ """
+ try:
+ list_stdout = svn_command('list', tag_url)
+ except SVNError as e:
+ if e.returncode != 1 or not str(e).find('tag_url'):
+ raise e
+ # otherwise ignore error, meaning tag does not exist
+ return False
+ return True
+
+def svn_commit(message):
+ """Commit the sandbox, providing the specified comment.
+ """
+ svn_command('ci', '-m', message)
+
+def svn_tag_sandbox(tag_url, message):
+ """Makes a tag based on the sandbox revisions.
+ """
+ svn_command('copy', '-m', message, '.', tag_url)
+
+def svn_remove_tag(tag_url, message):
+ """Removes an existing tag.
+ """
+ svn_command('delete', '-m', message, tag_url)
+
+def svn_export(tag_url, export_dir):
+ """Exports the tag_url revision to export_dir.
+ Target directory, including its parent is created if it does not exist.
+ If the directory export_dir exist, it is deleted before export proceed.
+ """
+ rmdir_if_exist(export_dir)
+ svn_command('export', tag_url, export_dir)
+
+def fix_sources_eol(dist_dir):
+ """Set file EOL for tarball distribution.
+ """
+ print('Preparing exported source file EOL for distribution...')
+ prune_dirs = antglob.prune_dirs + 'scons-local* ./build* ./libs ./dist'
+ win_sources = antglob.glob(dist_dir,
+ includes = '**/*.sln **/*.vcproj',
+ prune_dirs = prune_dirs)
+ unix_sources = antglob.glob(dist_dir,
+ includes = '''**/*.h **/*.cpp **/*.inl **/*.txt **/*.dox **/*.py **/*.html **/*.in
+ sconscript *.json *.expected AUTHORS LICENSE''',
+ excludes = antglob.default_excludes + 'scons.py sconsign.py scons-*',
+ prune_dirs = prune_dirs)
+ for path in win_sources:
+ fixeol.fix_source_eol(path, is_dry_run = False, verbose = True, eol = '\r\n')
+ for path in unix_sources:
+ fixeol.fix_source_eol(path, is_dry_run = False, verbose = True, eol = '\n')
+
+def download(url, target_path):
+ """Download file represented by url to target_path.
+ """
+ f = urllib2.urlopen(url)
+ try:
+ data = f.read()
+ finally:
+ f.close()
+ fout = open(target_path, 'wb')
+ try:
+ fout.write(data)
+ finally:
+ fout.close()
+
+def check_compile(distcheck_top_dir, platform):
+ cmd = [sys.executable, 'scons.py', 'platform=%s' % platform, 'check']
+ print('Running:', ' '.join(cmd))
+ log_path = os.path.join(distcheck_top_dir, 'build-%s.log' % platform)
+ flog = open(log_path, 'wb')
+ try:
+ process = subprocess.Popen(cmd,
+ stdout=flog,
+ stderr=subprocess.STDOUT,
+ cwd=distcheck_top_dir)
+ stdout = process.communicate()[0]
+ status = (process.returncode == 0)
+ finally:
+ flog.close()
+ return (status, log_path)
+
+def write_tempfile(content, **kwargs):
+ fd, path = tempfile.mkstemp(**kwargs)
+ f = os.fdopen(fd, 'wt')
+ try:
+ f.write(content)
+ finally:
+ f.close()
+ return path
+
+class SFTPError(Exception):
+ pass
+
+def run_sftp_batch(userhost, sftp, batch, retry=0):
+ path = write_tempfile(batch, suffix='.sftp', text=True)
+ # psftp -agent -C blep,jsoncpp@web.sourceforge.net -batch -b batch.sftp -bc
+ cmd = [sftp, '-agent', '-C', '-batch', '-b', path, '-bc', userhost]
+ error = None
+ for retry_index in range(0, max(1,retry)):
+ heading = retry_index == 0 and 'Running:' or 'Retrying:'
+ print(heading, ' '.join(cmd))
+ process = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
+ stdout = process.communicate()[0]
+ if process.returncode != 0:
+ error = SFTPError('SFTP batch failed:\n' + stdout)
+ else:
+ break
+ if error:
+ raise error
+ return stdout
+
+def sourceforge_web_synchro(sourceforge_project, doc_dir,
+ user=None, sftp='sftp'):
+ """Notes: does not synchronize sub-directory of doc-dir.
+ """
+ userhost = '%s,%s@web.sourceforge.net' % (user, sourceforge_project)
+ stdout = run_sftp_batch(userhost, sftp, """
+cd htdocs
+dir
+exit
+""")
+ existing_paths = set()
+ collect = 0
+ for line in stdout.split('\n'):
+ line = line.strip()
+ if not collect and line.endswith('> dir'):
+ collect = True
+ elif collect and line.endswith('> exit'):
+ break
+ elif collect == 1:
+ collect = 2
+ elif collect == 2:
+ path = line.strip().split()[-1:]
+ if path and path[0] not in ('.', '..'):
+ existing_paths.add(path[0])
+ upload_paths = set([os.path.basename(p) for p in antglob.glob(doc_dir)])
+ paths_to_remove = existing_paths - upload_paths
+ if paths_to_remove:
+ print('Removing the following file from web:')
+ print('\n'.join(paths_to_remove))
+ stdout = run_sftp_batch(userhost, sftp, """cd htdocs
+rm %s
+exit""" % ' '.join(paths_to_remove))
+ print('Uploading %d files:' % len(upload_paths))
+ batch_size = 10
+ upload_paths = list(upload_paths)
+ start_time = time.time()
+ for index in range(0,len(upload_paths),batch_size):
+ paths = upload_paths[index:index+batch_size]
+ file_per_sec = (time.time() - start_time) / (index+1)
+ remaining_files = len(upload_paths) - index
+ remaining_sec = file_per_sec * remaining_files
+ print('%d/%d, ETA=%.1fs' % (index+1, len(upload_paths), remaining_sec))
+ run_sftp_batch(userhost, sftp, """cd htdocs
+lcd %s
+mput %s
+exit""" % (doc_dir, ' '.join(paths)), retry=3)
+
+def sourceforge_release_tarball(sourceforge_project, paths, user=None, sftp='sftp'):
+ userhost = '%s,%s@frs.sourceforge.net' % (user, sourceforge_project)
+ run_sftp_batch(userhost, sftp, """
+mput %s
+exit
+""" % (' '.join(paths),))
+
+
+def main():
+ usage = """%prog release_version next_dev_version
+Update 'version' file to release_version and commit.
+Generates the document tarball.
+Tags the sandbox revision with release_version.
+Update 'version' file to next_dev_version and commit.
+
+Performs an svn export of tag release version, and build a source tarball.
+
+Must be started in the project top directory.
+
+Warning: --force should only be used when developping/testing the release script.
+"""
+ from optparse import OptionParser
+ parser = OptionParser(usage=usage)
+ parser.allow_interspersed_args = False
+ parser.add_option('--dot', dest="dot_path", action='store', default=doxybuild.find_program('dot'),
+ help="""Path to GraphViz dot tool. Must be full qualified path. [Default: %default]""")
+ parser.add_option('--doxygen', dest="doxygen_path", action='store', default=doxybuild.find_program('doxygen'),
+ help="""Path to Doxygen tool. [Default: %default]""")
+ parser.add_option('--force', dest="ignore_pending_commit", action='store_true', default=False,
+ help="""Ignore pending commit. [Default: %default]""")
+ parser.add_option('--retag', dest="retag_release", action='store_true', default=False,
+ help="""Overwrite release existing tag if it exist. [Default: %default]""")
+ parser.add_option('-p', '--platforms', dest="platforms", action='store', default='',
+ help="""Comma separated list of platform passed to scons for build check.""")
+ parser.add_option('--no-test', dest="no_test", action='store_true', default=False,
+ help="""Skips build check.""")
+ parser.add_option('--no-web', dest="no_web", action='store_true', default=False,
+ help="""Do not update web site.""")
+ parser.add_option('-u', '--upload-user', dest="user", action='store',
+ help="""Sourceforge user for SFTP documentation upload.""")
+ parser.add_option('--sftp', dest='sftp', action='store', default=doxybuild.find_program('psftp', 'sftp'),
+ help="""Path of the SFTP compatible binary used to upload the documentation.""")
+ parser.enable_interspersed_args()
+ options, args = parser.parse_args()
+
+ if len(args) != 2:
+ parser.error('release_version missing on command-line.')
+ release_version = args[0]
+ next_version = args[1]
+
+ if not options.platforms and not options.no_test:
+ parser.error('You must specify either --platform or --no-test option.')
+
+ if options.ignore_pending_commit:
+ msg = ''
+ else:
+ msg = check_no_pending_commit()
+ if not msg:
+ print('Setting version to', release_version)
+ set_version(release_version)
+ svn_commit('Release ' + release_version)
+ tag_url = svn_join_url(SVN_TAG_ROOT, release_version)
+ if svn_check_if_tag_exist(tag_url):
+ if options.retag_release:
+ svn_remove_tag(tag_url, 'Overwriting previous tag')
+ else:
+ print('Aborting, tag %s already exist. Use --retag to overwrite it!' % tag_url)
+ sys.exit(1)
+ svn_tag_sandbox(tag_url, 'Release ' + release_version)
+
+ print('Generated doxygen document...')
+## doc_dirname = r'jsoncpp-api-html-0.5.0'
+## doc_tarball_path = r'e:\prg\vc\Lib\jsoncpp-trunk\dist\jsoncpp-api-html-0.5.0.tar.gz'
+ doc_tarball_path, doc_dirname = doxybuild.build_doc(options, make_release=True)
+ doc_distcheck_dir = 'dist/doccheck'
+ tarball.decompress(doc_tarball_path, doc_distcheck_dir)
+ doc_distcheck_top_dir = os.path.join(doc_distcheck_dir, doc_dirname)
+
+ export_dir = 'dist/export'
+ svn_export(tag_url, export_dir)
+ fix_sources_eol(export_dir)
+
+ source_dir = 'jsoncpp-src-' + release_version
+ source_tarball_path = 'dist/%s.tar.gz' % source_dir
+ print('Generating source tarball to', source_tarball_path)
+ tarball.make_tarball(source_tarball_path, [export_dir], export_dir, prefix_dir=source_dir)
+
+ amalgamation_tarball_path = 'dist/%s-amalgamation.tar.gz' % source_dir
+ print('Generating amalgamation source tarball to', amalgamation_tarball_path)
+ amalgamation_dir = 'dist/amalgamation'
+ amalgamate.amalgamate_source(export_dir, '%s/jsoncpp.cpp' % amalgamation_dir, 'json/json.h')
+ amalgamation_source_dir = 'jsoncpp-src-amalgamation' + release_version
+ tarball.make_tarball(amalgamation_tarball_path, [amalgamation_dir],
+ amalgamation_dir, prefix_dir=amalgamation_source_dir)
+
+ # Decompress source tarball, download and install scons-local
+ distcheck_dir = 'dist/distcheck'
+ distcheck_top_dir = distcheck_dir + '/' + source_dir
+ print('Decompressing source tarball to', distcheck_dir)
+ rmdir_if_exist(distcheck_dir)
+ tarball.decompress(source_tarball_path, distcheck_dir)
+ scons_local_path = 'dist/scons-local.tar.gz'
+ print('Downloading scons-local to', scons_local_path)
+ download(SCONS_LOCAL_URL, scons_local_path)
+ print('Decompressing scons-local to', distcheck_top_dir)
+ tarball.decompress(scons_local_path, distcheck_top_dir)
+
+ # Run compilation
+ print('Compiling decompressed tarball')
+ all_build_status = True
+ for platform in options.platforms.split(','):
+ print('Testing platform:', platform)
+ build_status, log_path = check_compile(distcheck_top_dir, platform)
+ print('see build log:', log_path)
+ print(build_status and '=> ok' or '=> FAILED')
+ all_build_status = all_build_status and build_status
+ if not build_status:
+ print('Testing failed on at least one platform, aborting...')
+ svn_remove_tag(tag_url, 'Removing tag due to failed testing')
+ sys.exit(1)
+ if options.user:
+ if not options.no_web:
+ print('Uploading documentation using user', options.user)
+ sourceforge_web_synchro(SOURCEFORGE_PROJECT, doc_distcheck_top_dir, user=options.user, sftp=options.sftp)
+ print('Completed documentation upload')
+ print('Uploading source and documentation tarballs for release using user', options.user)
+ sourceforge_release_tarball(SOURCEFORGE_PROJECT,
+ [source_tarball_path, doc_tarball_path],
+ user=options.user, sftp=options.sftp)
+ print('Source and doc release tarballs uploaded')
+ else:
+ print('No upload user specified. Web site and download tarbal were not uploaded.')
+ print('Tarball can be found at:', doc_tarball_path)
+
+ # Set next version number and commit
+ set_version(next_version)
+ svn_commit('Released ' + release_version)
+ else:
+ sys.stderr.write(msg + '\n')
+
+if __name__ == '__main__':
+ main()
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/pkg-config/jsoncpp.pc.in
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/pkg-config/jsoncpp.pc.in b/thirdparty/jsoncpp/pkg-config/jsoncpp.pc.in
new file mode 100644
index 0000000..dea51f5
--- /dev/null
+++ b/thirdparty/jsoncpp/pkg-config/jsoncpp.pc.in
@@ -0,0 +1,9 @@
+libdir=@CMAKE_INSTALL_FULL_LIBDIR@
+includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
+
+Name: jsoncpp
+Description: A C++ library for interacting with JSON
+Version: @JSONCPP_VERSION@
+URL: https://github.com/open-source-parsers/jsoncpp
+Libs: -L${libdir} -ljsoncpp
+Cflags: -I${includedir}
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/scons-tools/globtool.py
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/scons-tools/globtool.py b/thirdparty/jsoncpp/scons-tools/globtool.py
new file mode 100644
index 0000000..890f1b7
--- /dev/null
+++ b/thirdparty/jsoncpp/scons-tools/globtool.py
@@ -0,0 +1,58 @@
+# Copyright 2009 Baptiste Lepilleur
+# Distributed under MIT license, or public domain if desired and
+# recognized in your jurisdiction.
+# See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
+
+import fnmatch
+import os
+
+def generate(env):
+ def Glob(env, includes = None, excludes = None, dir = '.'):
+ """Adds Glob(includes = Split('*'), excludes = None, dir = '.')
+ helper function to environment.
+
+ Glob both the file-system files.
+
+ includes: list of file name pattern included in the return list when matched.
+ excludes: list of file name pattern exluced from the return list.
+
+ Example:
+ sources = env.Glob(("*.cpp", '*.h'), "~*.cpp", "#src")
+ """
+ def filterFilename(path):
+ abs_path = os.path.join(dir, path)
+ if not os.path.isfile(abs_path):
+ return 0
+ fn = os.path.basename(path)
+ match = 0
+ for include in includes:
+ if fnmatch.fnmatchcase(fn, include):
+ match = 1
+ break
+ if match == 1 and not excludes is None:
+ for exclude in excludes:
+ if fnmatch.fnmatchcase(fn, exclude):
+ match = 0
+ break
+ return match
+ if includes is None:
+ includes = ('*',)
+ elif type(includes) in (type(''), type(u'')):
+ includes = (includes,)
+ if type(excludes) in (type(''), type(u'')):
+ excludes = (excludes,)
+ dir = env.Dir(dir).abspath
+ paths = os.listdir(dir)
+ def makeAbsFileNode(path):
+ return env.File(os.path.join(dir, path))
+ nodes = filter(filterFilename, paths)
+ return map(makeAbsFileNode, nodes)
+
+ from SCons.Script import Environment
+ Environment.Glob = Glob
+
+def exists(env):
+ """
+ Tool always exists.
+ """
+ return True
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/scons-tools/srcdist.py
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/scons-tools/srcdist.py b/thirdparty/jsoncpp/scons-tools/srcdist.py
new file mode 100644
index 0000000..fe1d746
--- /dev/null
+++ b/thirdparty/jsoncpp/scons-tools/srcdist.py
@@ -0,0 +1,183 @@
+# Copyright 2007 Baptiste Lepilleur
+# Distributed under MIT license, or public domain if desired and
+# recognized in your jurisdiction.
+# See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
+
+import os
+import os.path
+from fnmatch import fnmatch
+import targz
+
+##def DoxyfileParse(file_contents):
+## """
+## Parse a Doxygen source file and return a dictionary of all the values.
+## Values will be strings and lists of strings.
+## """
+## data = {}
+##
+## import shlex
+## lex = shlex.shlex(instream = file_contents, posix = True)
+## lex.wordchars += "*+./-:"
+## lex.whitespace = lex.whitespace.replace("\n", "")
+## lex.escape = ""
+##
+## lineno = lex.lineno
+## last_backslash_lineno = lineno
+## token = lex.get_token()
+## key = token # the first token should be a key
+## last_token = ""
+## key_token = False
+## next_key = False
+## new_data = True
+##
+## def append_data(data, key, new_data, token):
+## if new_data or len(data[key]) == 0:
+## data[key].append(token)
+## else:
+## data[key][-1] += token
+##
+## while token:
+## if token in ['\n']:
+## if last_token not in ['\\']:
+## key_token = True
+## elif token in ['\\']:
+## pass
+## elif key_token:
+## key = token
+## key_token = False
+## else:
+## if token == "+=":
+## if not data.has_key(key):
+## data[key] = list()
+## elif token == "=":
+## data[key] = list()
+## else:
+## append_data(data, key, new_data, token)
+## new_data = True
+##
+## last_token = token
+## token = lex.get_token()
+##
+## if last_token == '\\' and token != '\n':
+## new_data = False
+## append_data(data, key, new_data, '\\')
+##
+## # compress lists of len 1 into single strings
+## for (k, v) in data.items():
+## if len(v) == 0:
+## data.pop(k)
+##
+## # items in the following list will be kept as lists and not converted to strings
+## if k in ["INPUT", "FILE_PATTERNS", "EXCLUDE_PATTERNS"]:
+## continue
+##
+## if len(v) == 1:
+## data[k] = v[0]
+##
+## return data
+##
+##def DoxySourceScan(node, env, path):
+## """
+## Doxygen Doxyfile source scanner. This should scan the Doxygen file and add
+## any files used to generate docs to the list of source files.
+## """
+## default_file_patterns = [
+## '*.c', '*.cc', '*.cxx', '*.cpp', '*.c++', '*.java', '*.ii', '*.ixx',
+## '*.ipp', '*.i++', '*.inl', '*.h', '*.hh ', '*.hxx', '*.hpp', '*.h++',
+## '*.idl', '*.odl', '*.cs', '*.php', '*.php3', '*.inc', '*.m', '*.mm',
+## '*.py',
+## ]
+##
+## default_exclude_patterns = [
+## '*~',
+## ]
+##
+## sources = []
+##
+## data = DoxyfileParse(node.get_contents())
+##
+## if data.get("RECURSIVE", "NO") == "YES":
+## recursive = True
+## else:
+## recursive = False
+##
+## file_patterns = data.get("FILE_PATTERNS", default_file_patterns)
+## exclude_patterns = data.get("EXCLUDE_PATTERNS", default_exclude_patterns)
+##
+## for node in data.get("INPUT", []):
+## if os.path.isfile(node):
+## sources.add(node)
+## elif os.path.isdir(node):
+## if recursive:
+## for root, dirs, files in os.walk(node):
+## for f in files:
+## filename = os.path.join(root, f)
+##
+## pattern_check = reduce(lambda x, y: x or bool(fnmatch(filename, y)), file_patterns, False)
+## exclude_check = reduce(lambda x, y: x and fnmatch(filename, y), exclude_patterns, True)
+##
+## if pattern_check and not exclude_check:
+## sources.append(filename)
+## else:
+## for pattern in file_patterns:
+## sources.extend(glob.glob("/".join([node, pattern])))
+## sources = map(lambda path: env.File(path), sources)
+## return sources
+##
+##
+##def DoxySourceScanCheck(node, env):
+## """Check if we should scan this file"""
+## return os.path.isfile(node.path)
+
+def srcDistEmitter(source, target, env):
+## """Doxygen Doxyfile emitter"""
+## # possible output formats and their default values and output locations
+## output_formats = {
+## "HTML": ("YES", "html"),
+## "LATEX": ("YES", "latex"),
+## "RTF": ("NO", "rtf"),
+## "MAN": ("YES", "man"),
+## "XML": ("NO", "xml"),
+## }
+##
+## data = DoxyfileParse(source[0].get_contents())
+##
+## targets = []
+## out_dir = data.get("OUTPUT_DIRECTORY", ".")
+##
+## # add our output locations
+## for (k, v) in output_formats.items():
+## if data.get("GENERATE_" + k, v[0]) == "YES":
+## targets.append(env.Dir(os.path.join(out_dir, data.get(k + "_OUTPUT", v[1]))))
+##
+## # don't clobber targets
+## for node in targets:
+## env.Precious(node)
+##
+## # set up cleaning stuff
+## for node in targets:
+## env.Clean(node, node)
+##
+## return (targets, source)
+ return (target,source)
+
+def generate(env):
+ """
+ Add builders and construction variables for the
+ SrcDist tool.
+ """
+## doxyfile_scanner = env.Scanner(## DoxySourceScan,
+## "DoxySourceScan",
+## scan_check = DoxySourceScanCheck,
+##)
+
+ if targz.exists(env):
+ srcdist_builder = targz.makeBuilder(srcDistEmitter)
+
+ env['BUILDERS']['SrcDist'] = srcdist_builder
+
+def exists(env):
+ """
+ Make sure srcdist exists.
+ """
+ return targz.exists(env)
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/scons-tools/substinfile.py
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/scons-tools/substinfile.py b/thirdparty/jsoncpp/scons-tools/substinfile.py
new file mode 100644
index 0000000..c620442
--- /dev/null
+++ b/thirdparty/jsoncpp/scons-tools/substinfile.py
@@ -0,0 +1,85 @@
+# Copyright 2010 Baptiste Lepilleur
+# Distributed under MIT license, or public domain if desired and
+# recognized in your jurisdiction.
+# See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
+
+import re
+from SCons.Script import * # the usual scons stuff you get in a SConscript
+import collections
+
+def generate(env):
+ """
+ Add builders and construction variables for the
+ SubstInFile tool.
+
+ Adds SubstInFile builder, which substitutes the keys->values of SUBST_DICT
+ from the source to the target.
+ The values of SUBST_DICT first have any construction variables expanded
+ (its keys are not expanded).
+ If a value of SUBST_DICT is a python callable function, it is called and
+ the result is expanded as the value.
+ If there's more than one source and more than one target, each target gets
+ substituted from the corresponding source.
+ """
+ def do_subst_in_file(targetfile, sourcefile, dict):
+ """Replace all instances of the keys of dict with their values.
+ For example, if dict is {'%VERSION%': '1.2345', '%BASE%': 'MyProg'},
+ then all instances of %VERSION% in the file will be replaced with 1.2345 etc.
+ """
+ try:
+ f = open(sourcefile, 'rb')
+ contents = f.read()
+ f.close()
+ except:
+ raise SCons.Errors.UserError("Can't read source file %s"%sourcefile)
+ for (k,v) in list(dict.items()):
+ contents = re.sub(k, v, contents)
+ try:
+ f = open(targetfile, 'wb')
+ f.write(contents)
+ f.close()
+ except:
+ raise SCons.Errors.UserError("Can't write target file %s"%targetfile)
+ return 0 # success
+
+ def subst_in_file(target, source, env):
+ if 'SUBST_DICT' not in env:
+ raise SCons.Errors.UserError("SubstInFile requires SUBST_DICT to be set.")
+ d = dict(env['SUBST_DICT']) # copy it
+ for (k,v) in list(d.items()):
+ if isinstance(v, collections.Callable):
+ d[k] = env.subst(v()).replace('\\','\\\\')
+ elif SCons.Util.is_String(v):
+ d[k] = env.subst(v).replace('\\','\\\\')
+ else:
+ raise SCons.Errors.UserError("SubstInFile: key %s: %s must be a string or callable"%(k, repr(v)))
+ for (t,s) in zip(target, source):
+ return do_subst_in_file(str(t), str(s), d)
+
+ def subst_in_file_string(target, source, env):
+ """This is what gets printed on the console."""
+ return '\n'.join(['Substituting vars from %s into %s'%(str(s), str(t))
+ for (t,s) in zip(target, source)])
+
+ def subst_emitter(target, source, env):
+ """Add dependency from substituted SUBST_DICT to target.
+ Returns original target, source tuple unchanged.
+ """
+ d = env['SUBST_DICT'].copy() # copy it
+ for (k,v) in list(d.items()):
+ if isinstance(v, collections.Callable):
+ d[k] = env.subst(v())
+ elif SCons.Util.is_String(v):
+ d[k]=env.subst(v)
+ Depends(target, SCons.Node.Python.Value(d))
+ return target, source
+
+## env.Append(TOOLS = 'substinfile') # this should be automaticaly done by Scons ?!?
+ subst_action = SCons.Action.Action(subst_in_file, subst_in_file_string)
+ env['BUILDERS']['SubstInFile'] = Builder(action=subst_action, emitter=subst_emitter)
+
+def exists(env):
+ """
+ Make sure tool exists.
+ """
+ return True
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/scons-tools/targz.py
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/scons-tools/targz.py b/thirdparty/jsoncpp/scons-tools/targz.py
new file mode 100644
index 0000000..8e5ba83
--- /dev/null
+++ b/thirdparty/jsoncpp/scons-tools/targz.py
@@ -0,0 +1,87 @@
+# Copyright 2007 Baptiste Lepilleur
+# Distributed under MIT license, or public domain if desired and
+# recognized in your jurisdiction.
+# See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
+
+"""tarball
+
+Tool-specific initialization for tarball.
+
+"""
+
+## Commands to tackle a command based implementation:
+##to unpack on the fly...
+##gunzip < FILE.tar.gz | tar xvf -
+##to pack on the fly...
+##tar cvf - FILE-LIST | gzip -c > FILE.tar.gz
+
+import os.path
+
+import SCons.Builder
+import SCons.Node.FS
+import SCons.Util
+
+try:
+ import gzip
+ import tarfile
+ internal_targz = 1
+except ImportError:
+ internal_targz = 0
+
+TARGZ_DEFAULT_COMPRESSION_LEVEL = 9
+
+if internal_targz:
+ def targz(target, source, env):
+ def archive_name(path):
+ path = os.path.normpath(os.path.abspath(path))
+ common_path = os.path.commonprefix((base_dir, path))
+ archive_name = path[len(common_path):]
+ return archive_name
+
+ def visit(tar, dirname, names):
+ for name in names:
+ path = os.path.join(dirname, name)
+ if os.path.isfile(path):
+ tar.add(path, archive_name(path))
+ compression = env.get('TARGZ_COMPRESSION_LEVEL',TARGZ_DEFAULT_COMPRESSION_LEVEL)
+ base_dir = os.path.normpath(env.get('TARGZ_BASEDIR', env.Dir('.')).abspath)
+ target_path = str(target[0])
+ fileobj = gzip.GzipFile(target_path, 'wb', compression)
+ tar = tarfile.TarFile(os.path.splitext(target_path)[0], 'w', fileobj)
+ for source in source:
+ source_path = str(source)
+ if source.isdir():
+ os.path.walk(source_path, visit, tar)
+ else:
+ tar.add(source_path, archive_name(source_path)) # filename, arcname
+ tar.close()
+
+ targzAction = SCons.Action.Action(targz, varlist=['TARGZ_COMPRESSION_LEVEL','TARGZ_BASEDIR'])
+
+ def makeBuilder(emitter = None):
+ return SCons.Builder.Builder(action = SCons.Action.Action('$TARGZ_COM', '$TARGZ_COMSTR'),
+ source_factory = SCons.Node.FS.Entry,
+ source_scanner = SCons.Defaults.DirScanner,
+ suffix = '$TARGZ_SUFFIX',
+ multi = 1)
+ TarGzBuilder = makeBuilder()
+
+ def generate(env):
+ """Add Builders and construction variables for zip to an Environment.
+ The following environnement variables may be set:
+ TARGZ_COMPRESSION_LEVEL: integer, [0-9]. 0: no compression, 9: best compression (same as gzip compression level).
+ TARGZ_BASEDIR: base-directory used to determine archive name (this allow archive name to be relative
+ to something other than top-dir).
+ """
+ env['BUILDERS']['TarGz'] = TarGzBuilder
+ env['TARGZ_COM'] = targzAction
+ env['TARGZ_COMPRESSION_LEVEL'] = TARGZ_DEFAULT_COMPRESSION_LEVEL # range 0-9
+ env['TARGZ_SUFFIX'] = '.tar.gz'
+ env['TARGZ_BASEDIR'] = env.Dir('.') # Sources archive name are made relative to that directory.
+else:
+ def generate(env):
+ pass
+
+
+def exists(env):
+ return internal_targz
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/src/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/src/CMakeLists.txt b/thirdparty/jsoncpp/src/CMakeLists.txt
new file mode 100644
index 0000000..ca8ac15
--- /dev/null
+++ b/thirdparty/jsoncpp/src/CMakeLists.txt
@@ -0,0 +1,5 @@
+ADD_SUBDIRECTORY(lib_json)
+IF(JSONCPP_WITH_TESTS)
+ ADD_SUBDIRECTORY(jsontestrunner)
+ ADD_SUBDIRECTORY(test_lib_json)
+ENDIF()
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/src/jsontestrunner/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/src/jsontestrunner/CMakeLists.txt b/thirdparty/jsoncpp/src/jsontestrunner/CMakeLists.txt
new file mode 100644
index 0000000..20d01e6
--- /dev/null
+++ b/thirdparty/jsoncpp/src/jsontestrunner/CMakeLists.txt
@@ -0,0 +1,25 @@
+FIND_PACKAGE(PythonInterp 2.6)
+
+ADD_EXECUTABLE(jsontestrunner_exe
+ main.cpp
+ )
+
+IF(BUILD_SHARED_LIBS)
+ ADD_DEFINITIONS( -DJSON_DLL )
+ TARGET_LINK_LIBRARIES(jsontestrunner_exe jsoncpp_lib)
+ELSE(BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(jsontestrunner_exe jsoncpp_lib_static)
+ENDIF()
+
+SET_TARGET_PROPERTIES(jsontestrunner_exe PROPERTIES OUTPUT_NAME jsontestrunner_exe)
+
+IF(PYTHONINTERP_FOUND)
+ # Run end to end parser/writer tests
+ SET(TEST_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../test)
+ SET(RUNJSONTESTS_PATH ${TEST_DIR}/runjsontests.py)
+ ADD_CUSTOM_TARGET(jsoncpp_readerwriter_tests
+ "${PYTHON_EXECUTABLE}" -B "${RUNJSONTESTS_PATH}" $<TARGET_FILE:jsontestrunner_exe> "${TEST_DIR}/data"
+ DEPENDS jsontestrunner_exe jsoncpp_test
+ )
+ ADD_CUSTOM_TARGET(jsoncpp_check DEPENDS jsoncpp_readerwriter_tests)
+ENDIF()
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/src/jsontestrunner/main.cpp
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/src/jsontestrunner/main.cpp b/thirdparty/jsoncpp/src/jsontestrunner/main.cpp
new file mode 100644
index 0000000..45db464
--- /dev/null
+++ b/thirdparty/jsoncpp/src/jsontestrunner/main.cpp
@@ -0,0 +1,326 @@
+// Copyright 2007-2010 Baptiste Lepilleur
+// Distributed under MIT license, or public domain if desired and
+// recognized in your jurisdiction.
+// See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
+
+/* This executable is used for testing parser/writer using real JSON files.
+ */
+
+#include <json/json.h>
+#include <algorithm> // sort
+#include <sstream>
+#include <stdio.h>
+
+#if defined(_MSC_VER) && _MSC_VER >= 1310
+#pragma warning(disable : 4996) // disable fopen deprecation warning
+#endif
+
+struct Options
+{
+ JSONCPP_STRING path;
+ Json::Features features;
+ bool parseOnly;
+ typedef JSONCPP_STRING (*writeFuncType)(Json::Value const&);
+ writeFuncType write;
+};
+
+static JSONCPP_STRING normalizeFloatingPointStr(double value) {
+ char buffer[32];
+#if defined(_MSC_VER) && defined(__STDC_SECURE_LIB__)
+ sprintf_s(buffer, sizeof(buffer), "%.16g", value);
+#else
+ snprintf(buffer, sizeof(buffer), "%.16g", value);
+#endif
+ buffer[sizeof(buffer) - 1] = 0;
+ JSONCPP_STRING s(buffer);
+ JSONCPP_STRING::size_type index = s.find_last_of("eE");
+ if (index != JSONCPP_STRING::npos) {
+ JSONCPP_STRING::size_type hasSign =
+ (s[index + 1] == '+' || s[index + 1] == '-') ? 1 : 0;
+ JSONCPP_STRING::size_type exponentStartIndex = index + 1 + hasSign;
+ JSONCPP_STRING normalized = s.substr(0, exponentStartIndex);
+ JSONCPP_STRING::size_type indexDigit =
+ s.find_first_not_of('0', exponentStartIndex);
+ JSONCPP_STRING exponent = "0";
+ if (indexDigit !=
+ JSONCPP_STRING::npos) // There is an exponent different from 0
+ {
+ exponent = s.substr(indexDigit);
+ }
+ return normalized + exponent;
+ }
+ return s;
+}
+
+static JSONCPP_STRING readInputTestFile(const char* path) {
+ FILE* file = fopen(path, "rb");
+ if (!file)
+ return JSONCPP_STRING("");
+ fseek(file, 0, SEEK_END);
+ long const size = ftell(file);
+ unsigned long const usize = static_cast<unsigned long>(size);
+ fseek(file, 0, SEEK_SET);
+ JSONCPP_STRING text;
+ char* buffer = new char[size + 1];
+ buffer[size] = 0;
+ if (fread(buffer, 1, usize, file) == usize)
+ text = buffer;
+ fclose(file);
+ delete[] buffer;
+ return text;
+}
+
+static void
+printValueTree(FILE* fout, Json::Value& value, const JSONCPP_STRING& path = ".") {
+ if (value.hasComment(Json::commentBefore)) {
+ fprintf(fout, "%s\n", value.getComment(Json::commentBefore).c_str());
+ }
+ switch (value.type()) {
+ case Json::nullValue:
+ fprintf(fout, "%s=null\n", path.c_str());
+ break;
+ case Json::intValue:
+ fprintf(fout,
+ "%s=%s\n",
+ path.c_str(),
+ Json::valueToString(value.asLargestInt()).c_str());
+ break;
+ case Json::uintValue:
+ fprintf(fout,
+ "%s=%s\n",
+ path.c_str(),
+ Json::valueToString(value.asLargestUInt()).c_str());
+ break;
+ case Json::realValue:
+ fprintf(fout,
+ "%s=%s\n",
+ path.c_str(),
+ normalizeFloatingPointStr(value.asDouble()).c_str());
+ break;
+ case Json::stringValue:
+ fprintf(fout, "%s=\"%s\"\n", path.c_str(), value.asString().c_str());
+ break;
+ case Json::booleanValue:
+ fprintf(fout, "%s=%s\n", path.c_str(), value.asBool() ? "true" : "false");
+ break;
+ case Json::arrayValue: {
+ fprintf(fout, "%s=[]\n", path.c_str());
+ Json::ArrayIndex size = value.size();
+ for (Json::ArrayIndex index = 0; index < size; ++index) {
+ static char buffer[16];
+#if defined(_MSC_VER) && defined(__STDC_SECURE_LIB__)
+ sprintf_s(buffer, sizeof(buffer), "[%d]", index);
+#else
+ snprintf(buffer, sizeof(buffer), "[%d]", index);
+#endif
+ printValueTree(fout, value[index], path + buffer);
+ }
+ } break;
+ case Json::objectValue: {
+ fprintf(fout, "%s={}\n", path.c_str());
+ Json::Value::Members members(value.getMemberNames());
+ std::sort(members.begin(), members.end());
+ JSONCPP_STRING suffix = *(path.end() - 1) == '.' ? "" : ".";
+ for (Json::Value::Members::iterator it = members.begin();
+ it != members.end();
+ ++it) {
+ const JSONCPP_STRING name = *it;
+ printValueTree(fout, value[name], path + suffix + name);
+ }
+ } break;
+ default:
+ break;
+ }
+
+ if (value.hasComment(Json::commentAfter)) {
+ fprintf(fout, "%s\n", value.getComment(Json::commentAfter).c_str());
+ }
+}
+
+static int parseAndSaveValueTree(const JSONCPP_STRING& input,
+ const JSONCPP_STRING& actual,
+ const JSONCPP_STRING& kind,
+ const Json::Features& features,
+ bool parseOnly,
+ Json::Value* root)
+{
+ Json::Reader reader(features);
+ bool parsingSuccessful = reader.parse(input.data(), input.data() + input.size(), *root);
+ if (!parsingSuccessful) {
+ printf("Failed to parse %s file: \n%s\n",
+ kind.c_str(),
+ reader.getFormattedErrorMessages().c_str());
+ return 1;
+ }
+ if (!parseOnly) {
+ FILE* factual = fopen(actual.c_str(), "wt");
+ if (!factual) {
+ printf("Failed to create %s actual file.\n", kind.c_str());
+ return 2;
+ }
+ printValueTree(factual, *root);
+ fclose(factual);
+ }
+ return 0;
+}
+// static JSONCPP_STRING useFastWriter(Json::Value const& root) {
+// Json::FastWriter writer;
+// writer.enableYAMLCompatibility();
+// return writer.write(root);
+// }
+static JSONCPP_STRING useStyledWriter(
+ Json::Value const& root)
+{
+ Json::StyledWriter writer;
+ return writer.write(root);
+}
+static JSONCPP_STRING useStyledStreamWriter(
+ Json::Value const& root)
+{
+ Json::StyledStreamWriter writer;
+ JSONCPP_OSTRINGSTREAM sout;
+ writer.write(sout, root);
+ return sout.str();
+}
+static JSONCPP_STRING useBuiltStyledStreamWriter(
+ Json::Value const& root)
+{
+ Json::StreamWriterBuilder builder;
+ return Json::writeString(builder, root);
+}
+static int rewriteValueTree(
+ const JSONCPP_STRING& rewritePath,
+ const Json::Value& root,
+ Options::writeFuncType write,
+ JSONCPP_STRING* rewrite)
+{
+ *rewrite = write(root);
+ FILE* fout = fopen(rewritePath.c_str(), "wt");
+ if (!fout) {
+ printf("Failed to create rewrite file: %s\n", rewritePath.c_str());
+ return 2;
+ }
+ fprintf(fout, "%s\n", rewrite->c_str());
+ fclose(fout);
+ return 0;
+}
+
+static JSONCPP_STRING removeSuffix(const JSONCPP_STRING& path,
+ const JSONCPP_STRING& extension) {
+ if (extension.length() >= path.length())
+ return JSONCPP_STRING("");
+ JSONCPP_STRING suffix = path.substr(path.length() - extension.length());
+ if (suffix != extension)
+ return JSONCPP_STRING("");
+ return path.substr(0, path.length() - extension.length());
+}
+
+static void printConfig() {
+// Print the configuration used to compile JsonCpp
+#if defined(JSON_NO_INT64)
+ printf("JSON_NO_INT64=1\n");
+#else
+ printf("JSON_NO_INT64=0\n");
+#endif
+}
+
+static int printUsage(const char* argv[]) {
+ printf("Usage: %s [--strict] input-json-file", argv[0]);
+ return 3;
+}
+
+static int parseCommandLine(
+ int argc, const char* argv[], Options* opts)
+{
+ opts->parseOnly = false;
+ opts->write = &useStyledWriter;
+ if (argc < 2) {
+ return printUsage(argv);
+ }
+ int index = 1;
+ if (JSONCPP_STRING(argv[index]) == "--json-checker") {
+ opts->features = Json::Features::strictMode();
+ opts->parseOnly = true;
+ ++index;
+ }
+ if (JSONCPP_STRING(argv[index]) == "--json-config") {
+ printConfig();
+ return 3;
+ }
+ if (JSONCPP_STRING(argv[index]) == "--json-writer") {
+ ++index;
+ JSONCPP_STRING const writerName(argv[index++]);
+ if (writerName == "StyledWriter") {
+ opts->write = &useStyledWriter;
+ } else if (writerName == "StyledStreamWriter") {
+ opts->write = &useStyledStreamWriter;
+ } else if (writerName == "BuiltStyledStreamWriter") {
+ opts->write = &useBuiltStyledStreamWriter;
+ } else {
+ printf("Unknown '--json-writer %s'\n", writerName.c_str());
+ return 4;
+ }
+ }
+ if (index == argc || index + 1 < argc) {
+ return printUsage(argv);
+ }
+ opts->path = argv[index];
+ return 0;
+}
+static int runTest(Options const& opts)
+{
+ int exitCode = 0;
+
+ JSONCPP_STRING input = readInputTestFile(opts.path.c_str());
+ if (input.empty()) {
+ printf("Failed to read input or empty input: %s\n", opts.path.c_str());
+ return 3;
+ }
+
+ JSONCPP_STRING basePath = removeSuffix(opts.path, ".json");
+ if (!opts.parseOnly && basePath.empty()) {
+ printf("Bad input path. Path does not end with '.expected':\n%s\n",
+ opts.path.c_str());
+ return 3;
+ }
+
+ JSONCPP_STRING const actualPath = basePath + ".actual";
+ JSONCPP_STRING const rewritePath = basePath + ".rewrite";
+ JSONCPP_STRING const rewriteActualPath = basePath + ".actual-rewrite";
+
+ Json::Value root;
+ exitCode = parseAndSaveValueTree(
+ input, actualPath, "input",
+ opts.features, opts.parseOnly, &root);
+ if (exitCode || opts.parseOnly) {
+ return exitCode;
+ }
+ JSONCPP_STRING rewrite;
+ exitCode = rewriteValueTree(rewritePath, root, opts.write, &rewrite);
+ if (exitCode) {
+ return exitCode;
+ }
+ Json::Value rewriteRoot;
+ exitCode = parseAndSaveValueTree(
+ rewrite, rewriteActualPath, "rewrite",
+ opts.features, opts.parseOnly, &rewriteRoot);
+ if (exitCode) {
+ return exitCode;
+ }
+ return 0;
+}
+int main(int argc, const char* argv[]) {
+ Options opts;
+ try {
+ int exitCode = parseCommandLine(argc, argv, &opts);
+ if (exitCode != 0) {
+ printf("Failed to parse command-line.");
+ return exitCode;
+ }
+ return runTest(opts);
+ }
+ catch (const std::exception& e) {
+ printf("Unhandled exception:\n%s\n", e.what());
+ return 1;
+ }
+}
http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/f3f8f531/thirdparty/jsoncpp/src/jsontestrunner/sconscript
----------------------------------------------------------------------
diff --git a/thirdparty/jsoncpp/src/jsontestrunner/sconscript b/thirdparty/jsoncpp/src/jsontestrunner/sconscript
new file mode 100644
index 0000000..6e68e31
--- /dev/null
+++ b/thirdparty/jsoncpp/src/jsontestrunner/sconscript
@@ -0,0 +1,9 @@
+Import( 'env_testing buildJSONTests' )
+
+buildJSONTests( env_testing, Split( """
+ main.cpp
+ """ ),
+ 'jsontestrunner' )
+
+# For 'check' to work, 'libs' must be built first.
+env_testing.Depends('jsontestrunner', '#libs')