rrdtool/rrdtool.spec

Thu, 04 Oct 2012 20:30:05 +0200

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 04 Oct 2012 20:30:05 +0200
changeset 715
c10fb90893b9
parent 630
561e962f5a6e
permissions
-rw-r--r--

Correct out of date build configuration, porting to Solaris 11 network
link infrastructure and new libpcap logic. This additionally allows for
device drivers in subdirectories of /dev. Correct packaged nmap
personalities and signatures to work out of the box. Finally, hack
arpd logic to properly close sockets and quit on TERM by repeating
signaling in the run command script. Sadly, all this fails to correct
the run time behaviour of honeyd which fails to bind to the IP layer.

     1 ##
     2 ##  rrdtool.spec -- OpenPKG RPM Package Specification
     3 ##  Copyright (c) 2000-2012 OpenPKG Foundation e.V. <http://openpkg.net/>
     4 ##
     5 ##  Permission to use, copy, modify, and distribute this software for
     6 ##  any purpose with or without fee is hereby granted, provided that
     7 ##  the above copyright notice and this permission notice appear in all
     8 ##  copies.
     9 ##
    10 ##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
    11 ##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
    12 ##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
    13 ##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
    14 ##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
    15 ##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
    16 ##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
    17 ##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
    18 ##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
    19 ##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
    20 ##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    21 ##  SUCH DAMAGE.
    22 ##
    24 #   package version
    25 %define       V_rrdtool          1.4.7
    26 %define       V_rrdtool_oo       0.32
    27 %define       V_rrdtool_creator  1.0
    28 %define       V_rrd_simple       1.44
    30 #   package information
    31 Name:         rrdtool
    32 Summary:      Round Robin Database
    33 URL:          http://www.rrdtool.org/
    34 Vendor:       Tobias Oetiker
    35 Packager:     OpenPKG Foundation e.V.
    36 Distribution: OpenPKG Community
    37 Class:        BASE
    38 Group:        Database
    39 License:      LGPL
    40 Version:      %{V_rrdtool}
    41 Release:      20120800
    43 #   package options
    44 %option       with_perl        no
    45 %option       with_python      no
    47 #   list of sources
    48 Source0:      http://oss.oetiker.ch/rrdtool/pub/rrdtool-%{V_rrdtool}.tar.gz
    49 Source1:      http://www.cpan.org/authors/id/M/MS/MSCHILLI/RRDTool-OO-%{V_rrdtool_oo}.tar.gz
    50 Source2:      http://www.cpan.org/authors/id/J/JA/JACQUELIN/RRDTool-Creator-%{V_rrdtool_creator}.tar.gz
    51 Source3:      http://www.cpan.org/authors/id/N/NI/NICOLAW/RRD-Simple-%{V_rrd_simple}.tar.gz
    52 Patch0:       rrdtool.patch
    54 #   build information
    55 BuildPreReq:  OpenPKG, openpkg >= 20100101, gcc, make, pkgconfig, perl-openpkg >= 5.8.3-20040126, perl-module, intltool
    56 PreReq:       OpenPKG, openpkg >= 20100101
    57 BuildPreReq:  png, zlib, freetype, pango, cairo, libpixman, libxml, libffi
    58 PreReq:       png, zlib, freetype, pango, cairo, libpixman, libxml, libffi
    59 %if "%{with_perl}" == "yes"
    60 BuildPreReq:  perl, libpixman::with_pic = yes
    61 PreReq:       perl, libpixman::with_pic = yes
    62 %endif
    63 %if "%{with_python}" == "yes"
    64 BuildPreReq:  python
    65 PreReq:       python
    66 %endif
    68 %description
    69     RRD is the Acronym for Round Robin Database. RRD is a system
    70     to store and display time-series data (i.e. network bandwidth,
    71     machine-room temperature, server load average). It stores the
    72     data in a very compact way that will not expand over time, and it
    73     presents useful graphs by processing the data to enforce a certain
    74     data density. It can be used either via simple wrapper scripts (from
    75     shell or Perl) or via frontends that poll network devices and put a
    76     friendly user interface on it.
    78 %track
    79     prog rrdtool = {
    80         version   = %{V_rrdtool}
    81         url       = http://oss.oetiker.ch/rrdtool/pub/
    82         regex     = rrdtool-(__VER__)\.tar\.gz
    83     }
    84     prog rrdtool:RRDTool-OO = {
    85         version   = %{V_rrdtool_oo}
    86         url       = http://www.cpan.org/authors/id/M/MS/MSCHILLI/
    87         regex     = RRDTool-OO-(__VER__)\.tar\.gz
    88     }
    89     prog rrdtool:RRDTool-Creator = {
    90         version   = %{V_rrdtool_creator}
    91         url       = http://www.cpan.org/authors/id/J/JA/JACQUELIN/
    92         regex     = RRDTool-Creator-(__VER__)\.tar\.gz
    93     }
    94     prog rrdtool:RRD-Simple = {
    95         version   = %{V_rrd_simple}
    96         url       = http://www.cpan.org/authors/id/N/NI/NICOLAW/
    97         regex     = RRD-Simple-(__VER__)\.tar\.gz
    98     }
   100 %prep
   101     %setup -q
   102     %setup -q -D -T -a 1
   103     %setup -q -D -T -a 2
   104     %setup -q -D -T -a 3
   105     %patch -p0
   106     rm -f bindings/perl-shared/ntmake.pl
   107     rm -rf RRDTool-Creator-*/_build
   108     %{l_shtool} subst \
   109         -e 's;-lglib2;-lglib;g' \
   110         configure
   111     %{l_shtool} subst \
   112         -e 's;glib2/glib\.h;glib/glib.h;' \
   113         src/rrd_daemon.c
   115 %build
   116     #   configure package
   117     echo "ac_cv_path_PERL=no" >config.cache
   118     CC="%{l_cc}" \
   119     CPPFLAGS="%{l_cppflags}" \
   120 %if "%{with_perl}" == "yes"
   121     CFLAGS="%{l_cflags -O} -fPIC" \
   122     LDLAGS="%{l_ldflags} -fPIC" \
   123 %else
   124     CFLAGS="%{l_cflags -O}" \
   125     LDLAGS="%{l_ldflags}" \
   126 %endif
   127     LIBS="`pkg-config pangocairo --libs`" \
   128     ./configure \
   129         --cache-file=./config.cache \
   130         --prefix=%{l_prefix} \
   131         --mandir=%{l_prefix}/man \
   132 %if "%{with_python}" == "yes"
   133         --enable-python \
   134 %else
   135         --disable-python \
   136 %endif
   137         --disable-tcl \
   138         --disable-ruby \
   139         --disable-shared \
   140         --disable-nls \
   141         --enable-rrdcgi
   143     #   build package
   144     %{l_make} %{l_mflags -O}
   146     #   build Perl part
   147 %if "%{with_perl}" == "yes"
   148     %{l_prefix}/bin/perl-openpkg prepare
   149     %{l_prefix}/bin/perl-openpkg -d bindings/perl-piped  configure build
   150     %{l_prefix}/bin/perl-openpkg -d bindings/perl-shared configure build
   151     %{l_prefix}/bin/perl-openpkg -d RRDTool-OO-%{V_rrdtool_oo} configure build
   152     %{l_prefix}/bin/perl-openpkg -d RRDTool-Creator-%{V_rrdtool_creator} configure build
   153     %{l_prefix}/bin/perl-openpkg -d RRD-Simple-%{V_rrd_simple} configure build
   154 %endif
   156 %install
   158     #   install package
   159     %{l_shtool} subst \
   160         -e 's/^\(install-data-am:\).*/\1/' \
   161         Makefile
   162     %{l_make} %{l_mflags} install \
   163         DESTDIR=$RPM_BUILD_ROOT DESTDIR="$RPM_BUILD_ROOT"
   165     #   install Perl part
   166 %if "%{with_perl}" == "yes"
   167     %{l_prefix}/bin/perl-openpkg -d bindings/perl-piped  install
   168     %{l_prefix}/bin/perl-openpkg -d bindings/perl-shared install
   169     %{l_prefix}/bin/perl-openpkg -d RRDTool-OO-%{V_rrdtool_oo} install
   170     %{l_prefix}/bin/perl-openpkg -d RRDTool-Creator-%{V_rrdtool_creator} install
   171     %{l_prefix}/bin/perl-openpkg -d RRD-Simple-%{V_rrd_simple} install
   172 %endif
   174     #   strip down installation hierarchy
   175     rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/doc
   176 %if "%{with_python}" == "no"
   177     rm -rf $RPM_BUILD_ROOT%{l_prefix}/lib/python
   178 %endif
   179     rm -rf $RPM_BUILD_ROOT%{l_prefix}/rrdtool-*
   180     rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/rrdtutorial.es.1
   181     rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/locale
   182     strip $RPM_BUILD_ROOT%{l_prefix}/bin/* 2>/dev/null || true
   184     #   post-process Perl part
   185 %if "%{with_perl}" == "yes"
   186     %{l_prefix}/bin/perl-openpkg -F perl-openpkg-files fixate cleanup
   187 %else
   188     >perl-openpkg-files
   189 %endif
   191     #   determine installation files
   192     %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
   193         %{l_files_std} `cat perl-openpkg-files`
   195 %files -f files
   197 %clean

mercurial