* patches to make rrdtool compile on win32 (trunk and 1.4)
authoroetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa>
Thu, 1 Jul 2010 20:49:42 +0000 (20:49 +0000)
committeroetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa>
Thu, 1 Jul 2010 20:49:42 +0000 (20:49 +0000)
* dotnet bindings (trunk)  by Euphoria Audio

git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@2095 a5681a0c-68f1-0310-ab6d-d61299d08faa

20 files changed:
NEWS
bindings/dotnet/Properties/AssemblyInfo.cs [new file with mode: 0644]
bindings/dotnet/dnrrd_binding_test.csproj [new file with mode: 0644]
bindings/dotnet/dnrrdlib.csproj [new file with mode: 0644]
bindings/dotnet/favicon.ico [new file with mode: 0644]
bindings/dotnet/rrd_binding_test.cs [new file with mode: 0644]
bindings/dotnet/rrdlib.cs [new file with mode: 0644]
bindings/dotnet/rrdlib.sln [new file with mode: 0644]
src/rrd.h
src/rrd_graph.h
src/rrd_rpncalc.c
src/rrd_tool.c
src/rrd_update.c
src/rrd_utils.c
win32/config.h
win32/rrd.sln
win32/rrd.vcproj
win32/rrd_config.h.msvc
win32/rrdlib.vcproj
win32/rrdtool.vcproj

diff --git a/NEWS b/NEWS
index 16742f2..f9a2468 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -21,10 +21,15 @@ RRDcached
 * New FETCH command allowing rrd_fetch to operate through the daemon and
   thus work remotely. By Florian Forster
 
+
 API
 ---
 * exported rrd_update_v_r for theadsave rrd_update calls
 
+Bindings
+--------
+* dotnet by Euphoria Audio  
+
 
 #####################################
 Major Changes between 1.3.x and 1.4.x
diff --git a/bindings/dotnet/Properties/AssemblyInfo.cs b/bindings/dotnet/Properties/AssemblyInfo.cs
new file mode 100644 (file)
index 0000000..3982939
--- /dev/null
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("rrdlib")]
+[assembly: AssemblyDescription(".NET bindings for rrdlib")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("Euphoria Audio, LLC")]
+[assembly: AssemblyProduct("RRDLib Dot Net Binding")]
+[assembly: AssemblyCopyright("Copyright © Chris Larsen 2010")]
+[assembly: AssemblyTrademark("rrdlib by Tobias Oetiker")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible 
+// to COM components.  If you need to access a type in this assembly from 
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("841fc684-688e-4f72-9e7e-1f367f53b227")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers 
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("0.9.1.5")]
+[assembly: AssemblyFileVersion("0.9.1.5")]
diff --git a/bindings/dotnet/dnrrd_binding_test.csproj b/bindings/dotnet/dnrrd_binding_test.csproj
new file mode 100644 (file)
index 0000000..5c8bdd0
--- /dev/null
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>9.0.21022</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{2BB82CAE-A379-46D9-B2B5-13DC4DB3209C}</ProjectGuid>
+    <OutputType>Exe</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>dnrrd_binding_test</RootNamespace>
+    <AssemblyName>dnrrd_binding_test</AssemblyName>
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+    <ApplicationIcon>favicon.ico</ApplicationIcon>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="System.Core">
+      <RequiredTargetFramework>3.5</RequiredTargetFramework>
+    </Reference>
+    <Reference Include="System.Xml.Linq">
+      <RequiredTargetFramework>3.5</RequiredTargetFramework>
+    </Reference>
+    <Reference Include="System.Data.DataSetExtensions">
+      <RequiredTargetFramework>3.5</RequiredTargetFramework>
+    </Reference>
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="rrd_binding_test.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="dnrrdlib.csproj">
+      <Project>{0688ED86-0E5F-4469-A7DB-D51024DE99E9}</Project>
+      <Name>dnrrdlib</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <ItemGroup>
+    <Content Include="favicon.ico" />
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>
\ No newline at end of file
diff --git a/bindings/dotnet/dnrrdlib.csproj b/bindings/dotnet/dnrrdlib.csproj
new file mode 100644 (file)
index 0000000..41efc81
--- /dev/null
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>9.0.21022</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{0688ED86-0E5F-4469-A7DB-D51024DE99E9}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>dnrrdlib</RootNamespace>
+    <AssemblyName>dnrrdlib</AssemblyName>
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+    <ApplicationIcon>favicon.ico</ApplicationIcon>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="System.Core">
+      <RequiredTargetFramework>3.5</RequiredTargetFramework>
+    </Reference>
+    <Reference Include="System.Xml.Linq">
+      <RequiredTargetFramework>3.5</RequiredTargetFramework>
+    </Reference>
+    <Reference Include="System.Data.DataSetExtensions">
+      <RequiredTargetFramework>3.5</RequiredTargetFramework>
+    </Reference>
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="rrdlib.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <Content Include="favicon.ico" />
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>
\ No newline at end of file
diff --git a/bindings/dotnet/favicon.ico b/bindings/dotnet/favicon.ico
new file mode 100644 (file)
index 0000000..886aa73
Binary files /dev/null and b/bindings/dotnet/favicon.ico differ
diff --git a/bindings/dotnet/rrd_binding_test.cs b/bindings/dotnet/rrd_binding_test.cs
new file mode 100644 (file)
index 0000000..c907e75
--- /dev/null
@@ -0,0 +1,370 @@
+/*****************************************************************************
+ * RRDLIB .NET Binding Test
+ *****************************************************************************
+ * Created 2010/06/29 by Chris Larsen
+ * 
+ * This project tests the .NET binding library by creating an rrd, inserting 
+ * data, fetching data, creating graphs, dumping and exporting the data to
+ * XML, then restoring from an XML file. The examples follow the tutorial 
+ * written by Alex van den Bogaerdt found at 
+ * http://oss.oetiker.ch/rrdtool/tut/rrdtutorial.en.html
+ ****************************************************************************/
+
+using System;
+using System.Collections;
+using System.Runtime.InteropServices;
+using dnrrdlib;
+
+namespace dnrrd_binding_test
+{
+    class rrd_binding_test
+    {
+        private static string path = "";
+
+        static void Main(string[] args)
+        {
+            Console.WriteLine("----- Starting Tests -----");
+            Console.WriteLine("RRDLib Version: " + rrd.Version());
+
+            Test_Create();
+            Test_Get_Info();
+            Test_Update();
+            Test_Fetch();
+            Test_Graph();
+            Test_Graph_Math();
+            Test_Graph_Math2();
+            Test_Graph_Math3();
+            Test_First_Last();
+            Test_Dump();
+            Test_Xport();
+            Test_Restore();
+            Test_Tune();
+            Console.WriteLine("\n!!!!!! Finished !!!!!!!");
+            string inp = Console.ReadLine();
+        }
+
+        static void Test_Create()
+        {
+            // create
+            ArrayList al = new ArrayList();
+            al.Add("DS:speed:COUNTER:600:U:U");
+            al.Add("RRA:AVERAGE:0.5:1:24");
+            al.Add("RRA:AVERAGE:0.5:6:10");
+
+            int ret = rrd.Create(path + "test_a.rrd", 300, 920804400, (string[])al.ToArray(typeof(string)));
+            if (ret < 0)
+                Console.WriteLine("Error: " + rrd.Get_Error());
+            else
+                Console.WriteLine("Test create: Successful!");
+        }
+        static void Test_Get_Info()
+        {
+            Console.WriteLine("Try getting info...");
+            rrd_info_t? info = rrd.Info(path + "test_a.rrd");
+            if (info == null)
+            {
+                Console.WriteLine("Error: " + rrd.Get_Error());
+                return;
+            }
+            while (info != null)
+            {
+                //info = (rrd_info_t)Marshal.PtrToStructure(info.next, typeof(rrd_info_t));
+                Console.Write(((rrd_info_t)info).key + ": ");
+                switch (((rrd_info_t)info).type)
+                {
+                    case rrd_info_type_t.RD_I_STR:
+                        Console.WriteLine("\"" + Marshal.PtrToStringAnsi(((rrd_info_t)info).value.u_str) + "\"");
+                        break;
+                    case rrd_info_type_t.RD_I_INT:
+                        Console.WriteLine(((rrd_info_t)info).value.u_int);
+                        break;
+                    case rrd_info_type_t.RD_I_CNT:
+                        Console.WriteLine(((rrd_info_t)info).value.u_cnt);
+                        break;
+                    case rrd_info_type_t.RD_I_VAL:
+                        Console.WriteLine(((rrd_info_t)info).value.u_val);
+                        break;
+                    case rrd_info_type_t.RD_I_BLO:
+                        Console.WriteLine(" ** BLOB ** ");
+                        break;
+                    default:
+                        Console.WriteLine("**** Unknown type! ****");
+                        break;
+                }
+
+                if (((rrd_info_t)info).next != IntPtr.Zero && (int)((rrd_info_t)info).next > 0)
+                    info = (rrd_info_t)Marshal.PtrToStructure(((rrd_info_t)info).next, typeof(rrd_info_t));
+                else
+                    info = null;
+            }
+            Console.WriteLine("Test Info: Successful!");
+            //Console.WriteLine("Printing information...");
+            //Info_Print(((rrd_info_t)info));
+        }
+        static void Test_Update()
+        {
+            Console.WriteLine("Updating RRD...");
+            ArrayList al = new ArrayList();
+
+            // set to false if you want to use random values
+            if (true)
+            {
+                al.Add("920804700:12345");
+                al.Add("920805000:12357");
+                al.Add("920805300:12363");
+                al.Add("920805600:12363");
+                al.Add("920805900:12363");
+                al.Add("920806200:12373");
+                al.Add("920806500:12383");
+                al.Add("920806800:12393");
+                al.Add("920807100:12399");
+                al.Add("920807400:12405");
+                al.Add("920807700:12411");
+                al.Add("920808000:12415");
+                al.Add("920808300:12420");
+                al.Add("920808600:12422");
+                al.Add("920808900:12423");
+            }
+            else
+            {
+                UInt32 ts = 920804700;
+                for (int i = 0; i < 15; i++)
+                {
+                    al.Add(ts.ToString() + ":" + rrd.Random());
+                    ts += 300;
+                }
+            }
+            int ret = rrd.Update(path + "test_a.rrd", null, (string[])al.ToArray(typeof(string)));
+            if (ret < 0)
+                Console.WriteLine("Error: " + rrd.Get_Error());
+            else
+                Console.WriteLine("Test update: Successful!");
+        }
+        static void Test_Fetch()
+        {
+            // FETCH
+            Console.WriteLine("Attempting Fetch...");
+            ArrayList al = new ArrayList();
+            al.Add("fetch");
+            al.Add(path + "test_a.rrd");
+            al.Add("AVERAGE");
+            al.Add("--start");
+            al.Add("920804400");
+            al.Add("--end");
+            al.Add("920809200");
+            IntPtr data = new IntPtr();
+            string[] rrds = new string[0];
+            Int32 start = 0;
+            Int32 end = 0;
+            UInt32 step = 0;
+            UInt32 dscnt = 0;
+            int ret = rrd.Fetch((string[])al.ToArray(typeof(string)), ref start, ref end,
+                ref step, ref dscnt, ref rrds, ref data);
+
+            if (end > start)
+            {
+                for (Int32 ti = start + (Int32)step; ti <= end; ti += (Int32)step)
+                {
+                    Console.Write(ti + ": ");
+                    for (Int32 i = 0; i < (Int32)dscnt; i++)
+                    {
+                        Console.Write(((double)Marshal.PtrToStructure(data, typeof(double))).ToString(" 0.0000000000e+00"));
+                        data = new IntPtr(data.ToInt64() + sizeof(double));
+                    }
+                    Console.Write(Environment.NewLine);
+                }
+            }
+
+            if (ret < 0)
+                Console.WriteLine("Error: " + rrd.Get_Error());
+            else
+                Console.WriteLine("Test fetch: Successful!");
+        }
+        static void Test_Graph()
+        {
+            Console.WriteLine("Creating graph...");
+            ArrayList al = new ArrayList();
+            al.Add("graph");
+            al.Add(path + "graph_simple.png");
+            al.Add("--start");
+            al.Add("920804400");
+            al.Add("--end");
+            al.Add("920808000");
+            al.Add("DEF:myspeed=" + path.Replace(":", "\\:") + "test_a.rrd:speed:AVERAGE");
+            al.Add("LINE2:myspeed#00004D");
+            int ret = rrd.Graph((string[])al.ToArray(typeof(string)));
+            if (ret < 0)
+                Console.WriteLine("Error: " + rrd.Get_Error());
+            else
+                Console.WriteLine("Test graph: Successful!");
+        }
+        static void Test_Graph_Math()
+        {
+            Console.WriteLine("Creating graph...");
+            ArrayList al = new ArrayList();
+            al.Add("graph");
+            al.Add(path + "graph_math.png");
+            al.Add("--start");
+            al.Add("920804400");
+            al.Add("--end");
+            al.Add("920808000");
+            al.Add("--vertical-label");
+            al.Add("m/s");
+            al.Add("DEF:myspeed=" + path.Replace(":", "\\:") + "test_a.rrd:speed:AVERAGE");
+            al.Add("CDEF:realspeed=myspeed,1000,*");
+            al.Add("LINE2:realspeed#00004D");
+            int ret = rrd.Graph((string[])al.ToArray(typeof(string)));
+            if (ret < 0)
+                Console.WriteLine("Error: " + rrd.Get_Error());
+            else
+                Console.WriteLine("Test graph: Successful!");
+        }
+        static void Test_Graph_Math2()
+        {
+            Console.WriteLine("Creating graph...");
+            ArrayList al = new ArrayList();
+            al.Add("graph");
+            al.Add(path + "graph_math2.png");
+            al.Add("--start");
+            al.Add("920804400");
+            al.Add("--end");
+            al.Add("920808000");
+            al.Add("--vertical-label");
+            al.Add("m/s");
+            al.Add("DEF:myspeed=" + path.Replace(":", "\\:") + "test_a.rrd:speed:AVERAGE");
+            al.Add("CDEF:kmh=myspeed,3600,*");
+            al.Add("CDEF:fast=kmh,100,GT,kmh,0,IF");
+            al.Add("CDEF:good=kmh,100,GT,0,kmh,IF");
+            al.Add("HRULE:100#0000FF:\"Maximum allowed\"");
+            al.Add("AREA:good#00FF00:\"Good speed\"");
+            al.Add("AREA:fast#FF0000:\"Too fast\"");
+            int ret = rrd.Graph((string[])al.ToArray(typeof(string)));
+            if (ret < 0)
+                Console.WriteLine("Error: " + rrd.Get_Error());
+            else
+                Console.WriteLine("Test graph: Successful!");
+        }
+        static void Test_Graph_Math3()
+        {
+            Console.WriteLine("Creating graph...");
+            ArrayList al = new ArrayList();
+            al.Add("graph");
+            al.Add(path + "graph_math3.png");
+            al.Add("--start");
+            al.Add("920804400");
+            al.Add("--end");
+            al.Add("920808000");
+            al.Add("--vertical-label");
+            al.Add("m/s");
+            al.Add("DEF:myspeed=" + path.Replace(":", "\\:") + "test_a.rrd:speed:AVERAGE");
+            al.Add("CDEF:nonans=myspeed,UN,0,myspeed,IF");
+            al.Add("CDEF:kmh=nonans,3600,*");
+            al.Add("CDEF:fast=kmh,100,GT,100,0,IF");
+            al.Add("CDEF:over=kmh,100,GT,kmh,100,-,0,IF");
+            al.Add("CDEF:good=kmh,100,GT,0,kmh,IF");
+            al.Add("HRULE:100#0000FF:\"Maximum allowed\"");
+            al.Add("AREA:good#00FF00:\"Good speed\"");
+            al.Add("AREA:fast#550000:\"Too fast\"");
+            al.Add("STACK:over#FF0000:\"Over speed\"");
+            int ret = rrd.Graph((string[])al.ToArray(typeof(string)));
+            if (ret < 0)
+                Console.WriteLine("Error: " + rrd.Get_Error());
+            else
+                Console.WriteLine("Test graph: Successful!");
+        }
+        static void Test_First_Last()
+        {
+            Console.WriteLine("Testing values...");
+            Console.WriteLine("First Value: " + rrd.First(path + "test_a.rrd", 0));
+            string err = rrd.Get_Error();
+            if (err.Length > 1)
+                Console.WriteLine("Error: " + err);
+            Console.WriteLine("Last Value: " + rrd.Last(path + "test_a.rrd", 0));
+            err = rrd.Get_Error();
+            if (err.Length > 1)
+                Console.WriteLine("Error: " + err);
+
+            Int32 last_update = 0;
+            UInt32 ds_count = 0;
+            string[] ds_names = new string[0];
+            string[] last_ds = new string[0];
+            rrd.Last_Update(path + "test_a.rrd", ref last_update, ref ds_count, ref ds_names, ref last_ds);
+            Console.WriteLine("Last Update: " + last_update);
+            Console.WriteLine("Value testing successful!");
+        }
+        static void Test_Dump()
+        {
+            Console.WriteLine("Dumping RRD...");
+            int ret = rrd.Dump(path + "test_a.rrd", path + "test_a.xml");
+            if (ret < 0)
+                Console.WriteLine("Error: " + rrd.Get_Error());
+            else
+                Console.WriteLine("Test Dump: Successful!");
+        }
+        static void Test_Xport()
+        {
+            Console.WriteLine("Exporting RRD...");
+            ArrayList al = new ArrayList();
+            al.Add("xport");
+            al.Add("--start");
+            al.Add("920804400");
+            al.Add("--end");
+            al.Add("920808000");
+            al.Add("DEF:myspeed=" + path.Replace(":", "\\:") + "test_a.rrd:speed:AVERAGE");
+            al.Add("XPORT:myspeed:\"MySpeed\"");
+            IntPtr data = new IntPtr();
+            string[] legends = new string[0];
+            Int32 start = 0;
+            Int32 end = 0;
+            UInt32 step = 0;
+            UInt32 col_cnt = 0;
+            int ret = rrd.Xport((string[])al.ToArray(typeof(string)), ref start, ref end,
+                ref step, ref col_cnt, ref legends, ref data);
+
+            if (end > start)
+            {
+                for (Int32 ti = start + (Int32)step; ti <= end; ti += (Int32)step)
+                {
+                    Console.Write(ti + ": ");
+                    for (Int32 i = 0; i < (Int32)col_cnt; i++)
+                    {
+                        Console.Write(((double)Marshal.PtrToStructure(data, typeof(double))).ToString(" 0.0000000000e+00"));
+                        data = new IntPtr(data.ToInt64() + sizeof(double));
+                    }
+                    Console.Write(Environment.NewLine);
+                }
+            }
+            if (ret < 0)
+                Console.WriteLine("Error: " + rrd.Get_Error());
+            else
+                Console.WriteLine("Test xport: Successful!");
+        }
+        static void Test_Restore()
+        {
+            Console.WriteLine("Restoring RRD...");
+            ArrayList al = new ArrayList();
+            al.Add("restore");
+            al.Add(path + "test_a.xml");
+            al.Add(path + "restored_a.rrd");
+            int ret = rrd.Restore((string[])al.ToArray(typeof(string)));
+            if (ret < 0)
+                Console.WriteLine("Error: " + rrd.Get_Error());
+            else
+                Console.WriteLine("Test restore: Successful!");
+        }
+        static void Test_Tune()
+        {
+            Console.WriteLine("Tuning RRD...");
+            ArrayList al = new ArrayList();
+            al.Add("tune");
+            al.Add(path + "restored_a.rrd");
+            al.Add("-h");
+            al.Add("speed:650");
+            int ret = rrd.Tune((string[])al.ToArray(typeof(string)));
+            if (ret < 0)
+                Console.WriteLine("Error: " + rrd.Get_Error());
+            else
+                Console.WriteLine("Test tune: Successful!");
+        }
+    }
+}
diff --git a/bindings/dotnet/rrdlib.cs b/bindings/dotnet/rrdlib.cs
new file mode 100644 (file)
index 0000000..d6f9079
--- /dev/null
@@ -0,0 +1,407 @@
+/*****************************************************************************
+ * RRDLIB .NET Binding
+ *****************************************************************************
+ * Created 2010/06/29 by Chris Larsen
+ * 
+ * This .NET interface allows the use of Tobias Oetiker's awesome RRDtool 
+ * functions in .NET projects using the PInvoke method to load the rrdlib.dll
+ * To use, please make sure that you place the rrdlib.dll in the same 
+ * directory as this dll, or change the "const string dll" to point to the
+ * proper location. For documentation, please see the RRDtool website at:
+ * http://oss.oetiker.ch/rrdtool/
+ * For useage examples, please see the rrd_binding_test project.
+ ****************************************************************************/
+using System;
+using System.Runtime.InteropServices;
+
+/// <summary>
+/// Contains data structures and methods for working with round robin databases.
+/// </summary>
+namespace dnrrdlib
+{
+    /// <summary>
+    /// Information about a particular RRD parameter. The key is the name of the parameter,
+    /// type determines what kind of value we have, value is the value, and next is a 
+    /// pointer to another info object.
+    /// </summary>
+    [StructLayout(LayoutKind.Explicit, Pack = 1)]
+    public struct rrd_info_t
+    {
+        [FieldOffset(0), MarshalAs(UnmanagedType.LPStr)]
+        public string key;
+        [FieldOffset(4)]    // for 64 bit, set this to 8 and increment everyone else by 4
+        public rrd_info_type_t type;
+        [FieldOffset(8)]
+        public rrd_infoval_t value;
+        [FieldOffset(16)]
+        public IntPtr next;
+    }
+
+    /// <summary>
+    /// This is a chunk of data returned from an RRD object
+    /// </summary>
+    [StructLayout(LayoutKind.Sequential)]
+    public struct rrd_blob_t
+    {
+        public UInt32 size;     /* size of the blob */
+        public IntPtr ptr;    /* pointer */
+    };
+
+    /// <summary>
+    /// This contains the actual data values for an rrd_info_t structure. 
+    /// NOTE: Only one of these will be valid per instance. Use the containing info_t's
+    /// type field to deteremine which of these to read. 
+    /// NOTE: If the type is RD_I_STR, you have to marshal the string value yourself
+    /// </summary>
+    [StructLayout(LayoutKind.Explicit)]
+    public struct rrd_infoval_t
+    {
+        [FieldOffset(0)]
+        public UInt32 u_cnt;
+        [FieldOffset(0)]
+        public double u_val;
+        [FieldOffset(0)]
+        public IntPtr u_str;
+        [FieldOffset(0)]
+        public Int32 u_int;
+        [FieldOffset(0)]
+        public rrd_blob_t u_blo;
+    };
+
+    /// <summary>
+    /// Different rrd_info_t value types
+    /// </summary>
+    public enum rrd_info_type_t
+    {
+        RD_I_VAL = 0,
+        RD_I_CNT,
+        RD_I_STR,
+        RD_I_INT,
+        RD_I_BLO
+    };
+
+    /// <summary>
+    /// Direct bindings to the RRD Library for .NET applications. Uses the PInvoke method
+    /// of accessing the rrdlib.dll file.
+    /// </summary>
+    public class rrd
+    {
+        // Set this path to the location of your "rrdlib.dll" file
+        const string dll = @"rrdlib.dll";
+
+        // IMPORTS - Main methods
+        [DllImport(dll)] static extern Int32 rrd_create(Int32 argc, string[] argv);
+        [DllImport(dll)] static extern Int32 rrd_create_r([MarshalAs(UnmanagedType.LPStr)] string filename, 
+            UInt32 pdp_step, Int32 last_up, Int32 argc, [MarshalAs(UnmanagedType.LPArray)] string[] argv);
+        [DllImport(dll)] static extern IntPtr rrd_info_r(string filename);
+        [DllImport(dll)] static extern void rrd_info_print(IntPtr data);
+        [DllImport(dll)] static extern Int32 rrd_update(Int32 argc, string[] argv);
+        [DllImport(dll)] static extern IntPtr rrd_update_v(Int32 argc, string[] argv);
+        [DllImport(dll)] static extern Int32 rrd_update_r(string filename, string template, Int32 argc,
+            string[] argv);
+        /* Do not use this until someone adds the FILE structure */
+        [DllImport(dll)] static extern Int32 rrd_graph(Int32 argc, string[] argv, ref string[] prdata,
+            ref Int32 xsize, ref Int32 ysize, /* TODO - FILE, */ ref double ymin, ref double ymax);
+        [DllImport(dll)] static extern Int32 rrd_graph_v(Int32 argc, string[] argv);
+        [DllImport(dll)] static extern Int32 rrd_fetch(Int32 argc, string[] argv, ref Int32 start,
+            ref Int32 end, ref UInt32 step, ref UInt32 ds_cnt, ref string[] ds_namv, ref IntPtr data);
+        [DllImport(dll)] static extern Int32 rrd_first(Int32 argc, string[] argv);
+        [DllImport(dll)] static extern Int32 rrd_first_r(string filename, Int32 rraindex);
+        [DllImport(dll)] static extern Int32 rrd_last(Int32 argc, string[] argv);
+        [DllImport(dll)] static extern Int32 rrd_last_r(string filename, Int32 rraindex);
+        [DllImport(dll)] static extern Int32 rrd_lastupdate(Int32 argc, string[] argv);
+        [DllImport(dll)] static extern Int32 rrd_lastupdate_r(string filename, ref Int32 ret_last_update,
+            ref UInt32 ret_ds_count, ref string[] ret_ds_names, ref string[] ret_last_ds);
+        [DllImport(dll)] static extern Int32 rrd_dump(Int32 argc, string[] argv);
+        [DllImport(dll)] static extern Int32 rrd_dump_r(string filename, string outname);
+        [DllImport(dll)] static extern Int32 rrd_xport(Int32 argc, string[] argv, Int32 unused,
+            ref Int32 start, ref Int32 end, ref UInt32 step, ref UInt32 col_cnt,
+            ref string[] leggend_v, ref IntPtr data);
+        [DllImport(dll)] static extern Int32 rrd_restore(Int32 argc, string[] argv);
+        [DllImport(dll)] static extern Int32 rrd_resize(Int32 argc, string[] argv);
+        [DllImport(dll)] static extern Int32 rrd_tune(Int32 argc, string[] argv);
+
+        // IMPORTS - Utility methods
+        [DllImport(dll)] static extern string rrd_strversion();
+        [DllImport(dll)] static extern Int32 rrd_random();
+        [DllImport(dll)] static extern string rrd_get_error();
+
+        // MAIN FUNCTIONS
+
+        /// <summary>
+        /// The create function of RRDtool lets you set up new Round Robin Database (RRD) files. 
+        /// The file is created at its final, full size and filled with *UNKNOWN* data.
+        /// </summary>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static int Create(string[] argv)
+        {
+            return rrd_create(argv.GetUpperBound(0) + 1, argv);
+        }
+
+        /// <summary>
+        /// The create function of RRDtool lets you set up new Round Robin Database (RRD) files. 
+        /// The file is created at its final, full size and filled with *UNKNOWN* data.
+        /// </summary>
+        /// <param name="filename">A full path to the location where you want the rrd to reside</param>
+        /// <param name="pdp_step">Specifies the base interval in seconds with which data will be fed into the RRD</param>
+        /// <param name="last_up">Timestamp of the last update</param>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static int Create(string filename, UInt32 pdp_step, Int32 last_up, string[] argv)
+        {
+            return rrd_create_r(filename, pdp_step, last_up, argv.GetUpperBound(0)+1, argv);
+        }
+
+        /// <summary>
+        /// Returns a linked list of rrd_info_t objects that describe the rrd file. 
+        /// </summary>
+        /// <param name="filename">Full path to the rrd file</param>
+        /// <returns>An rrd_info_t object</returns>
+        public static rrd_info_t Info(string filename)
+        {
+            if (filename.Length < 1)
+                throw new Exception("Empty filename");
+            IntPtr ptr = rrd_info_r(filename);
+            if (ptr == IntPtr.Zero || (int)ptr < 1)
+                throw new Exception("Unable to extract information from rrd");
+            return (rrd_info_t)Marshal.PtrToStructure(ptr, typeof(rrd_info_t));
+        }
+
+        /// <summary>
+        /// The update function feeds new data values into an RRD. The data is time aligned (interpolated) 
+        /// according to the properties of the RRD to which the data is written.
+        /// </summary>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static Int32 Update(string[] argv)
+        {
+            return rrd_update(argv.GetUpperBound(0) + 1, argv);
+        }
+
+        /// <summary>
+        /// The update function feeds new data values into an RRD. The data is time aligned (interpolated) 
+        /// according to the properties of the RRD to which the data is written.
+        /// </summary>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>An rrd_info_t pointer with information about the update</returns>
+        public static IntPtr Update2(string[] argv)
+        {
+            return rrd_update_v(argv.GetUpperBound(0) + 1, argv);
+        }
+
+        /// <summary>
+        /// The update function feeds new data values into an RRD. The data is time aligned (interpolated) 
+        /// according to the properties of the RRD to which the data is written.
+        /// </summary>
+        /// <param name="filename">Full path to the rrd to update</param>
+        /// <param name="template">List of data sources to update and in which order</param>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static Int32 Update(string filename, string template, string[] argv)
+        {
+            return rrd_update_r(filename, template, argv.GetUpperBound(0)+1, argv);
+        }
+
+        /// <summary>
+        /// Generate a graph from an RRD file. Specify all the graph options in the string array as you
+        /// normally would with the command line version.
+        /// </summary>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static Int32 Graph(string[] argv)
+        {
+            return rrd_graph_v(argv.GetUpperBound(0) + 1, argv);
+        }
+
+        /// <summary>
+        /// Returns an array of values for the period specified from a given rrd.
+        /// Specify your parameters in the argv array and check the referenced parameters for
+        /// values returned from the rrd
+        /// </summary>
+        /// <param name="argv">String array of command line arguments (must include the filename)</param>
+        /// <param name="start">Starting timestamp found in the rrd</param>
+        /// <param name="end">Ending timestamp found in the rrd</param>
+        /// <param name="step">The rrd's step value</param>
+        /// <param name="ds_cnt">Number of data sources found</param>
+        /// <param name="ds_namv">Names of data sources found</param>
+        /// <param name="data">Values found (in double type)</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static Int32 Fetch(string[] argv, ref Int32 start, ref Int32 end, ref UInt32 step,
+            ref UInt32 ds_cnt, ref string[] ds_namv, ref IntPtr data)
+        {
+            return rrd_fetch(argv.GetUpperBound(0) + 1, argv, ref start, ref end, ref step, ref ds_cnt,
+                ref ds_namv, ref data);
+        }
+
+        /// <summary>
+        /// Returns the timestamp of the first value in the rrd given the rra index 
+        /// </summary>
+        /// <param name="filename">Full path to the rrd file</param>
+        /// <param name="rraindex">0 based index of the rra to get a value for</param>
+        /// <returns>Unix timestamp if successful, -1 if an error occurred</returns>
+        public static Int32 First(string filename, int rraindex)
+        {
+            return rrd_first_r(filename, rraindex);
+        }
+
+        /// <summary>
+        /// Returns the timestamp of the first value in the rrd
+        /// </summary>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>Unix timestamp if successful, -1 if an error occurred</returns>
+        public static Int32 First(string[] argv)
+        {
+            return rrd_first(argv.GetUpperBound(0) + 1, argv);
+        }
+
+        /// <summary>
+        /// Returns the timestamp of the last value in the rrd given the rra index
+        /// </summary>
+        /// <param name="filename"></param>
+        /// <param name="filename">Full path to the rrd file</param>
+        /// <param name="rraindex">0 based index of the rra to get a value for</param>
+        /// <returns>Unix timestamp if successful, -1 if an error occurred</returns>
+        public static Int32 Last(string filename, int rraindex)
+        {
+            return rrd_last_r(filename, rraindex);
+        }
+
+        /// <summary>
+        /// Returns the timestamp of the last value in the rrd
+        /// </summary>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>Unix timestamp if successful, -1 if an error occurred</returns>
+        public static Int32 Last(string[] argv)
+        {
+            return rrd_last(argv.GetUpperBound(0) + 1, argv);
+        }
+
+        /// <summary>
+        /// Finds the timestamp of the last updated value in the rrd
+        /// </summary>
+        /// <param name="filename">Full path to the rrd file</param>
+        /// <param name="ret_last_update">Unix timestamp of the last update</param>
+        /// <param name="ret_ds_count">Number of data sources found</param>
+        /// <param name="ret_ds_names">Names of the data sources found</param>
+        /// <param name="ret_last_ds">Name of the last data source found</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static Int32 Last_Update(string filename, ref Int32 ret_last_update, ref UInt32 ret_ds_count,
+            ref string[] ret_ds_names, ref string[] ret_last_ds)
+        {
+            return rrd_lastupdate_r(filename, ref ret_last_update, ref ret_ds_count, ref ret_ds_names,
+                ref ret_last_ds);
+        }
+
+        /// <summary>
+        /// Writes the contents of an rrd file to an XML file
+        /// </summary>
+        /// <param name="filename">Full path to the rrd file</param>
+        /// <param name="outname">Full path to write the XML output</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static Int32 Dump(string filename, string outname)
+        {
+            return rrd_dump_r(filename, outname);
+        }
+
+        /// <summary>
+        /// Writes the contents of an rrd file to an XML file
+        /// </summary>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static Int32 Dump(string[] argv)
+        {
+            return rrd_dump(argv.GetUpperBound(0) + 1, argv);
+        }
+
+        /// <summary>
+        /// Grabs the values from an rrd. Similar to fetch but enables merging of multiple
+        /// rrds and calculations
+        /// </summary>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <param name="start">Starting timestamp found in the rrd</param>
+        /// <param name="end">Ending timestamp found in the rrd</param>
+        /// <param name="step">Step size found in the rrd</param>
+        /// <param name="col_cnt">Number of data sources found in the rrd</param>
+        /// <param name="leggend_v">Add a legend</param>
+        /// <param name="data">Values from the rrd as double type</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static Int32 Xport(string[] argv, ref Int32 start, ref Int32 end, ref UInt32 step,
+            ref UInt32 col_cnt, ref string[] leggend_v, ref IntPtr data)
+        {
+            return rrd_xport(argv.GetUpperBound(0) + 1, argv, 0, ref start, ref end, ref step, ref col_cnt,
+                ref leggend_v, ref data);
+        }
+
+        /// <summary>
+        /// Creates an rrd from an XML data dump
+        /// </summary>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static Int32 Restore(string[] argv)
+        {
+            return rrd_restore(argv.GetUpperBound(0) + 1, argv);
+        }
+
+        /// <summary>
+        /// Alters the size of an RRA and creates a new rrd in the dll's directory
+        /// NOTE: The new rrd may return unexpected results if you are not very careful
+        /// NOTE: This may crash in version 1.4.3
+        /// </summary>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static Int32 Resize(string[] argv)
+        {
+            return rrd_resize(argv.GetUpperBound(0) + 1, argv);
+        }
+
+        /// <summary>
+        /// Modify the characteristics of an rrd
+        /// </summary>
+        /// <param name="argv">String array of command line arguments</param>
+        /// <returns>0 if successful, -1 if an error occurred</returns>
+        public static Int32 Tune(string[] argv)
+        {
+            return rrd_tune(argv.GetUpperBound(0) + 1, argv);
+        }
+
+        // UTILITIES
+        /// <summary>
+        /// Returns a string with the numeric version of the rrdlib build version
+        /// </summary>
+        /// <returns>A string with version information</returns>
+        public static string Version()
+        {
+            return rrd_strversion();
+        }
+
+        /// <summary>
+        /// Generates a random number for testing rrdlib
+        /// </summary>
+        /// <returns>A random integer</returns>
+        public static int Random()
+        {
+            return rrd_random();
+        }
+
+        /// <summary>
+        /// Returns the latest error from rrdlib
+        /// </summary>
+        /// <returns>A string with the error message, or an emtpy string if no error occurred</returns>
+        public static string Get_Error()
+        {
+            return rrd_get_error();
+        }
+
+        /// <summary>
+        /// Formats and prints information in the object to the standard output
+        /// </summary>
+        /// <param name="info">rrd_info_t object with data to print</param>
+        public static void Info_Print(rrd_info_t info)
+        {
+            IntPtr newptr = Marshal.AllocHGlobal(Marshal.SizeOf(info));
+            Marshal.StructureToPtr(info, newptr, true);
+            rrd_info_print(newptr);
+        }
+    }
+}
diff --git a/bindings/dotnet/rrdlib.sln b/bindings/dotnet/rrdlib.sln
new file mode 100644 (file)
index 0000000..4ae8ffe
--- /dev/null
@@ -0,0 +1,26 @@
+
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "dnrrdlib", "dnrrdlib.csproj", "{0688ED86-0E5F-4469-A7DB-D51024DE99E9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "dnrrd_binding_test", "dnrrd_binding_test.csproj", "{2BB82CAE-A379-46D9-B2B5-13DC4DB3209C}"
+EndProject
+Global
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution
+               Debug|Any CPU = Debug|Any CPU
+               Release|Any CPU = Release|Any CPU
+       EndGlobalSection
+       GlobalSection(ProjectConfigurationPlatforms) = postSolution
+               {0688ED86-0E5F-4469-A7DB-D51024DE99E9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {0688ED86-0E5F-4469-A7DB-D51024DE99E9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {0688ED86-0E5F-4469-A7DB-D51024DE99E9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {0688ED86-0E5F-4469-A7DB-D51024DE99E9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2BB82CAE-A379-46D9-B2B5-13DC4DB3209C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2BB82CAE-A379-46D9-B2B5-13DC4DB3209C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2BB82CAE-A379-46D9-B2B5-13DC4DB3209C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2BB82CAE-A379-46D9-B2B5-13DC4DB3209C}.Release|Any CPU.Build.0 = Release|Any CPU
+       EndGlobalSection
+       GlobalSection(SolutionProperties) = preSolution
+               HideSolutionNode = FALSE
+       EndGlobalSection
+EndGlobal
index 91bf660..fa02952 100644 (file)
--- a/src/rrd.h
+++ b/src/rrd.h
@@ -57,6 +57,10 @@ extern    "C" {
 #ifndef WIN32
 #include <unistd.h>     /* for off_t */
 #else
+#ifdef _MSC_VER
+       typedef int mode_t;
+       #define strtoll _strtoi64 
+#endif
        typedef size_t ssize_t;
        typedef long off_t;
 #endif 
index 0415815..5c97b80 100644 (file)
@@ -7,7 +7,11 @@
 
 /* this may configure __EXTENSIONS__ without which pango will fail to compile
    so load this early */
+#ifdef HAVE_CONFIG_H
 #include "../rrd_config.h"
+#elif defined(_WIN32) && !defined(__CYGWIN__) && !defined(__CYGWIN32__)
+#include "../win32/config.h"
+#endif
 
 #include <cairo.h>
 #include <cairo-pdf.h>
index dca2ae1..b563db4 100644 (file)
@@ -77,7 +77,7 @@ rpnp_t   *rpn_expand(
         return NULL;
     }
     for (i = 0; rpnc[i].op != OP_END; ++i) {
-        rpnp[i].op = rpnc[i].op;
+        rpnp[i].op = (op_en)rpnc[i].op;
         if (rpnp[i].op == OP_NUMBER) {
             rpnp[i].val = (double) rpnc[i].val;
         } else if (rpnp[i].op == OP_VARIABLE || rpnp[i].op == OP_PREV_OTHER) {
index d860abe..5c717f9 100644 (file)
@@ -815,8 +815,10 @@ int HandleInputLine(
 
     } else if (strcmp("tune", argv[1]) == 0)
         rrd_tune(argc - 1, &argv[1]);
+#ifndef WIN32
     else if (strcmp("flushcached", argv[1]) == 0)
         rrd_flushcached(argc - 1, &argv[1]);
+#endif
     else {
         rrd_set_error("unknown function '%s'", argv[1]);
     }
index 1101627..e4252db 100644 (file)
@@ -1558,7 +1558,7 @@ static int update_cdp_prep(
             if (elapsed_pdp_st > 2) {
                 reset_cdp(rrd, elapsed_pdp_st, pdp_temp, last_seasonal_coef,
                           seasonal_coef, rra_idx, ds_idx, cdp_idx,
-                          current_cf);
+                          (cf_en)current_cf);
             }
         }
 
index 6853c66..3c4930f 100644 (file)
 
 #include <assert.h>
 #include <errno.h>
-#include <libgen.h>
 #include <stdlib.h>
 #include <string.h>
 #include <sys/types.h>
 #include <sys/stat.h>
+#ifndef _MSC_VER
+#include <libgen.h>
 #include <unistd.h>
-
+#endif
 #ifdef WIN32
 #      define random() rand()
 #      define srandom(x) srand(x)
 #      define getpid() 0
 #endif /* WIN32 */
 
+#ifndef S_ISDIR
+#define S_ISDIR(x) (((x) & S_IFMT) == S_IFDIR)
+#endif
+
 /* make sure that the random number generator seeded EXACTLY ONCE */
 long rrd_random(void)
 {
@@ -171,7 +176,11 @@ int rrd_mkdir_p(const char *pathname, mode_t mode)
     if (NULL == (pathname_copy = strdup(pathname)))
         return -1;
 
+#ifndef _MSC_VER
     base_dir = dirname(pathname_copy);
+#else
+       _splitpath(pathname_copy, NULL, base_dir, NULL, NULL);
+#endif
 
     if (0 != rrd_mkdir_p(base_dir, mode)) {
         int orig_errno = errno;
@@ -183,8 +192,13 @@ int rrd_mkdir_p(const char *pathname, mode_t mode)
     free(pathname_copy);
 
     /* keep errno as set by mkdir() */
+#ifdef _MSC_VER
+       if (0 != mkdir(pathname))
+        return -1;
+#else
     if (0 != mkdir(pathname, mode))
         return -1;
+#endif
     return 0;
 } /* rrd_mkdir_p */
 
index 6199234..7855b2d 100644 (file)
@@ -5,6 +5,7 @@
 #include <math.h>
 #include <float.h>
 #include <direct.h>
+#include <ctype.h>
 
 /* realloc does not support NULL as argument */
 
@@ -28,9 +29,9 @@
 /* Define to 1 if you have the ANSI C header files. */
 #define STDC_HEADERS 1
 
-#define NUMVERS 1.3020
+#define NUMVERS 1.4030
 #define PACKAGE_NAME "rrdtool"
-#define PACKAGE_VERSION "1.3.2"
+#define PACKAGE_VERSION "1.4.3"
 #define PACKAGE_STRING PACKAGE_NAME " " PACKAGE_VERSION
 
 #define isinf(a) (_fpclass(a) == _FPCLASS_NINF || _fpclass(a) == _FPCLASS_PINF)
@@ -54,4 +55,6 @@
 
 /* #define DEBUG 1 */
 
+__inline int round(double a){int x = (a + 0.5); return x;}
+
 #endif                          /* CONFIG_H */
index 7f07ad3..16ff6c1 100644 (file)
@@ -1,29 +1,39 @@
-\r
-Microsoft Visual Studio Solution File, Format Version 10.00\r
-# Visual Studio 2008\r
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rrdlib", "rrdlib.vcproj", "{CC158E1D-1364-43CA-9B2D-4AF54225C7CA}"\r
-EndProject\r
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rrdtool", "rrdtool.vcproj", "{11CD05F8-E5E1-476E-A75F-A112655D4E94}"\r
-       ProjectSection(ProjectDependencies) = postProject\r
-               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA} = {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}\r
-       EndProjectSection\r
-EndProject\r
-Global\r
-       GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
-               Debug|Win32 = Debug|Win32\r
-               Release|Win32 = Release|Win32\r
-       EndGlobalSection\r
-       GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
-               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.Debug|Win32.ActiveCfg = Debug|Win32\r
-               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.Debug|Win32.Build.0 = Debug|Win32\r
-               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.Release|Win32.ActiveCfg = Release|Win32\r
-               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.Release|Win32.Build.0 = Release|Win32\r
-               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.Debug|Win32.ActiveCfg = Debug|Win32\r
-               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.Debug|Win32.Build.0 = Debug|Win32\r
-               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.Release|Win32.ActiveCfg = Release|Win32\r
-               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.Release|Win32.Build.0 = Release|Win32\r
-       EndGlobalSection\r
-       GlobalSection(SolutionProperties) = preSolution\r
-               HideSolutionNode = FALSE\r
-       EndGlobalSection\r
-EndGlobal\r
+
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rrdlib", "rrdlib.vcproj", "{CC158E1D-1364-43CA-9B2D-4AF54225C7CA}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rrdtool", "rrdtool.vcproj", "{11CD05F8-E5E1-476E-A75F-A112655D4E94}"
+       ProjectSection(ProjectDependencies) = postProject
+               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA} = {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}
+       EndProjectSection
+EndProject
+Global
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution
+               Debug|Win32 = Debug|Win32
+               DebugDLL|Win32 = DebugDLL|Win32
+               Release|Win32 = Release|Win32
+               Static Debug|Win32 = Static Debug|Win32
+       EndGlobalSection
+       GlobalSection(ProjectConfigurationPlatforms) = postSolution
+               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.Debug|Win32.ActiveCfg = Debug|Win32
+               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.Debug|Win32.Build.0 = Debug|Win32
+               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.DebugDLL|Win32.ActiveCfg = DebugDLL|Win32
+               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.DebugDLL|Win32.Build.0 = DebugDLL|Win32
+               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.Release|Win32.ActiveCfg = Release|Win32
+               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.Release|Win32.Build.0 = Release|Win32
+               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.Static Debug|Win32.ActiveCfg = Static Debug|Win32
+               {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.Static Debug|Win32.Build.0 = Static Debug|Win32
+               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.Debug|Win32.ActiveCfg = Debug|Win32
+               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.Debug|Win32.Build.0 = Debug|Win32
+               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.DebugDLL|Win32.ActiveCfg = Debug|Win32
+               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.DebugDLL|Win32.Build.0 = Debug|Win32
+               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.Release|Win32.ActiveCfg = Release|Win32
+               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.Release|Win32.Build.0 = Release|Win32
+               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.Static Debug|Win32.ActiveCfg = Static Debug|Win32
+               {11CD05F8-E5E1-476E-A75F-A112655D4E94}.Static Debug|Win32.Build.0 = Static Debug|Win32
+       EndGlobalSection
+       GlobalSection(SolutionProperties) = preSolution
+               HideSolutionNode = FALSE
+       EndGlobalSection
+EndGlobal
index b9822a9..8afaf81 100644 (file)
-<?xml version="1.0" encoding="Windows-1252"?>\r
-<VisualStudioProject\r
-       ProjectType="Visual C++"\r
-       Version="7.10"\r
-       Name="rrd"\r
-       SccProjectName=""\r
-       SccLocalPath="">\r
-       <Platforms>\r
-               <Platform\r
-                       Name="Win32"/>\r
-       </Platforms>\r
-       <Configurations>\r
-               <Configuration\r
-                       Name="Release|Win32"\r
-                       OutputDirectory=".\release"\r
-                       IntermediateDirectory=".\release"\r
-                       ConfigurationType="4"\r
-                       UseOfMFC="0"\r
-                       ATLMinimizesCRunTimeLibraryUsage="FALSE"\r
-                       CharacterSet="2">\r
-                       <Tool\r
-                               Name="VCCLCompilerTool"\r
-                               Optimization="4"\r
-                               AdditionalIncludeDirectories="\Program Files\GnuWin32\include,\Program Files\GnuWin32\include\freetype2"\r
-                               PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_CTYPE_DISABLE_MACROS"\r
-                               RuntimeLibrary="2"\r
-                               PrecompiledHeaderFile=".\release/rrd.pch"\r
-                               AssemblerListingLocation=".\release/"\r
-                               ObjectFile=".\release/"\r
-                               ProgramDataBaseFileName=".\release/"\r
-                               WarningLevel="3"\r
-                               SuppressStartupBanner="TRUE"\r
-                               CompileAs="0"/>\r
-                       <Tool\r
-                               Name="VCCustomBuildTool"/>\r
-                       <Tool\r
-                               Name="VCLibrarianTool"\r
-                               OutputFile=".\release\rrd.lib"\r
-                               SuppressStartupBanner="TRUE"/>\r
-                       <Tool\r
-                               Name="VCMIDLTool"/>\r
-                       <Tool\r
-                               Name="VCPostBuildEventTool"/>\r
-                       <Tool\r
-                               Name="VCPreBuildEventTool"/>\r
-                       <Tool\r
-                               Name="VCPreLinkEventTool"/>\r
-                       <Tool\r
-                               Name="VCResourceCompilerTool"\r
-                               Culture="4108"/>\r
-                       <Tool\r
-                               Name="VCWebServiceProxyGeneratorTool"/>\r
-                       <Tool\r
-                               Name="VCXMLDataGeneratorTool"/>\r
-                       <Tool\r
-                               Name="VCManagedWrapperGeneratorTool"/>\r
-                       <Tool\r
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>\r
-               </Configuration>\r
-               <Configuration\r
-                       Name="Debug|Win32"\r
-                       OutputDirectory=".\debug"\r
-                       IntermediateDirectory=".\debug"\r
-                       ConfigurationType="4"\r
-                       UseOfMFC="0"\r
-                       ATLMinimizesCRunTimeLibraryUsage="FALSE"\r
-                       CharacterSet="2">\r
-                       <Tool\r
-                               Name="VCCLCompilerTool"\r
-                               Optimization="0"\r
-                               AdditionalIncludeDirectories="\Program Files\GnuWin32\include\freetype2,\Program Files\GnuWin32\include"\r
-                               PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_CTYPE_DISABLE_MACROS"\r
-                               RuntimeLibrary="2"\r
-                               PrecompiledHeaderFile=".\debug/rrd.pch"\r
-                               AssemblerListingLocation=".\debug/"\r
-                               ObjectFile=".\debug/"\r
-                               ProgramDataBaseFileName=".\debug/"\r
-                               BrowseInformation="1"\r
-                               WarningLevel="3"\r
-                               SuppressStartupBanner="TRUE"\r
-                               DebugInformationFormat="4"\r
-                               CompileAs="0"/>\r
-                       <Tool\r
-                               Name="VCCustomBuildTool"/>\r
-                       <Tool\r
-                               Name="VCLibrarianTool"\r
-                               OutputFile=".\debug\rrd.lib"\r
-                               SuppressStartupBanner="TRUE"/>\r
-                       <Tool\r
-                               Name="VCMIDLTool"/>\r
-                       <Tool\r
-                               Name="VCPostBuildEventTool"/>\r
-                       <Tool\r
-                               Name="VCPreBuildEventTool"/>\r
-                       <Tool\r
-                               Name="VCPreLinkEventTool"/>\r
-                       <Tool\r
-                               Name="VCResourceCompilerTool"\r
-                               Culture="4108"/>\r
-                       <Tool\r
-                               Name="VCWebServiceProxyGeneratorTool"/>\r
-                       <Tool\r
-                               Name="VCXMLDataGeneratorTool"/>\r
-                       <Tool\r
-                               Name="VCManagedWrapperGeneratorTool"/>\r
-                       <Tool\r
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>\r
-               </Configuration>\r
-       </Configurations>\r
-       <References>\r
-       </References>\r
-       <Files>\r
-               <File\r
-                       RelativePath="getopt.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="getopt1.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="hash_32.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_parsetime.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="pngsize.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_afm.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_afm_data.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_create.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_diff.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_dump.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_error.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_fetch.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_format.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_gfx.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_graph.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_graph_helper.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_hw.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_info.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_last.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_nan_inf.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_open.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_resize.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_restore.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_rpncalc.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_thread_safe_nt.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_tune.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_update.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-               <File\r
-                       RelativePath="rrd_xport.c">\r
-                       <FileConfiguration\r
-                               Name="Release|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""/>\r
-                       </FileConfiguration>\r
-                       <FileConfiguration\r
-                               Name="Debug|Win32">\r
-                               <Tool\r
-                                       Name="VCCLCompilerTool"\r
-                                       Optimization="0"\r
-                                       AdditionalIncludeDirectories=""\r
-                                       PreprocessorDefinitions=""\r
-                                       BrowseInformation="1"/>\r
-                       </FileConfiguration>\r
-               </File>\r
-       </Files>\r
-       <Globals>\r
-       </Globals>\r
-</VisualStudioProject>\r
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+       ProjectType="Visual C++"
+       Version="7.10"
+       Name="rrd"
+       SccProjectName=""
+       SccLocalPath="">
+       <Platforms>
+               <Platform
+                       Name="Win32"/>
+       </Platforms>
+       <Configurations>
+               <Configuration
+                       Name="Release|Win32"
+                       OutputDirectory=".\release"
+                       IntermediateDirectory=".\release"
+                       ConfigurationType="4"
+                       UseOfMFC="0"
+                       ATLMinimizesCRunTimeLibraryUsage="FALSE"
+                       CharacterSet="2">
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="4"
+                               AdditionalIncludeDirectories="\Program Files\GnuWin32\include,\Program Files\GnuWin32\include\freetype2"
+                               PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_CTYPE_DISABLE_MACROS"
+                               RuntimeLibrary="2"
+                               PrecompiledHeaderFile=".\release/rrd.pch"
+                               AssemblerListingLocation=".\release/"
+                               ObjectFile=".\release/"
+                               ProgramDataBaseFileName=".\release/"
+                               WarningLevel="3"
+                               SuppressStartupBanner="TRUE"
+                               CompileAs="0"/>
+                       <Tool
+                               Name="VCCustomBuildTool"/>
+                       <Tool
+                               Name="VCLibrarianTool"
+                               OutputFile=".\release\rrd.lib"
+                               SuppressStartupBanner="TRUE"/>
+                       <Tool
+                               Name="VCMIDLTool"/>
+                       <Tool
+                               Name="VCPostBuildEventTool"/>
+                       <Tool
+                               Name="VCPreBuildEventTool"/>
+                       <Tool
+                               Name="VCPreLinkEventTool"/>
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                               Culture="4108"/>
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"/>
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"/>
+                       <Tool
+                               Name="VCManagedWrapperGeneratorTool"/>
+                       <Tool
+                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+               </Configuration>
+               <Configuration
+                       Name="Debug|Win32"
+                       OutputDirectory=".\debug"
+                       IntermediateDirectory=".\debug"
+                       ConfigurationType="4"
+                       UseOfMFC="0"
+                       ATLMinimizesCRunTimeLibraryUsage="FALSE"
+                       CharacterSet="2">
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="0"
+                               AdditionalIncludeDirectories="\Program Files\GnuWin32\include\freetype2,\Program Files\GnuWin32\include"
+                               PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_CTYPE_DISABLE_MACROS"
+                               RuntimeLibrary="2"
+                               PrecompiledHeaderFile=".\debug/rrd.pch"
+                               AssemblerListingLocation=".\debug/"
+                               ObjectFile=".\debug/"
+                               ProgramDataBaseFileName=".\debug/"
+                               BrowseInformation="1"
+                               WarningLevel="3"
+                               SuppressStartupBanner="TRUE"
+                               DebugInformationFormat="4"
+                               CompileAs="0"/>
+                       <Tool
+                               Name="VCCustomBuildTool"/>
+                       <Tool
+                               Name="VCLibrarianTool"
+                               OutputFile=".\debug\rrd.lib"
+                               SuppressStartupBanner="TRUE"/>
+                       <Tool
+                               Name="VCMIDLTool"/>
+                       <Tool
+                               Name="VCPostBuildEventTool"/>
+                       <Tool
+                               Name="VCPreBuildEventTool"/>
+                       <Tool
+                               Name="VCPreLinkEventTool"/>
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                               Culture="4108"/>
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"/>
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"/>
+                       <Tool
+                               Name="VCManagedWrapperGeneratorTool"/>
+                       <Tool
+                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+               </Configuration>
+       </Configurations>
+       <References>
+       </References>
+       <Files>
+               <File
+                       RelativePath="getopt.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="getopt1.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="hash_32.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_parsetime.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="pngsize.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_afm.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_afm_data.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_create.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_diff.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_dump.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_error.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_fetch.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_format.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_gfx.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_graph.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_graph_helper.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_hw.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_info.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_last.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_nan_inf.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_open.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_resize.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_restore.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_rpncalc.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_thread_safe_nt.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_tune.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_update.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+               <File
+                       RelativePath="rrd_xport.c">
+                       <FileConfiguration
+                               Name="Release|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""/>
+                       </FileConfiguration>
+                       <FileConfiguration
+                               Name="Debug|Win32">
+                               <Tool
+                                       Name="VCCLCompilerTool"
+                                       Optimization="0"
+                                       AdditionalIncludeDirectories=""
+                                       PreprocessorDefinitions=""
+                                       BrowseInformation="1"/>
+                       </FileConfiguration>
+               </File>
+       </Files>
+       <Globals>
+       </Globals>
+</VisualStudioProject>
index 7c55d5a..7855b2d 100644 (file)
@@ -1,66 +1,60 @@
-/* rrd_config.h.msvc. Hand-tweaked rrd_config.h for MSVC compiler. */\r
-#ifndef WIN32 \r
-#error This rrd_config.h is created for Win32 platform! \r
-#endif \r
-#ifndef RRD_CONFIG_H\r
-#define RRD_CONFIG_H\r
-\r
-#include <math.h>\r
-#include <float.h>\r
-#include <direct.h>\r
-\r
-/* the placeholders will be filled in by get_ver.awk */\r
-/* http://cm.bell-labs.com/cm/cs/awkbook/index.html */\r
-#define NUMVERS @@NUMVERS@@\r
-#define PACKAGE_VERSION "@@PACKAGE_VERSION@@"\r
-\r
-#define PACKAGE_NAME "rrdtool"\r
-#define PACKAGE_STRING PACKAGE_NAME " " PACKAGE_VERSION\r
-\r
-#define HAVE_STRFTIME 1\r
-#define HAVE_TIME_H 1\r
-#define HAVE_LOCALE_H 1\r
-#define HAVE_TZSET 1\r
-#define HAVE_SETLOCALE 1\r
-#define HAVE_MATH_H 1\r
-#define HAVE_FLOAT_H 1\r
-#define HAVE_MEMMOVE 1\r
-#define HAVE_MALLOC_H 1\r
-#define HAVE_MKTIME 1\r
-#define HAVE_STRFTIME 1\r
-#define HAVE_STRING_H 1\r
-#define HAVE_VSNPRINTF 1\r
-#define HAVE_SYS_TYPES_H 1\r
-#define HAVE_SYS_STAT_H 1\r
-\r
-/* Define to 1 if you have the ANSI C header files. */\r
-#define STDC_HEADERS 1\r
-\r
-#define isinf(a) (_fpclass(a) == _FPCLASS_NINF || _fpclass(a) == _FPCLASS_PINF)\r
-#define isnan _isnan\r
-#define finite _finite\r
-#define snprintf _snprintf\r
-#define vsnprintf _vsnprintf\r
-#define strftime strftime_ \r
-#define strtoll(p, e, b) _strtoi64(p, e, b)\r
-\r
-/* realloc does not support NULL as argument */\r
-#define NO_NULL_REALLOC 1\r
-#if NO_NULL_REALLOC\r
-# define rrd_realloc(a,b) ( (a) == NULL ? malloc( (b) ) : realloc( (a) , (b) ))\r
-#else\r
-# define rrd_realloc(a,b) realloc((a), (b))\r
-#endif      \r
-\r
-/* Vertical label angle: 90.0 (default) or 270.0 */\r
-#define RRDGRAPH_YLEGEND_ANGLE 90.0\r
-\r
-#define RRD_DEFAULT_FONT "arial.ttf"\r
-/* #define RRD_DEFAULT_FONT "DejaVuSansMono-Roman.ttf" */\r
-\r
-/* #define WITH_PIECHART 1 */\r
-\r
-/* #define DEBUG 1 */\r
-\r
-#endif /* RRD_CONFIG_H */\r
-\r
+/* config.h.msvc.  Hand-tweaked config.h for MSVC compiler.  */
+#ifndef CONFIG_H
+#define CONFIG_H
+
+#include <math.h>
+#include <float.h>
+#include <direct.h>
+#include <ctype.h>
+
+/* realloc does not support NULL as argument */
+
+#define HAVE_STRFTIME 1
+#define HAVE_TIME_H 1
+#define HAVE_LOCALE_H 1
+#define HAVE_TZSET 1
+#define HAVE_SETLOCALE 1
+#define HAVE_MATH_H 1
+#define HAVE_FLOAT_H 1
+#define HAVE_MEMMOVE 1
+#define HAVE_MALLOC_H 1
+#define HAVE_MKTIME 1
+#define HAVE_STRFTIME 1
+#define HAVE_STRING_H 1
+#define HAVE_STDLIB_H 1
+#define HAVE_VSNPRINTF 1
+#define HAVE_SYS_TYPES_H 1
+#define HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+#define NUMVERS 1.4030
+#define PACKAGE_NAME "rrdtool"
+#define PACKAGE_VERSION "1.4.3"
+#define PACKAGE_STRING PACKAGE_NAME " " PACKAGE_VERSION
+
+#define isinf(a) (_fpclass(a) == _FPCLASS_NINF || _fpclass(a) == _FPCLASS_PINF)
+#define isnan _isnan
+#define finite _finite
+#define snprintf _snprintf
+//#define vsnprintf _vsnprintf
+//#define strftime strftime_
+
+#define NO_NULL_REALLOC 1
+#if NO_NULL_REALLOC
+# define rrd_realloc(a,b) ( (a) == NULL ? malloc( (b) ) : realloc( (a) , (b) ))
+#else
+# define rrd_realloc(a,b) realloc((a), (b))
+#endif
+
+/* Vertical label angle: 90.0 (default) or 270.0 */
+#define RRDGRAPH_YLEGEND_ANGLE 90.0
+
+#define RRD_DEFAULT_FONT "Courier"
+
+/* #define DEBUG 1 */
+
+__inline int round(double a){int x = (a + 0.5); return x;}
+
+#endif                          /* CONFIG_H */
index dd5947e..9ea6bbf 100644 (file)
-<?xml version="1.0" encoding="windows-1251"?>\r
-<VisualStudioProject\r
-       ProjectType="Visual C++"\r
-       Version="9,00"\r
-       Name="rrdlib"\r
-       ProjectGUID="{CC158E1D-1364-43CA-9B2D-4AF54225C7CA}"\r
-       RootNamespace="rrdlib"\r
-       Keyword="Win32Proj"\r
-       TargetFrameworkVersion="196613"\r
-       >\r
-       <Platforms>\r
-               <Platform\r
-                       Name="Win32"\r
-               />\r
-       </Platforms>\r
-       <ToolFiles>\r
-       </ToolFiles>\r
-       <Configurations>\r
-               <Configuration\r
-                       Name="Debug|Win32"\r
-                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"\r
-                       IntermediateDirectory="$(ConfigurationName)"\r
-                       ConfigurationType="4"\r
-                       CharacterSet="1"\r
-                       >\r
-                       <Tool\r
-                               Name="VCPreBuildEventTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCCustomBuildTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCXMLDataGeneratorTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCWebServiceProxyGeneratorTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCMIDLTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCCLCompilerTool"\r
-                               Optimization="0"\r
-                               AdditionalIncludeDirectories=".;../../contrib/cairo/include/cairo;&quot;../../contrib/pango/include/pango-1.0&quot;;&quot;../../contrib/glib/include/glib-2.0&quot;;&quot;../../contrib/glib/lib/glib-2.0/include&quot;;../../contrib/libpng/include;../../contrib/zlib/include;../../contrib/libxml2/include/libxml2"\r
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"\r
-                               MinimalRebuild="true"\r
-                               BasicRuntimeChecks="3"\r
-                               RuntimeLibrary="3"\r
-                               UsePrecompiledHeader="0"\r
-                               PrecompiledHeaderThrough="precompiled.h"\r
-                               WarningLevel="3"\r
-                               DebugInformationFormat="3"\r
-                               CompileAs="2"\r
-                               DisableSpecificWarnings="4996"\r
-                       />\r
-                       <Tool\r
-                               Name="VCManagedResourceCompilerTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCResourceCompilerTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCPreLinkEventTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCLibrarianTool"\r
-                               AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib libpng.lib zdll.lib glib-2.0.lib gobject-2.0.lib libxml2.lib"\r
-                               AdditionalLibraryDirectories="../../contrib/cairo/lib;../../contrib/pango/lib;../../contrib/glib/lib;../../contrib/libpng/lib;../../contrib/zlib/lib;../../contrib/libxml2/lib"\r
-                       />\r
-                       <Tool\r
-                               Name="VCALinkTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCXDCMakeTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCBscMakeTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCFxCopTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCPostBuildEventTool"\r
-                       />\r
-               </Configuration>\r
-               <Configuration\r
-                       Name="Release|Win32"\r
-                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"\r
-                       IntermediateDirectory="$(ConfigurationName)"\r
-                       ConfigurationType="4"\r
-                       CharacterSet="1"\r
-                       WholeProgramOptimization="1"\r
-                       >\r
-                       <Tool\r
-                               Name="VCPreBuildEventTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCCustomBuildTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCXMLDataGeneratorTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCWebServiceProxyGeneratorTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCMIDLTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCCLCompilerTool"\r
-                               Optimization="2"\r
-                               EnableIntrinsicFunctions="true"\r
-                               AdditionalIncludeDirectories=".;../../contrib/cairo/include/cairo;&quot;../../contrib/pango/include/pango-1.0&quot;;&quot;../../contrib/glib/include/glib-2.0&quot;;&quot;../../contrib/glib/lib/glib-2.0/include&quot;;../../contrib/libpng/include;../../contrib/zlib/include;../../contrib/libxml2/include/libxml2"\r
-                               PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;"\r
-                               RuntimeLibrary="2"\r
-                               EnableFunctionLevelLinking="true"\r
-                               UsePrecompiledHeader="0"\r
-                               PrecompiledHeaderThrough="precompiled.h"\r
-                               WarningLevel="3"\r
-                               DebugInformationFormat="3"\r
-                               CompileAs="2"\r
-                               DisableSpecificWarnings="4996"\r
-                       />\r
-                       <Tool\r
-                               Name="VCManagedResourceCompilerTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCResourceCompilerTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCPreLinkEventTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCLibrarianTool"\r
-                               AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib libpng.lib zdll.lib glib-2.0.lib gobject-2.0.lib libxml2.lib"\r
-                               AdditionalLibraryDirectories="../../contrib/cairo/lib;../../contrib/pango/lib;../../contrib/glib/lib;../../contrib/libpng/lib;../../contrib/zlib/lib;../../contrib/libxml2/lib"\r
-                       />\r
-                       <Tool\r
-                               Name="VCALinkTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCXDCMakeTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCBscMakeTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCFxCopTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCPostBuildEventTool"\r
-                       />\r
-               </Configuration>\r
-       </Configurations>\r
-       <References>\r
-       </References>\r
-       <Files>\r
-               <Filter\r
-                       Name="Source Files"\r
-                       Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"\r
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"\r
-                       >\r
-                       <File\r
-                               RelativePath="..\src\hash_32.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\plbasename.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\pngsize.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_create.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_diff.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_dump.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_error.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_fetch.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_first.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_format.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_getopt.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_getopt1.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_gfx.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_graph.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_graph_helper.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_hw.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_hw_math.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_hw_update.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_info.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_last.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_lastupdate.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_nan_inf.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_open.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_parsetime.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_resize.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_restore.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_rpncalc.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_thread_safe_nt.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_tune.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_update.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_version.c"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_xport.c"\r
-                               >\r
-                       </File>\r
-               </Filter>\r
-               <Filter\r
-                       Name="Header Files"\r
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"\r
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"\r
-                       >\r
-                       <File\r
-                               RelativePath="..\win32\config.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\fnv.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\plbasename.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_format.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_getopt.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_graph.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_hw.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_hw_math.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_hw_update.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_i18n.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_is_thread_safe.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_parsetime.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_rpncalc.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_tool.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_xport.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\unused.h"\r
-                               >\r
-                       </File>\r
-               </Filter>\r
-               <Filter\r
-                       Name="Resource Files"\r
-                       Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"\r
-                       UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"\r
-                       >\r
-               </Filter>\r
-       </Files>\r
-       <Globals>\r
-       </Globals>\r
-</VisualStudioProject>\r
+<?xml version="1.0" encoding="windows-1251"?>
+<VisualStudioProject
+       ProjectType="Visual C++"
+       Version="9.00"
+       Name="rrdlib"
+       ProjectGUID="{CC158E1D-1364-43CA-9B2D-4AF54225C7CA}"
+       RootNamespace="rrdlib"
+       Keyword="Win32Proj"
+       TargetFrameworkVersion="196613"
+       >
+       <Platforms>
+               <Platform
+                       Name="Win32"
+               />
+       </Platforms>
+       <ToolFiles>
+       </ToolFiles>
+       <Configurations>
+               <Configuration
+                       Name="Debug|Win32"
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+                       IntermediateDirectory="$(ConfigurationName)"
+                       ConfigurationType="4"
+                       CharacterSet="1"
+                       >
+                       <Tool
+                               Name="VCPreBuildEventTool"
+                       />
+                       <Tool
+                               Name="VCCustomBuildTool"
+                       />
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCMIDLTool"
+                       />
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="0"
+                               AdditionalIncludeDirectories=".;../contrib/include/cairo;&quot;../contrib/include/pango-1.0&quot;;&quot;../contrib/include/glib-2.0&quot;;&quot;../contrib/lib/glib-2.0/include&quot;;../contrib/include;../contrib/include/libpng12;../contrib/include/libxml2"
+                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USE_32BIT_TIME_T"
+                               MinimalRebuild="true"
+                               BasicRuntimeChecks="3"
+                               RuntimeLibrary="3"
+                               UsePrecompiledHeader="0"
+                               PrecompiledHeaderThrough=""
+                               WarningLevel="3"
+                               DebugInformationFormat="3"
+                               CompileAs="2"
+                               DisableSpecificWarnings="4996"
+                       />
+                       <Tool
+                               Name="VCManagedResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCPreLinkEventTool"
+                       />
+                       <Tool
+                               Name="VCLibrarianTool"
+                               AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib libpng.lib zdll.lib glib-2.0.lib gobject-2.0.lib libxml2.lib"
+                               AdditionalLibraryDirectories="../contrib/lib"
+                               ModuleDefinitionFile=""
+                       />
+                       <Tool
+                               Name="VCALinkTool"
+                       />
+                       <Tool
+                               Name="VCXDCMakeTool"
+                       />
+                       <Tool
+                               Name="VCBscMakeTool"
+                       />
+                       <Tool
+                               Name="VCFxCopTool"
+                       />
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                       />
+               </Configuration>
+               <Configuration
+                       Name="Release|Win32"
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+                       IntermediateDirectory="$(ConfigurationName)"
+                       ConfigurationType="4"
+                       CharacterSet="1"
+                       WholeProgramOptimization="1"
+                       >
+                       <Tool
+                               Name="VCPreBuildEventTool"
+                       />
+                       <Tool
+                               Name="VCCustomBuildTool"
+                       />
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCMIDLTool"
+                       />
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="2"
+                               EnableIntrinsicFunctions="true"
+                               AdditionalIncludeDirectories=".;../../contrib/cairo/include/cairo;&quot;../../contrib/pango/include/pango-1.0&quot;;&quot;../../contrib/glib/include/glib-2.0&quot;;&quot;../../contrib/glib/lib/glib-2.0/include&quot;;../../contrib/libpng/include;../../contrib/zlib/include;../../contrib/libxml2/include/libxml2"
+                               PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;"
+                               RuntimeLibrary="2"
+                               EnableFunctionLevelLinking="true"
+                               UsePrecompiledHeader="0"
+                               PrecompiledHeaderThrough="precompiled.h"
+                               WarningLevel="3"
+                               DebugInformationFormat="3"
+                               CompileAs="2"
+                               DisableSpecificWarnings="4996"
+                       />
+                       <Tool
+                               Name="VCManagedResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCPreLinkEventTool"
+                       />
+                       <Tool
+                               Name="VCLibrarianTool"
+                               AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib libpng.lib zdll.lib glib-2.0.lib gobject-2.0.lib libxml2.lib"
+                               AdditionalLibraryDirectories="../../contrib/cairo/lib;../../contrib/pango/lib;../../contrib/glib/lib;../../contrib/libpng/lib;../../contrib/zlib/lib;../../contrib/libxml2/lib"
+                       />
+                       <Tool
+                               Name="VCALinkTool"
+                       />
+                       <Tool
+                               Name="VCXDCMakeTool"
+                       />
+                       <Tool
+                               Name="VCBscMakeTool"
+                       />
+                       <Tool
+                               Name="VCFxCopTool"
+                       />
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                       />
+               </Configuration>
+               <Configuration
+                       Name="DebugDLL|Win32"
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+                       IntermediateDirectory="$(ConfigurationName)"
+                       ConfigurationType="2"
+                       CharacterSet="1"
+                       >
+                       <Tool
+                               Name="VCPreBuildEventTool"
+                       />
+                       <Tool
+                               Name="VCCustomBuildTool"
+                       />
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCMIDLTool"
+                       />
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="0"
+                               AdditionalIncludeDirectories=".;../contrib/include/cairo;&quot;../contrib/include/pango-1.0&quot;;&quot;../contrib/include/glib-2.0&quot;;&quot;../contrib/lib/glib-2.0/include&quot;;../contrib/include;../contrib/include/libpng12;../contrib/include/libxml2"
+                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;DEBUG;_USE_32BIT_TIME_T"
+                               MinimalRebuild="true"
+                               BasicRuntimeChecks="3"
+                               RuntimeLibrary="3"
+                               UsePrecompiledHeader="0"
+                               PrecompiledHeaderThrough=""
+                               WarningLevel="3"
+                               DebugInformationFormat="3"
+                               CompileAs="2"
+                               DisableSpecificWarnings="4996"
+                       />
+                       <Tool
+                               Name="VCManagedResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCPreLinkEventTool"
+                       />
+                       <Tool
+                               Name="VCLinkerTool"
+                               AdditionalDependencies="cairo.lib glib-2.0.lib gobject-2.0.lib libpng.lib libxml2.lib pango-1.0.lib pangocairo-1.0.lib"
+                               AdditionalLibraryDirectories="../contrib/lib"
+                               ModuleDefinitionFile="rrdlib.def"
+                       />
+                       <Tool
+                               Name="VCALinkTool"
+                       />
+                       <Tool
+                               Name="VCManifestTool"
+                       />
+                       <Tool
+                               Name="VCXDCMakeTool"
+                       />
+                       <Tool
+                               Name="VCBscMakeTool"
+                       />
+                       <Tool
+                               Name="VCFxCopTool"
+                       />
+                       <Tool
+                               Name="VCAppVerifierTool"
+                       />
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                       />
+               </Configuration>
+               <Configuration
+                       Name="Static Debug|Win32"
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+                       IntermediateDirectory="$(ConfigurationName)"
+                       ConfigurationType="4"
+                       CharacterSet="1"
+                       >
+                       <Tool
+                               Name="VCPreBuildEventTool"
+                       />
+                       <Tool
+                               Name="VCCustomBuildTool"
+                       />
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCMIDLTool"
+                       />
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="0"
+                               AdditionalIncludeDirectories=".;../contrib/include/cairo;&quot;../contrib/include/pango-1.0&quot;;&quot;../contrib/include/glib-2.0&quot;;&quot;../contrib/lib/glib-2.0/include&quot;;../contrib/include;../contrib/include/libpng12;../contrib/include/libxml2"
+                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
+                               MinimalRebuild="true"
+                               BasicRuntimeChecks="3"
+                               RuntimeLibrary="1"
+                               UsePrecompiledHeader="0"
+                               PrecompiledHeaderThrough=""
+                               WarningLevel="3"
+                               DebugInformationFormat="3"
+                               CompileAs="2"
+                               DisableSpecificWarnings="4996"
+                       />
+                       <Tool
+                               Name="VCManagedResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCPreLinkEventTool"
+                       />
+                       <Tool
+                               Name="VCLibrarianTool"
+                               AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib libpng.lib zdll.lib glib-2.0.lib gobject-2.0.lib libxml2.lib"
+                               AdditionalLibraryDirectories="../contrib/lib"
+                               ModuleDefinitionFile=""
+                               IgnoreDefaultLibraryNames="LIBCMTD.lib;LIBCMT.lib"
+                       />
+                       <Tool
+                               Name="VCALinkTool"
+                       />
+                       <Tool
+                               Name="VCXDCMakeTool"
+                       />
+                       <Tool
+                               Name="VCBscMakeTool"
+                       />
+                       <Tool
+                               Name="VCFxCopTool"
+                       />
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                       />
+               </Configuration>
+       </Configurations>
+       <References>
+       </References>
+       <Files>
+               <Filter
+                       Name="Source Files"
+                       Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+                       >
+                       <File
+                               RelativePath="..\src\hash_32.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\plbasename.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\pngsize.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_create.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_diff.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_dump.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_error.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_fetch.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_first.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_format.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_getopt.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_getopt1.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_gfx.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_graph.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_graph_helper.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_hw.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_hw_math.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_hw_update.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_info.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_last.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_lastupdate.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_nan_inf.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_open.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_parsetime.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_resize.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_restore.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_rpncalc.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_thread_safe_nt.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_tune.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_update.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_utils.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_version.c"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_xport.c"
+                               >
+                       </File>
+               </Filter>
+               <Filter
+                       Name="Header Files"
+                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
+                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+                       >
+                       <File
+                               RelativePath="..\win32\config.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\fnv.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\plbasename.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_format.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_getopt.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_graph.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_hw.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_hw_math.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_hw_update.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_i18n.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_is_thread_safe.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_parsetime.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_rpncalc.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_tool.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_xport.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\unused.h"
+                               >
+                       </File>
+               </Filter>
+               <Filter
+                       Name="Resource Files"
+                       Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
+                       UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+                       >
+                       <File
+                               RelativePath=".\rrdlib.def"
+                               >
+                       </File>
+               </Filter>
+       </Files>
+       <Globals>
+       </Globals>
+</VisualStudioProject>
index e98dd8b..7139414 100644 (file)
-<?xml version="1.0" encoding="Windows-1252"?>\r
-<VisualStudioProject\r
-       ProjectType="Visual C++"\r
-       Version="9,00"\r
-       Name="rrdtool"\r
-       ProjectGUID="{11CD05F8-E5E1-476E-A75F-A112655D4E94}"\r
-       RootNamespace="rrdtool"\r
-       TargetFrameworkVersion="196613"\r
-       >\r
-       <Platforms>\r
-               <Platform\r
-                       Name="Win32"\r
-               />\r
-       </Platforms>\r
-       <ToolFiles>\r
-       </ToolFiles>\r
-       <Configurations>\r
-               <Configuration\r
-                       Name="Debug|Win32"\r
-                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"\r
-                       IntermediateDirectory="$(ConfigurationName)"\r
-                       ConfigurationType="1"\r
-                       CharacterSet="2"\r
-                       >\r
-                       <Tool\r
-                               Name="VCPreBuildEventTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCCustomBuildTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCXMLDataGeneratorTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCWebServiceProxyGeneratorTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCMIDLTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCCLCompilerTool"\r
-                               Optimization="0"\r
-                               AdditionalIncludeDirectories=".;../../contrib/cairo/include/cairo;&quot;../../contrib/pango/include/pango-1.0&quot;;&quot;../../contrib/glib/include/glib-2.0&quot;;&quot;../../contrib/glib/lib/glib-2.0/include&quot;;../../contrib/libpng/include;../../contrib/zlib/include;../../contrib/libxml2/include/libxml2"\r
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"\r
-                               MinimalRebuild="true"\r
-                               BasicRuntimeChecks="3"\r
-                               RuntimeLibrary="3"\r
-                               WarningLevel="3"\r
-                               DebugInformationFormat="4"\r
-                       />\r
-                       <Tool\r
-                               Name="VCManagedResourceCompilerTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCResourceCompilerTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCPreLinkEventTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCLinkerTool"\r
-                               AdditionalDependencies="rrdlib.lib cairo.lib pango-1.0.lib pangocairo-1.0.lib libpng.lib zdll.lib glib-2.0.lib gobject-2.0.lib libxml2.lib"\r
-                               AdditionalLibraryDirectories="$(ConfigurationName); ../../contrib/cairo/lib;../../contrib/pango/lib;../../contrib/glib/lib;../../contrib/libpng/lib;../../contrib/zlib/lib;../../contrib/libxml2/lib"\r
-                               GenerateDebugInformation="true"\r
-                               TargetMachine="1"\r
-                       />\r
-                       <Tool\r
-                               Name="VCALinkTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCManifestTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCXDCMakeTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCBscMakeTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCFxCopTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCAppVerifierTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCPostBuildEventTool"\r
-                               Description="get all the dlls, needed for running"\r
-                               CommandLine="copy $(ProjectDir)\..\..\contrib\cairo\bin\libcairo-2.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libglib-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libgmodule-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libgobject-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\libpng\bin\libpng12-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpango-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpangocairo-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpangowin32-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\zlib\zlib1.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\libxml2\lib\libxml2.dll $(TargetDir)\&#x0D;&#x0A;"\r
-                       />\r
-               </Configuration>\r
-               <Configuration\r
-                       Name="Release|Win32"\r
-                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"\r
-                       IntermediateDirectory="$(ConfigurationName)"\r
-                       ConfigurationType="1"\r
-                       CharacterSet="2"\r
-                       WholeProgramOptimization="1"\r
-                       >\r
-                       <Tool\r
-                               Name="VCPreBuildEventTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCCustomBuildTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCXMLDataGeneratorTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCWebServiceProxyGeneratorTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCMIDLTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCCLCompilerTool"\r
-                               Optimization="2"\r
-                               EnableIntrinsicFunctions="true"\r
-                               AdditionalIncludeDirectories=".;../../contrib/cairo/include/cairo;&quot;../../contrib/pango/include/pango-1.0&quot;;&quot;../../contrib/glib/include/glib-2.0&quot;;&quot;../../contrib/glib/lib/glib-2.0/include&quot;;../../contrib/libpng/include;../../contrib/zlib/include;../../contrib/libxml2/include/libxml2"\r
-                               PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;"\r
-                               RuntimeLibrary="2"\r
-                               EnableFunctionLevelLinking="true"\r
-                               WarningLevel="3"\r
-                               DebugInformationFormat="3"\r
-                       />\r
-                       <Tool\r
-                               Name="VCManagedResourceCompilerTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCResourceCompilerTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCPreLinkEventTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCLinkerTool"\r
-                               AdditionalDependencies="rrdlib.lib cairo.lib pango-1.0.lib pangocairo-1.0.lib libpng.lib zdll.lib glib-2.0.lib gobject-2.0.lib libxml2.lib"\r
-                               AdditionalLibraryDirectories="$(ConfigurationName); ../../contrib/cairo/lib;../../contrib/pango/lib;../../contrib/glib/lib;../../contrib/libpng/lib;../../contrib/zlib/lib;../../contrib/libxml2/lib"\r
-                               GenerateDebugInformation="true"\r
-                               OptimizeReferences="2"\r
-                               EnableCOMDATFolding="2"\r
-                               TargetMachine="1"\r
-                       />\r
-                       <Tool\r
-                               Name="VCALinkTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCManifestTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCXDCMakeTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCBscMakeTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCFxCopTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCAppVerifierTool"\r
-                       />\r
-                       <Tool\r
-                               Name="VCPostBuildEventTool"\r
-                               Description="get all the dlls, needed for running"\r
-                               CommandLine="copy $(ProjectDir)\..\..\contrib\cairo\bin\libcairo-2.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libglib-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libgmodule-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libgobject-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\libpng\bin\libpng12-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpango-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpangocairo-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpangowin32-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\zlib\zlib1.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\libxml2\lib\libxml2.dll $(TargetDir)\&#x0D;&#x0A;"\r
-                       />\r
-               </Configuration>\r
-       </Configurations>\r
-       <References>\r
-       </References>\r
-       <Files>\r
-               <Filter\r
-                       Name="Source Files"\r
-                       Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"\r
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"\r
-                       >\r
-                       <File\r
-                               RelativePath="..\src\rrd_tool.c"\r
-                               >\r
-                       </File>\r
-               </Filter>\r
-               <Filter\r
-                       Name="Header Files"\r
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"\r
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"\r
-                       >\r
-                       <File\r
-                               RelativePath=".\config.h"\r
-                               >\r
-                       </File>\r
-                       <File\r
-                               RelativePath="..\src\rrd_tool.h"\r
-                               >\r
-                       </File>\r
-               </Filter>\r
-               <Filter\r
-                       Name="Resource Files"\r
-                       Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"\r
-                       UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"\r
-                       >\r
-               </Filter>\r
-       </Files>\r
-       <Globals>\r
-       </Globals>\r
-</VisualStudioProject>\r
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+       ProjectType="Visual C++"
+       Version="9.00"
+       Name="rrdtool"
+       ProjectGUID="{11CD05F8-E5E1-476E-A75F-A112655D4E94}"
+       RootNamespace="rrdtool"
+       TargetFrameworkVersion="196613"
+       >
+       <Platforms>
+               <Platform
+                       Name="Win32"
+               />
+       </Platforms>
+       <ToolFiles>
+       </ToolFiles>
+       <Configurations>
+               <Configuration
+                       Name="Debug|Win32"
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+                       IntermediateDirectory="$(ConfigurationName)"
+                       ConfigurationType="1"
+                       CharacterSet="2"
+                       >
+                       <Tool
+                               Name="VCPreBuildEventTool"
+                       />
+                       <Tool
+                               Name="VCCustomBuildTool"
+                       />
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCMIDLTool"
+                       />
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="0"
+                               InlineFunctionExpansion="0"
+                               AdditionalIncludeDirectories=""
+                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USE_32BIT_TIME_T"
+                               MinimalRebuild="true"
+                               BasicRuntimeChecks="3"
+                               RuntimeLibrary="1"
+                               WarningLevel="3"
+                               DebugInformationFormat="4"
+                               DisableSpecificWarnings="4996"
+                       />
+                       <Tool
+                               Name="VCManagedResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCPreLinkEventTool"
+                       />
+                       <Tool
+                               Name="VCLinkerTool"
+                               AdditionalDependencies="rrdlib.lib"
+                               ShowProgress="2"
+                               AdditionalLibraryDirectories="&quot;$(ConfigurationName)&quot;"
+                               IgnoreDefaultLibraryNames="LIBCMTD.lib;LIBCMT.lib"
+                               GenerateDebugInformation="true"
+                               SubSystem="0"
+                               TargetMachine="1"
+                       />
+                       <Tool
+                               Name="VCALinkTool"
+                       />
+                       <Tool
+                               Name="VCManifestTool"
+                       />
+                       <Tool
+                               Name="VCXDCMakeTool"
+                       />
+                       <Tool
+                               Name="VCBscMakeTool"
+                       />
+                       <Tool
+                               Name="VCFxCopTool"
+                       />
+                       <Tool
+                               Name="VCAppVerifierTool"
+                       />
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                               Description="get all the dlls, needed for running"
+                               CommandLine="copy $(ProjectDir)\..\contrib\bin\freetype6.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libcairo-2.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libfontconfig-1.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libglib-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libgmodule-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libgobject-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libgthread-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libpango-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libpangocairo-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libpangoft2-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libpangowin32-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libpng14-14.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libxml2-2.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\zlib1.dll $(TargetDir)\&#x0D;&#x0A;&#x0D;&#x0A;&#x0D;&#x0A;"
+                       />
+               </Configuration>
+               <Configuration
+                       Name="Release|Win32"
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+                       IntermediateDirectory="$(ConfigurationName)"
+                       ConfigurationType="1"
+                       CharacterSet="2"
+                       WholeProgramOptimization="1"
+                       >
+                       <Tool
+                               Name="VCPreBuildEventTool"
+                       />
+                       <Tool
+                               Name="VCCustomBuildTool"
+                       />
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCMIDLTool"
+                       />
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="2"
+                               EnableIntrinsicFunctions="true"
+                               AdditionalIncludeDirectories=".;../../contrib/cairo/include/cairo;&quot;../../contrib/pango/include/pango-1.0&quot;;&quot;../../contrib/glib/include/glib-2.0&quot;;&quot;../../contrib/glib/lib/glib-2.0/include&quot;;../../contrib/libpng/include;../../contrib/zlib/include;../../contrib/libxml2/include/libxml2"
+                               PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;"
+                               RuntimeLibrary="2"
+                               EnableFunctionLevelLinking="true"
+                               WarningLevel="3"
+                               DebugInformationFormat="3"
+                       />
+                       <Tool
+                               Name="VCManagedResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCPreLinkEventTool"
+                       />
+                       <Tool
+                               Name="VCLinkerTool"
+                               AdditionalDependencies="rrdlib.lib cairo.lib pango-1.0.lib pangocairo-1.0.lib libpng.lib zdll.lib glib-2.0.lib gobject-2.0.lib libxml2.lib"
+                               AdditionalLibraryDirectories="$(ConfigurationName); ../../contrib/cairo/lib;../../contrib/pango/lib;../../contrib/glib/lib;../../contrib/libpng/lib;../../contrib/zlib/lib;../../contrib/libxml2/lib"
+                               GenerateDebugInformation="true"
+                               OptimizeReferences="2"
+                               EnableCOMDATFolding="2"
+                               TargetMachine="1"
+                       />
+                       <Tool
+                               Name="VCALinkTool"
+                       />
+                       <Tool
+                               Name="VCManifestTool"
+                       />
+                       <Tool
+                               Name="VCXDCMakeTool"
+                       />
+                       <Tool
+                               Name="VCBscMakeTool"
+                       />
+                       <Tool
+                               Name="VCFxCopTool"
+                       />
+                       <Tool
+                               Name="VCAppVerifierTool"
+                       />
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                               Description="get all the dlls, needed for running"
+                               CommandLine="copy $(ProjectDir)\..\..\contrib\cairo\bin\libcairo-2.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libglib-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libgmodule-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libgobject-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\libpng\bin\libpng12-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpango-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpangocairo-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpangowin32-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\zlib\zlib1.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\libxml2\lib\libxml2.dll $(TargetDir)\&#x0D;&#x0A;"
+                       />
+               </Configuration>
+               <Configuration
+                       Name="Static Debug|Win32"
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+                       IntermediateDirectory="$(ConfigurationName)"
+                       ConfigurationType="1"
+                       CharacterSet="2"
+                       >
+                       <Tool
+                               Name="VCPreBuildEventTool"
+                       />
+                       <Tool
+                               Name="VCCustomBuildTool"
+                       />
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCMIDLTool"
+                       />
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="0"
+                               InlineFunctionExpansion="0"
+                               AdditionalIncludeDirectories=""
+                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
+                               MinimalRebuild="true"
+                               BasicRuntimeChecks="3"
+                               RuntimeLibrary="1"
+                               WarningLevel="3"
+                               DebugInformationFormat="4"
+                               DisableSpecificWarnings="4996"
+                       />
+                       <Tool
+                               Name="VCManagedResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCPreLinkEventTool"
+                       />
+                       <Tool
+                               Name="VCLinkerTool"
+                               AdditionalDependencies="rrdlib.lib cairo.lib"
+                               ShowProgress="2"
+                               AdditionalLibraryDirectories="&quot;$(ConfigurationName)&quot;;../contrib/lib"
+                               IgnoreDefaultLibraryNames=""
+                               GenerateDebugInformation="true"
+                               SubSystem="0"
+                               TargetMachine="1"
+                       />
+                       <Tool
+                               Name="VCALinkTool"
+                       />
+                       <Tool
+                               Name="VCManifestTool"
+                       />
+                       <Tool
+                               Name="VCXDCMakeTool"
+                       />
+                       <Tool
+                               Name="VCBscMakeTool"
+                       />
+                       <Tool
+                               Name="VCFxCopTool"
+                       />
+                       <Tool
+                               Name="VCAppVerifierTool"
+                       />
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                               Description="get all the dlls, needed for running"
+                               CommandLine="copy $(ProjectDir)\..\contrib\bin\freetype6.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libcairo-2.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libfontconfig-1.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libglib-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libgmodule-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libgobject-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libgthread-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libpango-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libpangocairo-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libpangoft2-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libpangowin32-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libpng14-14.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\libxml2-2.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\contrib\bin\zlib1.dll $(TargetDir)\&#x0D;&#x0A;&#x0D;&#x0A;&#x0D;&#x0A;"
+                       />
+               </Configuration>
+       </Configurations>
+       <References>
+               <ProjectReference
+                       ReferencedProjectIdentifier="{CC158E1D-1364-43CA-9B2D-4AF54225C7CA}"
+                       RelativePathToProject=".\rrdlib.vcproj"
+               />
+       </References>
+       <Files>
+               <Filter
+                       Name="Source Files"
+                       Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+                       >
+                       <File
+                               RelativePath="..\src\rrd_tool.c"
+                               >
+                       </File>
+               </Filter>
+               <Filter
+                       Name="Header Files"
+                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
+                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+                       >
+                       <File
+                               RelativePath=".\config.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath="..\src\rrd_tool.h"
+                               >
+                       </File>
+               </Filter>
+               <Filter
+                       Name="Resource Files"
+                       Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
+                       UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+                       >
+               </Filter>
+       </Files>
+       <Globals>
+       </Globals>
+</VisualStudioProject>