diff --git a/utils/rrdtool1/Makefile b/utils/rrdtool1/Makefile new file mode 100644 index 0000000000..35fba9a98f --- /dev/null +++ b/utils/rrdtool1/Makefile @@ -0,0 +1,131 @@ +# +# Copyright (C) 2006-2014 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=rrdtool1 +PKG_VERSION:=1.0.50 +PKG_RELEASE:=2 + +PKG_BUILD_DIR:=$(BUILD_DIR)/rrdtool-$(PKG_VERSION) +PKG_SOURCE:=rrdtool-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:= \ + http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.0.x \ + http://www.fastmirrors.org/rrdtool/rrdtool-1.0.x \ + ftp://ftp.sunet.se/pub/network/monitoring/rrdtool/rrdtool-1.0.x +PKG_MD5SUM:=c466e2e7df95fa8e318e46437da87686 + +PKG_FIXUP:=autoreconf + +include $(INCLUDE_DIR)/package.mk + +define Package/rrdtool1/Default + TITLE:=Round Robin Database (RRD) + URL:=http://oss.oetiker.ch/rrdtool/ +endef + +define Package/rrdtool1/description/Default + RRD is the Acronym for Round Robin Database. RRD is a system to store and + display time-series data (i.e. network bandwidth, machine-room temperature, + server load average). It stores the data in a very compact way that will + not expand over time, and it presents useful graphs by processing the data + to enforce a certain data density. It can be used either via simple wrapper + scripts (from shell or Perl) or via frontends that poll network devices and + put friendly user interface on it. + + This is version 1.0.x with cgilib-0.4, gd1.3 and libpng-1.0.9 linked into + librrd.so. The library is much smaller compared to the 1.2.x version with + separate dynamic linked libraries. +endef + +define Package/librrd1 +$(call Package/rrdtool1/Default) + SECTION:=libs + CATEGORY:=Libraries + DEPENDS:=+zlib + TITLE+= management library +endef + +define Package/librrd1/description +$(call Package/rrdtool1/description/Default) + This package contains a shared library, used by other programs. +endef + +define Package/rrdcgi1 +$(call Package/rrdtool1/Default) + SECTION:=utils + CATEGORY:=Utilities + DEPENDS:=+librrd1 + TITLE+= CGI graphing tool +endef + +define Package/rrdcgi1/description +$(call Package/rrdtool1/description/Default) + This package contains the rrdcgi tool used to create web pages containing + RRD graphs based on templates. +endef + +define Package/rrdtool1 +$(call Package/rrdtool1/Default) + SECTION:=utils + CATEGORY:=Utilities + DEPENDS:=+librrd1 + TITLE+= management tools +endef + +define Package/rrdtool1/description +$(call Package/rrdtool1/description/Default) + This package contains command line tools used to manage RRDs. +endef + +TARGET_CFLAGS += $(FPIC) --std=c99 + +CONFIGURE_ARGS += \ + $(DISABLE_NLS) \ + --enable-shared=yes \ + --enable-static=yes \ + --disable-rpath \ + --with-gnu-ld \ + --enable-local-zlib + +CONFIGURE_VARS += \ + ac_cv_path_PERL=no \ + rd_cv_ieee_works=yes \ + shrext_cmds=".so" + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + shrext_cmds=".so" \ + all install +endef + +define Package/rrdtool1/install + $(INSTALL_DIR) $(1)/usr/bin + $(CP) $(PKG_INSTALL_DIR)/usr/bin/rrd{tool,update} $(1)/usr/bin/ +endef + +define Package/rrdcgi1/install + $(INSTALL_DIR) $(1)/usr/bin + $(CP) $(PKG_INSTALL_DIR)/usr/bin/rrdcgi $(1)/usr/bin/ +endef + +define Package/librrd1/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/librrd.so.* $(1)/usr/lib/ +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/lib/rrdtool-1.0/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/rrd.h $(1)/usr/lib/rrdtool-1.0/include/ + $(INSTALL_DIR) $(1)/usr/lib/rrdtool-1.0/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/librrd.{a,so*} $(1)/usr/lib/rrdtool-1.0/lib/ +endef + +$(eval $(call BuildPackage,librrd1)) +$(eval $(call BuildPackage,rrdcgi1)) +$(eval $(call BuildPackage,rrdtool1)) diff --git a/utils/rrdtool1/patches/001-no_ordering_cd_joke.patch b/utils/rrdtool1/patches/001-no_ordering_cd_joke.patch new file mode 100644 index 0000000000..442fe49721 --- /dev/null +++ b/utils/rrdtool1/patches/001-no_ordering_cd_joke.patch @@ -0,0 +1,21 @@ +diff -urN rrdtool-1.0.50/configure rrdtool-1.0.50.new/configure +--- rrdtool-1.0.50/configure 2005-04-25 22:48:09.000000000 +0200 ++++ rrdtool-1.0.50.new/configure 2009-03-09 17:25:38.000000000 +0100 +@@ -24873,17 +24873,12 @@ + echo "${ECHO_T}and out again" >&6 + + echo $ECHO_N "ordering CD from http://people.ee.ethz.ch/~oetiker/wish $ac_c" 1>&6 +-sleep 1 + echo $ECHO_N ".$ac_c" 1>&6 +-sleep 2 + echo $ECHO_N ".$ac_c" 1>&6 +-sleep 1 + echo $ECHO_N ".$ac_c" 1>&6 +-sleep 3 + echo $ECHO_N ".$ac_c" 1>&6 + echo $ECHO_N ".$ac_c" 1>&6 + echo $ECHO_N ".$ac_c" 1>&6 +-sleep 2 + echo "$as_me:$LINENO: result: just kidding ;-)" >&5 + echo "${ECHO_T} just kidding ;-)" >&6 + echo diff --git a/utils/rrdtool1/patches/002-no_timezone.patch b/utils/rrdtool1/patches/002-no_timezone.patch new file mode 100644 index 0000000000..07564b4dd9 --- /dev/null +++ b/utils/rrdtool1/patches/002-no_timezone.patch @@ -0,0 +1,24 @@ +--- a/src/rrd_tool.c ++++ b/src/rrd_tool.c +@@ -225,11 +225,8 @@ + struct rusage myusage; + struct timeval starttime; + struct timeval currenttime; +- struct timezone tz; + +- tz.tz_minuteswest =0; +- tz.tz_dsttime=0; +- gettimeofday(&starttime,&tz); ++ gettimeofday(&starttime,NULL); + #endif + + while (fgets(aLine, sizeof(aLine)-1, stdin)){ +@@ -252,7 +249,7 @@ + + #if HAVE_GETRUSAGE + getrusage(RUSAGE_SELF,&myusage); +- gettimeofday(¤ttime,&tz); ++ gettimeofday(¤ttime,NULL); + printf("OK u:%1.2f s:%1.2f r:%1.2f\n", + (double)myusage.ru_utime.tv_sec+ + (double)myusage.ru_utime.tv_usec/1000000.0, diff --git a/utils/rrdtool1/patches/020-x86-float-cast.patch b/utils/rrdtool1/patches/020-x86-float-cast.patch new file mode 100644 index 0000000000..5b8a66276b --- /dev/null +++ b/utils/rrdtool1/patches/020-x86-float-cast.patch @@ -0,0 +1,13 @@ +Index: rrdtool-1.0.50/src/rrd_format.h +=================================================================== +--- rrdtool-1.0.50.orig/src/rrd_format.h ++++ rrdtool-1.0.50/src/rrd_format.h +@@ -20,7 +20,7 @@ + + #define RRD_COOKIE "RRD" + #define RRD_VERSION "0001" +-#define FLOAT_COOKIE 8.642135E130 ++#define FLOAT_COOKIE ((double)8.642135E130) + + #if defined(WIN32) + #define DNAN ((double)fmod(0.0,0.0)) diff --git a/utils/rrdtool1/patches/030-pod2man-stderr.patch b/utils/rrdtool1/patches/030-pod2man-stderr.patch new file mode 100644 index 0000000000..feadf3aa5b --- /dev/null +++ b/utils/rrdtool1/patches/030-pod2man-stderr.patch @@ -0,0 +1,11 @@ +--- rrdtool-1.0.50/doc/Makefile.am.orig 2013-11-16 11:44:50.940231208 -0500 ++++ rrdtool-1.0.50/doc/Makefile.am 2013-11-16 11:45:09.802229483 -0500 +@@ -35,7 +35,7 @@ + all-local: link txt man html + + .pod.1 .pm.1 .pl.1: +- pod2man --release=$(VERSION) --center=RRDtool $< > $@ ++ pod2man --stderr --release=$(VERSION) --center=RRDtool $< > $@ + + .1.txt: + @NROFF@ -man -Tlp $< > $@ || echo @NROFF@ failed > $@