site-python-install: all
cd bindings/python && $(PYTHON) setup.py install $(if $(DESTDIR),--root=$(DESTDIR))
+# Skip this part of "make distcheck": the perl, ruby, and tcl files
+# are not uninstalled by "make uninstall".
+distuninstallcheck:
+ @:
+
# find . -name "*.c" -or -name "*.h" | xargs perl -0777 -n -e 'while (s/typedef\s+(?:unsigned\s+|signed\s+|unival\s+)?\S+\s+\*?([^{}\s;(]+)//){print "-T$1\n"}'
indent:
find ./ -name "*.[ch]" | xargs indent
TCL_STUB_LIB_SPEC = @TCL_STUB_LIB_SPEC@
TCL_INCLUDE_SPEC = @TCL_INCLUDE_SPEC@
-CLEANFILES = tclrrd.o tclrrd.so
-
SRC_DIR = $(top_srcdir)/src
AM_CPPFLAGS = $(TCL_INCLUDE_SPEC) -I$(top_builddir)/src -I$(SRC_DIR) -DUSE_TCL_STUBS
LIBDIRS = -L$(top_builddir)/src/.libs -L$(top_builddir)/src -L$(libdir)
@$(NORMAL_INSTALL)
$(INSTALL_PROGRAM) $(TCL_RRD_LIB) $(DESTDIR)$(libdir)/$(TCL_RRD_LIB)
+CLEANFILES = tclrrd.o tclrrd.so $(TCL_RRD_LIB) pkgIndex.tcl
+
tune1 tune1-testa-mod1.dump tune1-testa-mod2.dump tune1-testorg.dump \
tune2 tune2-testa-mod1.dump tune2-testorg.dump \
valgrind-supressions
-CLEANFILES = ct.out dur.out modify5-testa1-mod.dump modify5-testa2-mod.dump
+# NB: AM_TESTS_ENVIRONMENT not available until automake 1.12
+TESTS_ENVIRONMENT = \
+ BASEDIR=${abs_srcdir} ; export BASEDIR ; \
+ BUILDDIR=${abs_builddir} ; export BUILDDIR ; \
+ TOP_BUILDDIR=${abs_top_builddir} ; export TOP_BUILDDIR ;
+CLEANFILES = *.rrd \
+ ct.out dur.out \
+ modify5-testa1-mod.dump modify5-testa2-mod.dump
TZ=CET
export TZ
-BASEDIR=$(dirname $0)
+BASEDIR=${BASEDIR:-$(dirname $0)}
+BUILDDIR=${BUILDDIR:-${BASEDIR}}
+TOP_BUILDDIR=${TOP_BUILDDIR:-${BASEDIR}/..}
if [ -z "$RRDTOOL" ] ; then
case "$TESTS_STYLE" in
valgrind)
--error-exitcode=111 \
--track-fds=yes \
--free-fill=ad \
- $BASEDIR/../src/rrdtool"
+ $TOP_BUILDDIR/src/rrdtool"
;;
*)
- RRDTOOL=$BASEDIR/../src/rrdtool
+ RRDTOOL=$TOP_BUILDDIR/src/rrdtool
;;
esac
fi
. $(dirname $0)/functions
BASE=$BASEDIR/modify-test1
+BUILD=$BUILDDIR/modify-test1
DIFF="diff -u"
-$RRDTOOL create ${BASE}a.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:10 RRA:AVERAGE:0.5:5:10
+$RRDTOOL create ${BUILD}a.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:10 RRA:AVERAGE:0.5:5:10
# add 50 values to
N=10
for T in $(seq 1300000020 60 1300003020) ; do
- $RRDTOOL update ${BASE}a.rrd --template a $T:$N || fail "update"
+ $RRDTOOL update ${BUILD}a.rrd --template a $T:$N || fail "update"
let N=$N+10
done
-$RRDTOOL dump ${BASE}a.rrd | $DIFF - $BASEDIR/modify-test1.create.dump && ok "create" || fail "create"
+$RRDTOOL dump ${BUILD}a.rrd | $DIFF - ${BASE}.create.dump && ok "create" || fail "create"
# extend base RRA, refill from coarse RRA
-cp ${BASE}a.rrd ${BASE}b.rrd
-$RRDTOOL tune ${BASE}b.rrd RRA#0:+10 || fail "tune"
-$RRDTOOL dump ${BASE}b.rrd | $DIFF - $BASEDIR/modify-test1.mod1.dump && ok "extend base RRA" || fail "extend base RRA"
+cp ${BUILD}a.rrd ${BUILD}b.rrd
+$RRDTOOL tune ${BUILD}b.rrd RRA#0:+10 || fail "tune"
+$RRDTOOL dump ${BUILD}b.rrd | $DIFF - ${BASE}.mod1.dump && ok "extend base RRA" || fail "extend base RRA"
. $(dirname $0)/functions
BASE=$BASEDIR/modify2-test
+BUILD=$BUILDDIR/modify2-test
-
-
-$RRDTOOL create ${BASE}a.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2 || fail create
+$RRDTOOL create ${BUILD}a.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2 || fail create
# add 50 values to
N=10
for T in $(seq 1300000020 60 1300003020) ; do
- $RRDTOOL update ${BASE}a.rrd --template a $T:$N || fail update
+ $RRDTOOL update ${BUILD}a.rrd --template a $T:$N || fail update
let N=$N+10
done
-$RRDTOOL dump ${BASE}a.rrd | $DIFF ${BASE}a-create.dump -
+$RRDTOOL dump ${BUILD}a.rrd | $DIFF ${BASE}a-create.dump -
report create
-cp ${BASE}a.rrd ${BASE}b.rrd
-$RRDTOOL tune ${BASE}b.rrd RRA#1:+10 RRA#2:+10 RRA#3:+10 RRA#4:+10 || fail modify
-$RRDTOOL dump ${BASE}b.rrd | $DIFF ${BASE}b-mod1.dump -
+cp ${BUILD}a.rrd ${BUILD}b.rrd
+$RRDTOOL tune ${BUILD}b.rrd RRA#1:+10 RRA#2:+10 RRA#3:+10 RRA#4:+10 || fail modify
+$RRDTOOL dump ${BUILD}b.rrd | $DIFF ${BASE}b-mod1.dump -
report "simultaneously extend aggregate RRAs"
-cp ${BASE}a.rrd ${BASE}c.rrd
-$RRDTOOL tune ${BASE}c.rrd RRA:AVERAGE:0.5:2:10 || fail modify
-$RRDTOOL dump ${BASE}c.rrd | $DIFF ${BASE}c-mod1.dump -
+cp ${BUILD}a.rrd ${BUILD}c.rrd
+$RRDTOOL tune ${BUILD}c.rrd RRA:AVERAGE:0.5:2:10 || fail modify
+$RRDTOOL dump ${BUILD}c.rrd | $DIFF ${BASE}c-mod1.dump -
report "add RRA with intermediate pdp_cnt"
. $(dirname $0)/functions
BASE=$BASEDIR/modify-test3
+BUILD=$BUILDDIR/modify-test3
-$RRDTOOL create ${BASE}a.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U DS:b:GAUGE:120:0:U DS:c:GAUGE:120:0:U RRA:AVERAGE:0.5:1:10 RRA:AVERAGE:0.5:5:10
+$RRDTOOL create ${BUILD}a.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U DS:b:GAUGE:120:0:U DS:c:GAUGE:120:0:U RRA:AVERAGE:0.5:1:10 RRA:AVERAGE:0.5:5:10
# add 50 values to
N=10
for T in $(seq 1300000020 60 1300003020) ; do
- $RRDTOOL update ${BASE}a.rrd --template a:b:c $T:$N:$((10000+$N)):$((20000+$N)) || fail update
+ $RRDTOOL update ${BUILD}a.rrd --template a:b:c $T:$N:$((10000+$N)):$((20000+$N)) || fail update
let N=$N+10
done
-$RRDTOOL dump ${BASE}a.rrd | diff - $BASEDIR/modify-test3.create.dump && ok "create" || fail "create"
+$RRDTOOL dump ${BUILD}a.rrd | diff - ${BASE}.create.dump && ok "create" || fail "create"
# extend base RRA, refill from coarse RRA
-cp ${BASE}a.rrd ${BASE}b.rrd
-$RRDTOOL tune ${BASE}b.rrd DEL:a RRA#0:+10 || fail modify
+cp ${BUILD}a.rrd ${BUILD}b.rrd
+$RRDTOOL tune ${BUILD}b.rrd DEL:a RRA#0:+10 || fail modify
-$RRDTOOL dump ${BASE}b.rrd | diff - $BASEDIR/modify-test3.mod1.dump && ok "extend base RRA" || fail "extend base RRA"
+$RRDTOOL dump ${BUILD}b.rrd | diff - ${BASE}.mod1.dump && ok "extend base RRA" || fail "extend base RRA"
. $(dirname $0)/functions
BASE=$BASEDIR/modify4-test
-
+BUILD=$BUILDDIR/modify4-test
# create 2 RRDs only differing in the way that the second contains an additional RRA
# test: remove the additional RRA from the second and compare dumps
# test: add the additional RRA to the first and compare dumps
-$RRDTOOL create ${BASE}a1.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2 || fail create1
-$RRDTOOL create ${BASE}a2.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2 RRA:AVERAGE:0.5:4:10 || fail create2
+$RRDTOOL create ${BUILD}a1.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2 || fail create1
+$RRDTOOL create ${BUILD}a2.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2 RRA:AVERAGE:0.5:4:10 || fail create2
# add 50 values - note that we do NOT add it exactly for boundary times, and
# that we end at a NON CDP boundary for 5-PDP RRAs:
N=10
for T in $(seq 1300000050 60 1300002990) ; do
- $RRDTOOL update ${BASE}a1.rrd --template a $T:$N || fail update1
- $RRDTOOL update ${BASE}a2.rrd --template a $T:$N || fail update2
+ $RRDTOOL update ${BUILD}a1.rrd --template a $T:$N || fail update1
+ $RRDTOOL update ${BUILD}a2.rrd --template a $T:$N || fail update2
let N=$N+10
done
-$RRDTOOL dump ${BASE}a1.rrd | $DIFF ${BASE}a1-create.dump -
+$RRDTOOL dump ${BUILD}a1.rrd | $DIFF ${BASE}a1-create.dump -
report create 1
-$RRDTOOL dump ${BASE}a2.rrd | $DIFF ${BASE}a2-create.dump -
+$RRDTOOL dump ${BUILD}a2.rrd | $DIFF ${BASE}a2-create.dump -
report create 2
-cp ${BASE}a2.rrd ${BASE}b2.rrd
-$RRDTOOL tune ${BASE}b2.rrd DELRRA:5 || fail modify
+cp ${BUILD}a2.rrd ${BUILD}b2.rrd
+$RRDTOOL tune ${BUILD}b2.rrd DELRRA:5 || fail modify
-$RRDTOOL dump ${BASE}b2.rrd | $DIFF ${BASE}a1-create.dump -
+$RRDTOOL dump ${BUILD}b2.rrd | $DIFF ${BASE}a1-create.dump -
report "remove additional RRA from second - must then be equal original first"
-cp ${BASE}a1.rrd ${BASE}b1.rrd
-$RRDTOOL tune ${BASE}b1.rrd RRA:AVERAGE:0.5:4:10 || fail modify
+cp ${BUILD}a1.rrd ${BUILD}b1.rrd
+$RRDTOOL tune ${BUILD}b1.rrd RRA:AVERAGE:0.5:4:10 || fail modify
-$RRDTOOL dump ${BASE}b1.rrd | $DIFF ${BASE}a2-create.dump -
+$RRDTOOL dump ${BUILD}b1.rrd | $DIFF ${BASE}a2-create.dump -
report "add additional RRA to first - must then be equal original second"
. $(dirname $0)/functions
BASE=$BASEDIR/modify5-test
-
+BUILD=$BUILDDIR/modify5-test
# create 2 RRDs only differing in the way that the second contains an additional RRA
# test: remove the additional RRA from the second and compare dumps
# test: add the additional RRA to the first and compare dumps
-$RRDTOOL create ${BASE}a1.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2 || fail create1
-$RRDTOOL create ${BASE}a2.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2 RRA:AVERAGE:0.5:4:10 || fail create2
+$RRDTOOL create ${BUILD}a1.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2 || fail create1
+$RRDTOOL create ${BUILD}a2.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2 RRA:AVERAGE:0.5:4:10 || fail create2
# add 50 values - note that we do NOT add it exactly for boundary times, and
# that we end at a NON CDP boundary for 5-PDP RRAs:
UPDATE_STRING="$UPDATE_STRING $T:$N"
let N=$N+10
done
-$RRDTOOL update ${BASE}a1.rrd --template a $UPDATE_STRING || fail update1
-$RRDTOOL update ${BASE}a2.rrd --template a $UPDATE_STRING || fail update2
+$RRDTOOL update ${BUILD}a1.rrd --template a $UPDATE_STRING || fail update1
+$RRDTOOL update ${BUILD}a2.rrd --template a $UPDATE_STRING || fail update2
-$RRDTOOL dump ${BASE}a1.rrd | $DIFF ${BASE}a1-create.dump -
+$RRDTOOL dump ${BUILD}a1.rrd | $DIFF ${BASE}a1-create.dump -
report create 1
-$RRDTOOL dump ${BASE}a2.rrd | $DIFF ${BASE}a2-create.dump -
+$RRDTOOL dump ${BUILD}a2.rrd | $DIFF ${BASE}a2-create.dump -
report create 2
for U in 1300003010:200 1300003070:102 1300003130:777 1300003190:645 1300003250:122 1300003310:981 1300003323:223 1300003381:721 1300003445:821 1300003500:221 1300003562:231 1300003637:542 1300003699:734 1300003769:9231 1300003823:17
do
echo ---------------------iterate--------------------------
# update both - both contain same data
- $RRDTOOL update ${BASE}a1.rrd --template a $U
- $RRDTOOL update ${BASE}a2.rrd --template a $U
+ $RRDTOOL update ${BUILD}a1.rrd --template a $U
+ $RRDTOOL update ${BUILD}a2.rrd --template a $U
# dump current state for later comparison
- $RRDTOOL dump ${BASE}a1.rrd > ${BASE}a1-mod.dump
- $RRDTOOL dump ${BASE}a2.rrd > ${BASE}a2-mod.dump
+ $RRDTOOL dump ${BUILD}a1.rrd > ${BUILD}a1-mod.dump
+ $RRDTOOL dump ${BUILD}a2.rrd > ${BUILD}a2-mod.dump
# remove RRA 5 from second RRD, should now match first RRD
- cp ${BASE}a2.rrd ${BASE}b2.rrd
- $RRDTOOL tune ${BASE}b2.rrd DELRRA:5
+ cp ${BUILD}a2.rrd ${BUILD}b2.rrd
+ $RRDTOOL tune ${BUILD}b2.rrd DELRRA:5
- $RRDTOOL dump ${BASE}b2.rrd | $DIFF ${BASE}a1-mod.dump -
+ $RRDTOOL dump ${BUILD}b2.rrd | $DIFF ${BUILD}a1-mod.dump -
report "remove additional RRA from second - must then be equal original first"
# add RRA to first RRD, should now match second RRD
- cp ${BASE}a1.rrd ${BASE}b1.rrd
- $RRDTOOL tune ${BASE}b1.rrd RRA:AVERAGE:0.5:4:10
+ cp ${BUILD}a1.rrd ${BUILD}b1.rrd
+ $RRDTOOL tune ${BUILD}b1.rrd RRA:AVERAGE:0.5:4:10
- $RRDTOOL dump ${BASE}b1.rrd | $DIFF ${BASE}a2-mod.dump -
+ $RRDTOOL dump ${BUILD}b1.rrd | $DIFF ${BUILD}a2-mod.dump -
report "add additional RRA to first - must then be equal original second"
done
RRA:MAX:0.5:1d:600d \
> dur.out
checkequiv "FETCH equivalents" ct.out dur.out
+
+rm -f ct.out dur.out
. $(dirname $0)/functions
BASE=$BASEDIR/tune1-test
+BUILD=$BUILDDIR/tune1-test
-$RRDTOOL create ${BASE}org.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U DS:b:COUNTER:120:0:U RRA:AVERAGE:0.5:1:10 RRA:AVERAGE:0.5:5:10
+$RRDTOOL create ${BUILD}org.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U DS:b:COUNTER:120:0:U RRA:AVERAGE:0.5:1:10 RRA:AVERAGE:0.5:5:10
report create
# add some values to
U="$U $T:$N"
let N=$N+10
done
-$RRDTOOL update ${BASE}org.rrd --template a $U
+$RRDTOOL update ${BUILD}org.rrd --template a $U
report "update"
-cp ${BASE}org.rrd ${BASE}a.rrd
-$RRDTOOL tune ${BASE}a.rrd --heartbeat a:90 --minimum b:-100
-$RRDTOOL dump ${BASE}a.rrd | diff - ${BASE}a-mod1.dump
+cp ${BUILD}org.rrd ${BUILD}a.rrd
+$RRDTOOL tune ${BUILD}a.rrd --heartbeat a:90 --minimum b:-100
+$RRDTOOL dump ${BUILD}a.rrd | diff - ${BASE}a-mod1.dump
report "tune heartbeat/minimum"
-cp ${BASE}org.rrd ${BASE}a.rrd
-$RRDTOOL tune ${BASE}a.rrd --data-source-type a:COUNTER --data-source-rename b:c
-$RRDTOOL dump ${BASE}a.rrd | diff - ${BASE}a-mod2.dump
+cp ${BUILD}org.rrd ${BUILD}a.rrd
+$RRDTOOL tune ${BUILD}a.rrd --data-source-type a:COUNTER --data-source-rename b:c
+$RRDTOOL dump ${BUILD}a.rrd | diff - ${BASE}a-mod2.dump
report "tune dst/ds-name"
. $(dirname $0)/functions
BASE=$BASEDIR/tune2-test
+BUILD=$BUILDDIR/tune2-test
DIFF='diff -u -I .*<seasonal_smooth_idx>.*'
-$RRDTOOL create ${BASE}org.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U DS:b:COUNTER:120:0:U RRA:HWPREDICT:288:0.9:0.8:144
-$RRDTOOL dump ${BASE}org.rrd | $DIFF - ${BASE}org.dump
+$RRDTOOL create ${BUILD}org.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U DS:b:COUNTER:120:0:U RRA:HWPREDICT:288:0.9:0.8:144
+$RRDTOOL dump ${BUILD}org.rrd | $DIFF - ${BASE}org.dump
report create
-cp ${BASE}org.rrd ${BASE}a.rrd
+cp ${BUILD}org.rrd ${BUILD}a.rrd
# this must fail
-$RRDTOOL tune ${BASE}a.rrd --beta 1.4 2>/dev/null
+$RRDTOOL tune ${BUILD}a.rrd --beta 1.4 2>/dev/null
[ $? != 0 ]
report "out of range beta error"
-$RRDTOOL dump ${BASE}a.rrd | $DIFF - ${BASE}org.dump
+$RRDTOOL dump ${BUILD}a.rrd | $DIFF - ${BASE}org.dump
report "RRD unchanged"
-$RRDTOOL tune ${BASE}a.rrd --beta 0.4
-$RRDTOOL dump ${BASE}a.rrd | $DIFF - ${BASE}a-mod1.dump
+$RRDTOOL tune ${BUILD}a.rrd --beta 0.4
+$RRDTOOL dump ${BUILD}a.rrd | $DIFF - ${BASE}a-mod1.dump
report "tune beta"