From f644268e40034efa762990d2019ce835690bff87 Mon Sep 17 00:00:00 2001 From: oetiker Date: Thu, 4 Dec 2008 07:02:56 +0000 Subject: [PATCH] Update to WIN32-BUILD-TIPS.txt and VC project files so that the rrdtool.exe can be built too. -- Stefan Ludewig Stefan.Ludewig exitgames.com git-svn-id: svn://svn.oetiker.ch/rrdtool/branches/1.3@1690 a5681a0c-68f1-0310-ab6d-d61299d08faa --- program/CONTRIBUTORS | 1 + program/WIN32-BUILD-TIPS.txt | 58 +++++- program/src/rrd_tool.c | 2 + program/win32/rrd.sln | 29 +++ program/win32/rrdtool.vcproj | 363 ++++++++++++++++++++--------------- 5 files changed, 293 insertions(+), 160 deletions(-) create mode 100644 program/win32/rrd.sln diff --git a/program/CONTRIBUTORS b/program/CONTRIBUTORS index b5fcbdeb..f3179789 100644 --- a/program/CONTRIBUTORS +++ b/program/CONTRIBUTORS @@ -61,6 +61,7 @@ Shane O'Donnell Simon Leinen Steen Linden Stefan Mueller HPUX 11 +Stefan Ludewig 1.3 WIN32 Port Steve Harris AIX portability Steve Rader (rrd_cgi debugging and LAST) Terminator rAT diff --git a/program/WIN32-BUILD-TIPS.txt b/program/WIN32-BUILD-TIPS.txt index 7d731c83..67d2dd9b 100644 --- a/program/WIN32-BUILD-TIPS.txt +++ b/program/WIN32-BUILD-TIPS.txt @@ -1,5 +1,61 @@ -Compiling RRDtool 1.1.x on Win32 with Microsoft Visual C++: +Compiling RRDtool on Win32 with Microsoft Visual C++: --------------------------------------------------------------- +2008-03-12 Stefan Ludewig stefan.ludewig@exitgames.com + +Here are step by step instructions for building rrdlib.lib and rrdtool.exe +version 1.3.5 and newer with Microsoft Visual Studio 2008 (9.0.x). + +(1) Download and extract libraries rrdtool depends on: + + - cairo: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo_1.8.0-1_win32.zip + and http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo-dev_1.8.0-1_win32.zip + + - glib: http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib_2.18.3-1_win32.zip + and http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib-dev_2.18.3-1_win32.zip + + - libpng: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libpng_1.2.32-1_win32.zip + and http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libpng-dev_1.2.32-1_win32.zip + + - libxml2: http://downloads.sourceforge.net/gnuwin32/libxml2-2.4.12-bin.zip?modtime=1009062000&big_mirror=1 + and http://downloads.sourceforge.net/gnuwin32/libxml2-2.4.12-1-lib.zip?modtime=1024783200&big_mirror=1 + + - pango: http://ftp.gnome.org/pub/gnome/binaries/win32/pango/1.22/pango_1.22.2-1_win32.zip + and http://ftp.gnome.org/pub/gnome/binaries/win32/pango/1.22/pango-dev_1.22.2-1_win32.zip + + - zlib: http://www.zlib.net/zlib123-dll.zip + +(2) Create a folder named "contrib" next to your rrdtool-folder. + +(3) Copy the following folders and files from the downloaded archieves into + the contrib-folder, you just created: + + a) The folder "bin" from cairo_1.8.0-1_win32 and the folders "lib" and + "include" from cairo-dev_1.8.0-1_win32 into contrib/cairo. + + b) The folder "bin" from glib_2.18.3-1_win32 and the folders "lib" and + "include" from glib-dev_2.18.3-1_win32 into contrib/glib + + c) The folder "bin" from libpng_1.2.32-1_win32 and the folders "lib" and + "include" from libpng-dev_1.2.32-1_win32 into contrib/libpng + + d) The file "libxml2.dll" from libxml2-2.4.12-bin/bin and the file + "libxml2.lib" from libxml2-2.4.12-1-lib\lib into contrib/libxml2/lib and + the folder "include" from from libxml2-2.4.12-1-lib into contrib/libxml2 + + e) The folder "bin" from pango_1.22.2-1_win32 and the folders "lib" and + "include" from pango-dev_1.22.2-1_win32 into contrib/pango + + f) The folders "lib" and "include" and the file "zlib1.dll" into + contrib/zlib + +(4) Open the Visual Studio 2008 Solution "rrd.sln" in the win32 folder of + your rrdtool-folder and build either the project rrdlib (for the + rrdtool-library), rrdtool (for the rrdtool-executable depending on the + libraray) or the complete solution. A post-build event automatically copies + all the dlls, needed by rrdtool, next to the .exe, when you build the + executable. These DLLs must be available on all hosts where rrdtool will + run. + 5/1/05 Tobi to help windows deal with the reentrant versions of many unix calls link with win32comp.c diff --git a/program/src/rrd_tool.c b/program/src/rrd_tool.c index a9d11b8e..9664e227 100644 --- a/program/src/rrd_tool.c +++ b/program/src/rrd_tool.c @@ -6,6 +6,8 @@ #if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__CYGWIN32__) && !defined(HAVE_CONFIG_H) #include "../win32/config.h" +#include +#include #else #ifdef HAVE_CONFIG_H #include "../rrd_config.h" diff --git a/program/win32/rrd.sln b/program/win32/rrd.sln new file mode 100644 index 00000000..7f07ad3a --- /dev/null +++ b/program/win32/rrd.sln @@ -0,0 +1,29 @@ + +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 + Release|Win32 = Release|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}.Release|Win32.ActiveCfg = Release|Win32 + {CC158E1D-1364-43CA-9B2D-4AF54225C7CA}.Release|Win32.Build.0 = Release|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}.Release|Win32.ActiveCfg = Release|Win32 + {11CD05F8-E5E1-476E-A75F-A112655D4E94}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/program/win32/rrdtool.vcproj b/program/win32/rrdtool.vcproj index 7ba111ae..e98dd8bd 100644 --- a/program/win32/rrdtool.vcproj +++ b/program/win32/rrdtool.vcproj @@ -1,159 +1,204 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- 2.30.2