Update to rrdtool v1.2.19
This commit is contained in:
parent
423fb904e3
commit
250cc0dd8d
@ -4,3 +4,4 @@ php4-svn839.tar.gz
|
|||||||
rrdtool-1.2.15.tar.gz
|
rrdtool-1.2.15.tar.gz
|
||||||
rrdtool-1.2.17.tar.gz
|
rrdtool-1.2.17.tar.gz
|
||||||
rrdtool-1.2.18.tar.gz
|
rrdtool-1.2.18.tar.gz
|
||||||
|
rrdtool-1.2.19.tar.gz
|
||||||
|
@ -1,36 +0,0 @@
|
|||||||
diff -ur rrdtool-1.2.15.orig/bindings/python/rrdtoolmodule.c rrdtool-1.2.15/bindings/python/rrdtoolmodule.c
|
|
||||||
--- rrdtool-1.2.15.orig/bindings/python/rrdtoolmodule.c 2006-07-14 08:11:26.000000000 -0400
|
|
||||||
+++ rrdtool-1.2.15/bindings/python/rrdtoolmodule.c 2006-08-02 10:20:38.000000000 -0400
|
|
||||||
@@ -48,8 +48,7 @@
|
|
||||||
extern int opterr;
|
|
||||||
|
|
||||||
/* forward declaration to keep compiler happy */
|
|
||||||
-/*void initrrdtool(void);*/
|
|
||||||
-void initrrdtoolmodule(void);
|
|
||||||
+void initrrdtool(void);
|
|
||||||
|
|
||||||
static int
|
|
||||||
create_args(char *command, PyObject *args, int *argc, char ***argv)
|
|
||||||
@@ -518,19 +517,18 @@
|
|
||||||
|
|
||||||
/* Initialization function for the module */
|
|
||||||
void
|
|
||||||
-/*initrrdtool(void)*/
|
|
||||||
-initrrdtoolmodule(void)
|
|
||||||
+initrrdtool(void)
|
|
||||||
{
|
|
||||||
PyObject *m, *d, *t;
|
|
||||||
|
|
||||||
/* Create the module and add the functions */
|
|
||||||
- m = Py_InitModule("rrdtoolmodule", _rrdtool_methods);
|
|
||||||
+ m = Py_InitModule("rrdtool", _rrdtool_methods);
|
|
||||||
|
|
||||||
/* Add some symbolic constants to the module */
|
|
||||||
d = PyModule_GetDict(m);
|
|
||||||
|
|
||||||
SET_STRCONSTANT(d, __version__);
|
|
||||||
- ErrorObject = PyErr_NewException("rrdtoolmodule.error", NULL, NULL);
|
|
||||||
+ ErrorObject = PyErr_NewException("rrdtool.error", NULL, NULL);
|
|
||||||
PyDict_SetItemString(d, "error", ErrorObject);
|
|
||||||
|
|
||||||
/* Check for errors */
|
|
@ -1,135 +0,0 @@
|
|||||||
diff -urp rrdtool-1.2.15.orig/src/rrd_graph.c rrdtool-1.2.15/src/rrd_graph.c
|
|
||||||
--- rrdtool-1.2.15.orig/src/rrd_graph.c 2006-07-14 08:11:26.000000000 -0400
|
|
||||||
+++ rrdtool-1.2.15/src/rrd_graph.c 2006-12-14 15:37:05.000000000 -0500
|
|
||||||
@@ -1060,8 +1060,9 @@ data_proc( image_desc_t *im ){
|
|
||||||
** relevant for min and max
|
|
||||||
*/
|
|
||||||
if (finite(paintval) && im->gdes[ii].gf != GF_TICK ) {
|
|
||||||
- if (isnan(minval) || paintval < minval)
|
|
||||||
- minval = paintval;
|
|
||||||
+ if ((isnan(minval) || paintval < minval ) &&
|
|
||||||
+ ! (im->logarithmic && paintval <= 0.0))
|
|
||||||
+ minval = paintval;
|
|
||||||
if (isnan(maxval) || paintval > maxval)
|
|
||||||
maxval = paintval;
|
|
||||||
}
|
|
||||||
@@ -1710,6 +1711,35 @@ double frexp10(double x, double *e) {
|
|
||||||
return mnt;
|
|
||||||
}
|
|
||||||
|
|
||||||
+static int AlmostEqual2sComplement (float A, float B, int maxUlps)
|
|
||||||
+{
|
|
||||||
+
|
|
||||||
+ int aInt = *(int*)&A;
|
|
||||||
+ int bInt = *(int*)&B;
|
|
||||||
+ int intDiff;
|
|
||||||
+ /* Make sure maxUlps is non-negative and small enough that the
|
|
||||||
+ default NAN won't compare as equal to anything. */
|
|
||||||
+
|
|
||||||
+ /* assert(maxUlps > 0 && maxUlps < 4 * 1024 * 1024); */
|
|
||||||
+
|
|
||||||
+ /* Make aInt lexicographically ordered as a twos-complement int */
|
|
||||||
+
|
|
||||||
+ if (aInt < 0)
|
|
||||||
+ aInt = 0x80000000l - aInt;
|
|
||||||
+
|
|
||||||
+ /* Make bInt lexicographically ordered as a twos-complement int */
|
|
||||||
+
|
|
||||||
+ if (bInt < 0)
|
|
||||||
+ bInt = 0x80000000l - bInt;
|
|
||||||
+
|
|
||||||
+ intDiff = abs(aInt - bInt);
|
|
||||||
+
|
|
||||||
+ if (intDiff <= maxUlps)
|
|
||||||
+ return 1;
|
|
||||||
+
|
|
||||||
+ return 0;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
/* logaritmic horizontal grid */
|
|
||||||
int
|
|
||||||
horizontal_log_grid(image_desc_t *im)
|
|
||||||
@@ -1719,7 +1749,8 @@ horizontal_log_grid(image_desc_t *im)
|
|
||||||
{1.0, 5.0, 10., 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
|
|
||||||
{1.0, 2.0, 5.0, 7.0, 10., 0.0, 0.0, 0.0, 0.0, 0.0},
|
|
||||||
{1.0, 2.0, 4.0, 6.0, 8.0, 10., 0.0, 0.0, 0.0, 0.0},
|
|
||||||
- {1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.}};
|
|
||||||
+ {1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.},
|
|
||||||
+ {0,0,0,0,0, 0,0,0,0,0} /* last line */ };
|
|
||||||
|
|
||||||
int i, j, val_exp, min_exp;
|
|
||||||
double nex; /* number of decades in data */
|
|
||||||
@@ -1728,7 +1759,7 @@ horizontal_log_grid(image_desc_t *im)
|
|
||||||
int mid = -1; /* row in yloglab for major grid */
|
|
||||||
double mspac; /* smallest major grid spacing (pixels) */
|
|
||||||
int flab; /* first value in yloglab to use */
|
|
||||||
- double value, tmp;
|
|
||||||
+ double value, tmp, pre_value;
|
|
||||||
double X0,X1,Y0;
|
|
||||||
char graph_label[100];
|
|
||||||
|
|
||||||
@@ -1747,11 +1778,11 @@ horizontal_log_grid(image_desc_t *im)
|
|
||||||
mid++;
|
|
||||||
for(i = 0; yloglab[mid][i + 1] < 10.0; i++);
|
|
||||||
mspac = logscale * log10(10.0 / yloglab[mid][i]);
|
|
||||||
- } while(mspac > 2 * im->text_prop[TEXT_PROP_LEGEND].size && mid < 5);
|
|
||||||
+ } while(mspac > 2 * im->text_prop[TEXT_PROP_LEGEND].size && yloglab[mid][0] > 0);
|
|
||||||
if(mid) mid--;
|
|
||||||
|
|
||||||
/* find first value in yloglab */
|
|
||||||
- for(flab = 0; frexp10(im->minval, &tmp) > yloglab[mid][flab]; flab++);
|
|
||||||
+ for(flab = 0; yloglab[mid][flab] < 10 && frexp10(im->minval, &tmp) > yloglab[mid][flab] ; flab++);
|
|
||||||
if(yloglab[mid][flab] == 10.0) {
|
|
||||||
tmp += 1.0;
|
|
||||||
flab = 0;
|
|
||||||
@@ -1763,8 +1794,13 @@ horizontal_log_grid(image_desc_t *im)
|
|
||||||
X1=im->xorigin+im->xsize;
|
|
||||||
|
|
||||||
/* draw grid */
|
|
||||||
- while(1) {
|
|
||||||
+ pre_value = DNAN;
|
|
||||||
+ while(1) {
|
|
||||||
+
|
|
||||||
value = yloglab[mid][flab] * pow(10.0, val_exp);
|
|
||||||
+ if ( AlmostEqual2sComplement(value,pre_value,4) ) break; /* it seems we are not converging */
|
|
||||||
+
|
|
||||||
+ pre_value = value;
|
|
||||||
|
|
||||||
Y0 = ytr(im, value);
|
|
||||||
if(Y0 <= im->yorigin - im->ysize) break;
|
|
||||||
@@ -2484,34 +2520,6 @@ graph_size_location(image_desc_t *im, in
|
|
||||||
/* yes we are loosing precision by doing tos with floats instead of doubles
|
|
||||||
but it seems more stable this way. */
|
|
||||||
|
|
||||||
-static int AlmostEqual2sComplement (float A, float B, int maxUlps)
|
|
||||||
-{
|
|
||||||
-
|
|
||||||
- int aInt = *(int*)&A;
|
|
||||||
- int bInt = *(int*)&B;
|
|
||||||
- int intDiff;
|
|
||||||
- /* Make sure maxUlps is non-negative and small enough that the
|
|
||||||
- default NAN won't compare as equal to anything. */
|
|
||||||
-
|
|
||||||
- /* assert(maxUlps > 0 && maxUlps < 4 * 1024 * 1024); */
|
|
||||||
-
|
|
||||||
- /* Make aInt lexicographically ordered as a twos-complement int */
|
|
||||||
-
|
|
||||||
- if (aInt < 0)
|
|
||||||
- aInt = 0x80000000l - aInt;
|
|
||||||
-
|
|
||||||
- /* Make bInt lexicographically ordered as a twos-complement int */
|
|
||||||
-
|
|
||||||
- if (bInt < 0)
|
|
||||||
- bInt = 0x80000000l - bInt;
|
|
||||||
-
|
|
||||||
- intDiff = abs(aInt - bInt);
|
|
||||||
-
|
|
||||||
- if (intDiff <= maxUlps)
|
|
||||||
- return 1;
|
|
||||||
-
|
|
||||||
- return 0;
|
|
||||||
-}
|
|
||||||
|
|
||||||
/* draw that picture thing ... */
|
|
||||||
int
|
|
||||||
Only in rrdtool-1.2.15/src: rrd_graph.c.orig
|
|
@ -1,35 +0,0 @@
|
|||||||
Index: rrdtool/src/rrd_not_thread_safe.c
|
|
||||||
===================================================================
|
|
||||||
--- rrdtool/src/rrd_not_thread_safe.c (revision 860)
|
|
||||||
+++ rrdtool/src/rrd_not_thread_safe.c (revision 935)
|
|
||||||
@@ -15,18 +15,24 @@
|
|
||||||
#define ERRBUFLEN 256
|
|
||||||
|
|
||||||
-static char rrd_error[MAXLEN] = "\0";
|
|
||||||
-static char rrd_liberror[ERRBUFLEN] = "\0";
|
|
||||||
+static char rrd_error[MAXLEN+10];
|
|
||||||
+static char rrd_liberror[ERRBUFLEN+10];
|
|
||||||
+static int rrd_context_init = 0;
|
|
||||||
/* The global context is very useful in the transition period to even
|
|
||||||
more thread-safe stuff, it can be used whereever we need a context
|
|
||||||
and do not need to worry about concurrency. */
|
|
||||||
static struct rrd_context global_ctx = {
|
|
||||||
- sizeof(rrd_error),
|
|
||||||
- sizeof(rrd_liberror),
|
|
||||||
+ MAXLEN,
|
|
||||||
+ ERRBUFLEN,
|
|
||||||
rrd_error,
|
|
||||||
rrd_liberror
|
|
||||||
};
|
|
||||||
-#include <stdarg.h>
|
|
||||||
+/* #include <stdarg.h> */
|
|
||||||
|
|
||||||
-struct rrd_context *rrd_get_context() {
|
|
||||||
+struct rrd_context *rrd_get_context(void) {
|
|
||||||
+ if (! rrd_context_init ){
|
|
||||||
+ rrd_context_init = 1;
|
|
||||||
+ global_ctx.rrd_error[0]='\0';
|
|
||||||
+ global_ctx.lib_errstr[0]='\0';
|
|
||||||
+ }
|
|
||||||
return &global_ctx;
|
|
||||||
}
|
|
22
rrdtool-1.2.19-python.patch
Normal file
22
rrdtool-1.2.19-python.patch
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
diff -uNr bindings/python-orig/Makefile.am bindings/python/Makefile.am
|
||||||
|
--- bindings/python-orig/Makefile.am 2007-03-31 11:21:43.000000000 +0100
|
||||||
|
+++ bindings/python/Makefile.am 2007-03-31 11:24:47.000000000 +0100
|
||||||
|
@@ -2,6 +2,7 @@
|
||||||
|
|
||||||
|
pyexec_PROGRAMS = rrdtoolmodule.so
|
||||||
|
|
||||||
|
+rrdtoolmodule_so_LDFLAGS = -module -shared
|
||||||
|
rrdtoolmodule_so_LDADD = $(top_builddir)/src/librrd.la
|
||||||
|
rrdtoolmodule_so_SOURCES = rrdtoolmodule.c
|
||||||
|
|
||||||
|
diff -uNr bindings/python-orig/Makefile.in bindings/python/Makefile.in
|
||||||
|
--- bindings/python-orig/Makefile.in 2007-03-31 11:21:43.000000000 +0100
|
||||||
|
+++ bindings/python/Makefile.in 2007-03-31 11:22:14.000000000 +0100
|
||||||
|
@@ -233,6 +233,7 @@
|
||||||
|
target_os = @target_os@
|
||||||
|
target_vendor = @target_vendor@
|
||||||
|
AM_CPPFLAGS = @CFLAGS@ -I$(top_srcdir)/src @PYTHON_INCLUDES@
|
||||||
|
+rrdtoolmodule_so_LDFLAGS = -module -shared
|
||||||
|
rrdtoolmodule_so_LDADD = $(top_builddir)/src/librrd.la
|
||||||
|
rrdtoolmodule_so_SOURCES = rrdtoolmodule.c
|
||||||
|
noinst_HEADERS = rrd_extra.h
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
Summary: Round Robin Database Tool to store and display time-series data
|
Summary: Round Robin Database Tool to store and display time-series data
|
||||||
Name: rrdtool
|
Name: rrdtool
|
||||||
Version: 1.2.18
|
Version: 1.2.19
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
License: GPL
|
License: GPL
|
||||||
Group: Applications/Databases
|
Group: Applications/Databases
|
||||||
@ -14,6 +14,7 @@ URL: http://people.ee.ethz.ch/~oetiker/webtools/%{name}/
|
|||||||
Source0: http://people.ee.ethz.ch/~oetiker/webtools/%{name}/pub/%{name}-%{version}.tar.gz
|
Source0: http://people.ee.ethz.ch/~oetiker/webtools/%{name}/pub/%{name}-%{version}.tar.gz
|
||||||
Source1: php4-svn%{php_rrd_svn}.tar.gz
|
Source1: php4-svn%{php_rrd_svn}.tar.gz
|
||||||
Patch0: rrdtool-1.2.13-php.patch
|
Patch0: rrdtool-1.2.13-php.patch
|
||||||
|
Patch1: rrdtool-1.2.19-python.patch
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
BuildRequires: gcc-c++, openssl-devel, freetype-devel
|
BuildRequires: gcc-c++, openssl-devel, freetype-devel
|
||||||
BuildRequires: libpng-devel, zlib-devel, libart_lgpl-devel >= 2.0
|
BuildRequires: libpng-devel, zlib-devel, libart_lgpl-devel >= 2.0
|
||||||
@ -111,6 +112,7 @@ The %{name}-tcl package includes RRDtool bindings for Tcl.
|
|||||||
%patch0 -p0 -b .php
|
%patch0 -p0 -b .php
|
||||||
%{__perl} -pi -e 's|../config.h|../rrd_config.h|g' php4/rrdtool.c
|
%{__perl} -pi -e 's|../config.h|../rrd_config.h|g' php4/rrdtool.c
|
||||||
%endif
|
%endif
|
||||||
|
%patch1 -p0 -b .python
|
||||||
|
|
||||||
# Fix to find correct python dir on lib64
|
# Fix to find correct python dir on lib64
|
||||||
%{__perl} -pi -e 's|get_python_lib\(0,0,prefix|get_python_lib\(1,0,prefix|g' \
|
%{__perl} -pi -e 's|get_python_lib\(0,0,prefix|get_python_lib\(1,0,prefix|g' \
|
||||||
@ -269,6 +271,9 @@ find examples/ -type f -exec chmod 0644 {} \;
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Apr 09 2007 Jarod Wilson <jwilson@redhat.com> 1.2.19-1
|
||||||
|
- New upstream release
|
||||||
|
|
||||||
* Tue Jan 23 2007 Jarod Wilson <jwilson@redhat.com> 1.2.18-1
|
* Tue Jan 23 2007 Jarod Wilson <jwilson@redhat.com> 1.2.18-1
|
||||||
- New upstream release
|
- New upstream release
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user