19aee5003SAndrew GeisslerSUMMARY = "High performance data logging and graphing system for time series data" 29aee5003SAndrew GeisslerHOMEPAGE = "http://oss.oetiker.ch/rrdtool/" 39aee5003SAndrew Geissler 49aee5003SAndrew GeisslerLICENSE = "GPL-2.0-only" 59aee5003SAndrew GeisslerLIC_FILES_CHKSUM = "file://COPYRIGHT;md5=39df84cfd8a5e18bf988f277f7946676" 69aee5003SAndrew Geissler 787f5cff0SAndrew GeisslerDEPENDS = "libpng zlib glib-2.0 libxml2 groff-native python3-setuptools-native" 89aee5003SAndrew Geissler 99aee5003SAndrew GeisslerSRCREV = "3af04acd38bbc61bbdcdd931dcf234c971aa5336" 109aee5003SAndrew GeisslerPV = "1.8.0" 119aee5003SAndrew Geissler 129aee5003SAndrew GeisslerSRC_URI = "\ 138e7b46e2SPatrick Williams git://github.com/oetiker/rrdtool-1.x.git;protocol=https;branch=master \ 14edff4923SAndrew Geissler file://b76e3c578f1e9f582e9c28f50d82b1f569602075.patch \ 159aee5003SAndrew Geissler" 169aee5003SAndrew Geissler 179aee5003SAndrew GeisslerS = "${WORKDIR}/git" 189aee5003SAndrew Geissler 199aee5003SAndrew Geisslerinherit cpan autotools-brokensep gettext pkgconfig python3native python3-dir systemd 209aee5003SAndrew Geissler 219aee5003SAndrew GeisslerBBCLASSEXTEND = "native" 229aee5003SAndrew Geissler 239aee5003SAndrew GeisslerSYSTEMD_PACKAGES = "rrdcached" 249aee5003SAndrew GeisslerSYSTEMD_SERVICE:rrdcached = "rrdcached.socket rrdcached.service" 259aee5003SAndrew Geissler 269aee5003SAndrew GeisslerEXTRA_AUTORECONF = "-I m4 --exclude=autopoint" 279aee5003SAndrew Geissler 2887f5cff0SAndrew GeisslerPACKAGECONFIG ??= "perl graph ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" 299aee5003SAndrew Geissler 309aee5003SAndrew GeisslerPACKAGECONFIG[python] = "--enable-python=yes \ 319aee5003SAndrew Geissleram_cv_python_pythondir=${STAGING_LIBDIR}/python${PYTHON_BASEVERSION}/site-packages \ 329aee5003SAndrew Geissleram_cv_python_pyexecdir=${STAGING_LIBDIR}/python${PYTHON_BASEVERSION}/site-packages,\ 339aee5003SAndrew Geissler--disable-python,python," 349aee5003SAndrew Geissler 359aee5003SAndrew GeisslerPACKAGECONFIG[perl] = \ 369aee5003SAndrew Geissler"--enable-perl=yes --with-perl-options='INSTALLDIRS="vendor" CCFLAGS="${CFLAGS}" NO_PACKLIST=1 NO_PERLLOCAL=1' \ 379aee5003SAndrew Geisslerac_cv_path_PERL_CC='${CC}', \ 389aee5003SAndrew Geissler--disable-perl,perl," 399aee5003SAndrew Geissler 409aee5003SAndrew GeisslerPACKAGECONFIG[dbi] = "--enable-libdbi,--disable-libdbi,libdbi" 419aee5003SAndrew Geissler 429aee5003SAndrew GeisslerPACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,--without-systemdsystemunitdir,systemd," 439aee5003SAndrew Geissler 4487f5cff0SAndrew GeisslerPACKAGECONFIG[graph] = "--enable-rrd_graph,--disable-rrd_graph,pango cairo" 4587f5cff0SAndrew Geissler 469aee5003SAndrew GeisslerEXTRA_OECONF = " \ 479aee5003SAndrew Geissler --enable-shared \ 489aee5003SAndrew Geissler --disable-libwrap \ 499aee5003SAndrew Geissler --program-prefix='' \ 509aee5003SAndrew Geissler rd_cv_ieee_works=yes \ 519aee5003SAndrew Geissler --disable-ruby \ 529aee5003SAndrew Geissler --disable-lua \ 539aee5003SAndrew Geissler --disable-tcl \ 549aee5003SAndrew Geissler --disable-rpath \ 559aee5003SAndrew Geissler --enable-nls=${USE_NLS} \ 569aee5003SAndrew Geissler --disable-docs \ 579aee5003SAndrew Geissler" 589aee5003SAndrew Geissler 599aee5003SAndrew Geisslerexport STAGING_LIBDIR 609aee5003SAndrew Geisslerexport STAGING_INCDIR 619aee5003SAndrew Geissler 629aee5003SAndrew Geissler# emulate cpan_do_configure 63edff4923SAndrew GeisslerEXTRA_OEMAKE = ' CC="${CC} -Wno-incompatible-pointer-types" PERL5LIB="${PERL_ARCHLIB}" ' 649aee5003SAndrew Geissler# Avoid do_configure error on some hosts 659aee5003SAndrew Geissler 669aee5003SAndrew Geisslerdo_configure() { 679aee5003SAndrew Geissler unset PERLHOSTLIB 689aee5003SAndrew Geissler #fix the pkglib problem with newer automake 699aee5003SAndrew Geissler #perl 709aee5003SAndrew Geissler sed -i -e "s|-Wl,--rpath -Wl,\$rp||g" \ 719aee5003SAndrew Geissler ${S}/bindings/perl-shared/Makefile.PL 729aee5003SAndrew Geissler 739aee5003SAndrew Geissler #python 749aee5003SAndrew Geissler sed -i -e '/PYTHON_INCLUDES="-I${/c \ 759aee5003SAndrew Geissler PYTHON_INCLUDES="-I=/usr/include/python${PYTHON_BASEVERSION}"' \ 769aee5003SAndrew Geissler ${S}/m4/acinclude.m4 779aee5003SAndrew Geissler #remove the useless RPATH from the rrdtool.so 789aee5003SAndrew Geissler sed -i -e 's|LD_RUN_PATH=$(libdir)||g' ${S}/bindings/Makefile.am 799aee5003SAndrew Geissler 809aee5003SAndrew Geissler autotools_do_configure 819aee5003SAndrew Geissler 829aee5003SAndrew Geissler #modify python sitepkg 839aee5003SAndrew Geissler #remove the dependency of perl-shared:Makefile 849aee5003SAndrew Geissler #or perl-shared/Makefile will be regenerated 859aee5003SAndrew Geissler #if any code touch bindings/Makefile after below perl bindings code 869aee5003SAndrew Geissler sed -i -e "s:python/setup.py install:python/setup.py install \ 879aee5003SAndrew Geissler --install-lib=${PYTHON_SITEPACKAGES_DIR}:" \ 889aee5003SAndrew Geissler -e "s:perl-shared/Makefile.PL Makefile:perl-shared/Makefile.PL:" \ 899aee5003SAndrew Geissler ${B}/bindings/Makefile 909aee5003SAndrew Geissler 919aee5003SAndrew Geissler #redo the perl bindings 929aee5003SAndrew Geissler ( 939aee5003SAndrew Geissler cd ${S}/bindings/perl-shared; 949aee5003SAndrew Geissler perl Makefile.PL INSTALLDIRS="vendor" INSTALLPRIVLIB="abc"; 959aee5003SAndrew Geissler 969aee5003SAndrew Geissler cd ../../bindings/perl-piped; 979aee5003SAndrew Geissler perl Makefile.PL INSTALLDIRS="vendor"; 989aee5003SAndrew Geissler ) 999aee5003SAndrew Geissler 1009aee5003SAndrew Geissler #change the interpreter in file 1019aee5003SAndrew Geissler sed -i -e "s|^PERL = ${STAGING_BINDIR_NATIVE}/.*|PERL = /usr/bin/perl|g" \ 1029aee5003SAndrew Geissler ${B}/examples/Makefile 1039aee5003SAndrew Geissler sed -i -e "s|${STAGING_BINDIR_NATIVE}/perl-native/perl|/usr/bin/perl|g" \ 1049aee5003SAndrew Geissler ${B}/examples/*.pl 1059aee5003SAndrew Geissler} 1069aee5003SAndrew Geissler 107edff4923SAndrew Geisslerdo_install:append:class-native() { 108edff4923SAndrew Geissler # Replace the shebang line in cgi-demo.cgi 109edff4923SAndrew Geissler sed -i '1s|^.*$|#!/usr/bin/env rrdcgi|' ${D}${datadir}/rrdtool/examples/cgi-demo.cgi 110edff4923SAndrew Geissler} 111edff4923SAndrew Geissler 1129aee5003SAndrew GeisslerPACKAGES =+ "${PN}-perl ${PN}-python" 1139aee5003SAndrew GeisslerPACKAGES =+ "rrdcached" 1149aee5003SAndrew Geissler 1159aee5003SAndrew GeisslerDESCRIPTION:rrdcached = \ 1169aee5003SAndrew Geissler"The rrdcached package contains the data caching daemon for RRDtool." 1179aee5003SAndrew Geissler 1189aee5003SAndrew GeisslerFILES:rrdcached = "${bindir}/rrdcached \ 1199aee5003SAndrew Geissler ${systemd_unitdir}/system/rrdcached.service \ 1209aee5003SAndrew Geissler ${systemd_unitdir}/system/rrdcached.socket" 1219aee5003SAndrew Geissler 1229aee5003SAndrew GeisslerFILES:${PN}-doc += "${datadir}/rrdtool/examples" 1239aee5003SAndrew Geissler 1249aee5003SAndrew GeisslerDESCRIPTION:${PN}-perl = \ 1259aee5003SAndrew Geissler"The ${PN}-perl package includes RRDtool bindings for perl." 1269aee5003SAndrew GeisslerFILES:${PN}-perl = "${libdir}/perl/vendor_perl/*/*.pm \ 1279aee5003SAndrew Geissler ${libdir}/perl/vendor_perl/*/auto/RRDs/RRDs.*" 1289aee5003SAndrew GeisslerRDEPENDS:${PN}-perl = "perl perl-module-lib perl-module-getopt-long perl-module-time-hires \ 1299aee5003SAndrew Geissler perl-module-io-file perl-module-ipc-open2 perl-module-io-socket" 1309aee5003SAndrew Geissler 1319aee5003SAndrew GeisslerDESCRIPTION:${PN}-python = \ 1329aee5003SAndrew Geissler"The ${PN}-python package includes RRDtool bindings for python." 133edff4923SAndrew GeisslerFILES:${PN}-python = "${PYTHON_SITEPACKAGES_DIR}/*" 1349aee5003SAndrew GeisslerRDEPENDS:${PN}-python = "python3" 1359aee5003SAndrew Geissler 1369aee5003SAndrew GeisslerFILES:${PN}-dbg += "${libdir}/perl/vendor_perl/*/auto/RRDs/.debug \ 137edff4923SAndrew Geissler ${PYTHON_SITEPACKAGES_DIR}/.debug" 138*8460358cSPatrick Williams 139*8460358cSPatrick Williams# http://errors.yoctoproject.org/Errors/Details/766911/ 140*8460358cSPatrick Williams# rrd_tune.c:239:35: error: passing argument 3 of 'optparse_init' from incompatible pointer type [-Wincompatible-pointer-types] 141*8460358cSPatrick WilliamsCFLAGS += "-Wno-error=incompatible-pointer-types" 142