
# Basic Information
Name:		rrdtool
Summary:	RRDtool - Round Robin Database tool
Summary(ja):	RRDtool - ラウンドロビンデータベースツール
Version:	1.7.2
Release:	5%{?_dist_release}
Group:		admin-tools,graphics
Vendor:		Project Vine
Distribution:	Vine Linux
Packager:	yasumichi

License:	GPLv2+ with exceptions
URL:		http://oss.oetiker.ch/rrdtool/
Source0:	http://oss.oetiker.ch/%{name}/pub/%{name}-%{version}.tar.gz
Patch3:		rrdtool-1.6.0-ruby-2-fix.patch
Patch5:		rrdtool-1.7.2-python-rpath-fix.patch

BuildRoot:	%{_tmppath}/%{name}-%{version}-root
# Dependency
BuildRequires:	glib2-devel
BuildRequires:	glibc-devel
BuildRequires:	libdbi-devel
BuildRequires:	libxml2-devel
BuildRequires:	lua-devel
BuildRequires:	pango-devel
BuildRequires:	perl(ExtUtils::MakeMaker)
BuildRequires:	ruby-devel
BuildRequires:	tcl-devel

%description
It is pretty easy to gather status information from all sorts of things,
ranging from the temperature in your office to the number of octets which
have passed through the FDDI interface of your router. But it is not so
trivial to store this data in a efficient and systematic manner. This is
where RRDtool kicks in. It lets you log and analyze the data you gather from
all kinds of data-sources (DS). The data analysis part of RRDtool is based
on the ability to quickly generate graphical representations of the data
values collected over a definable time period.

#%%description -l ja


%package devel
Summary:	Libraries and include files of RRDtool
Group:		system
Requires:	%{name} = %{version}-%{release}

%description devel
Libraries and include files of RRDtool


%package doc
Summary: RRDtool documentation
Summary(ja): RRDtool のドキュメント
Group: documentation
BuildArch: noarch

%description doc
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). This package contains documentation on using RRD.


%package tcl
Summary:	RRDTool modules for tcl
Group:		programming
Requires:	%{name} = %{version}-%{release}

%description tcl
RRDTool bindings for Tcl.


%package -n perl-rrdtool
Summary:	Perl RRDtool bindings
Summary(ja):	RRDTool の perl バインディング
Group:		programming
Requires:	%{name} = %{version}-%{release}
Requires:	perl >= 2:5.34.0

%description -n perl-rrdtool
The Perl RRDTool bindings.


%package -n python3-rrdtool
Summary:	Python3 RRDTool bindings
Summary(ja):	RRDTool の Python3 バインディング
Group:		programming
BuildRequires:	python3-devel
BuildRequires:	python3-rpm-macros
BuildRequires:	python3-setuptools
Requires:	%{name} = %{version}-%{release}
Requires:	python(abi) = %{python3_version}

%description -n python3-rrdtool
RDTool bindings for python3.


%package -n ruby-rrdtool
Summary:	Ruby RRDTool bindings
Summary(ja):	RRDTool の ruby バインディング
Group:		programming
Requires:	%{name} = %{version}-%{release}

%description -n ruby-rrdtool
RRDtool bindings for Ruby.


%debug_package


%prep
%setup -q
%patch3 -p1 -b .ruby-2-fix
%patch5 -p1 -b .python-rpath-fix
./bootstrap


%build
export PYTHON=%{__python3}
%configure \
    --disable-rpath \
    --disable-static \
    --enable-perl-site-install \
    --with-perl-options="INSTALLDIRS=vendor" \
    --enable-ruby \
    --enable-ruby-site-install \
    --with-pic

# Fix another rpath issue
%{__perl} -pi.orig -e 's|-Wl,--rpath -Wl,\$rp||g' \
    bindings/perl-shared/Makefile.PL

# Remove Rpath from Ruby
%{__perl} -pi.orig -e 's|-Wl,--rpath -Wl,\$\(EPREFIX\)/lib||g' \
    bindings/ruby/extconf.rb
sed -i 's|/ruby/extconf.rb|/ruby/extconf.rb --vendor |' bindings/Makefile

perl -pi -e 's/(rrdcached_LDADD =)/$1 \$(ALL_LIBS) /' src/Makefile
%{__make} %{?_smp_mflags}

%{__make} %{?_smp_mflags} -C bindings python PYTHON=%{__python3}


%install
%{__rm} -rf ${RPM_BUILD_ROOT}
%{__make} install DESTDIR=${RPM_BUILD_ROOT}
pushd bindings/python
%{py3_install}
popd

# Install ruby module by force
mkdir -p $RPM_BUILD_ROOT/%{ruby_vendorarchdir}
make -C bindings/ruby install DESTDIR=$RPM_BUILD_ROOT

# We only want .txt and .html files for the main documentation
rm -rf docs_to_be_included
mkdir -p docs_to_be_included/html docs_to_be_included/txt
mv $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/html/* docs_to_be_included/html/
mv $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/txt/* docs_to_be_included/txt/

# Put perl docs in perl package
rm -rf docs_perl
mkdir -p docs_perl/html
mv docs_to_be_included/html/RRD*.html docs_perl/html/

# Clean up
%{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/%{name}-*
%{__rm} -f ${RPM_BUILD_ROOT}%{_libdir}/lua/*/rrd.la
%{__rm} -f ${RPM_BUILD_ROOT}%{_libdir}/librrd*.la
%{__rm} -f ${RPM_BUILD_ROOT}%{perl_archlib}/perllocal.pod
%{__rm} -f ${RPM_BUILD_ROOT}%{perl_vendorarch}/auto/*/.packlist

chmod -x ${RPM_BUILD_ROOT}%{_datadir}/rrdtool/examples/*.py

%find_lang %{name}


%clean
%{__rm} -rf ${RPM_BUILD_ROOT}


%files -f %{name}.lang
%defattr(-,root,root)
#doc COPYING NEWS README TODO
%{_bindir}/rrd*
%{_libdir}/lua/*/rrd.so.*
%{_libdir}/librrd*.so.*
%{_mandir}/man1/*.1*
%{_datadir}/rrdtool/examples/cgi-demo.cgi

%files devel
%defattr(-,root,root)
%{_includedir}/rrd*.h
%{_libdir}/lua/*/rrd.so
%{_libdir}/librrd.so
%{_libdir}/pkgconfig/librrd.pc
%{_mandir}/man3/librrd.3*

%files doc
%defattr(-,root,root,-)
%license COPYRIGHT LICENSE
%doc CONTRIBUTORS TODO NEWS THREADS
%doc docs_to_be_included/html docs_to_be_included/txt

%files tcl
%defattr(-,root,root)
%doc bindings/tcl/README
#%{_datadir}/rrdtool/ifOctets.tcl
#%{_datadir}/rrdtool/pkgIndex.tcl
%{_libdir}/tclrrd*.so
%{_libdir}/rrdtool/*.tcl

%files -n perl-rrdtool
%defattr(-,root,root)
%{perl_vendorlib}/RRDp.pm
%{perl_vendorarch}/RRDs.pm
%{perl_vendorarch}/auto/RRDs/RRDs.so
%{_datadir}/rrdtool/examples/*.pl
%{_datadir}/rrdtool/examples/rrdcached/RRDCached.pm
%{_datadir}/rrdtool/examples/rrdcached/rrdcached-size.pl
%{_mandir}/man3/RRD?.3pm*

%files -n python3-rrdtool
%defattr(-,root,root)
%license bindings/python/COPYING
%doc bindings/python/README*
%{python3_sitearch}/rrdtool-*-py*.egg-info
%{python3_sitearch}/rrdtool.*.so
%{_datadir}/rrdtool/examples/*.py

%files -n ruby-rrdtool
%defattr(-,root,root,-)
%doc bindings/ruby/README
%{ruby_vendorarchdir}/RRD.so


%changelog
* Fri Nov 19 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.7.2-5
- rebuilt with perl-5.34.0.
- dropped ldconfig scriptlets.

* Mon Nov 15 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.7.2-4
- rebuilt with ruby-3.0.2.
- dropped python2 support.

* Wed Aug 19 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.7.2-3
- fixed dependency.

* Mon Aug 17 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.7.2-2
- rebuilt with python-3.8.

* Mon Mar 16 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.7.2-1
- new upstream release.
- built with ruby-2.6.5.
- added python3 support.

* Sat May 18 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.7.1-1
- new upstream release.
- rebuilt with perl-5.26.
- rebuilt with ruby-2.4.6.
- updated Patch3.

* Sun Sep 13 2015 Yoji TOYODA <bsyamato@sea.plala.or.jp> 1.4.9-3
- rebuild with ruby-2.2.3

* Sun Jan 25 2015 Yoji TOYODA <bsyamato@sea.plala.or.jp> 1.4.9-2
- rebuild with libdbi-0.9.0

* Mon Jan  5 2015 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 1.4.9-1
- new upstream release.
- added Group tag to subpackages
- added ruby subpackages
- split documents into subpackages
- added %%post and %%postun section

* Tue Jul  1 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.4.8-1
- new upstream release.

* Fri Feb 17 2012 Yasumichi Akahoshi <yasumichi@vinelinux.org> 1.4.7-1
- initial build for Vine Linux
