OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Ralf S. Engelschall
  Root:   /v/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-src                      Date:   06-Jul-2005 16:29:48
  Branch: HEAD                             Handle: 2005070615294800

  Added files:
    openpkg-src/rrdtool     rrdtool.patch
  Modified files:
    openpkg-src/rrdtool     rrdtool.spec

  Log:
    A recent package change was:
    
    > because we provide a shared object for use with perl, its unresolved
    > freetype dependencies must match symbols in a freetype shared object
    
    Just because a Perl DSO RRDs.so requires the FreeType library doesn't
    mean that we need FreeType in turn as a DSO! Our usual approach since
    many years is to link those dependency libraries (libfreetype.a)
    directly into the resulting DSO (RRD.so). That's all which is required.
    Even if a DSO libfreetype.so exists and is linked, for portability
    reasons one would need some -Rxxx hacks in addition.
    
    So, back out this change and instead fix it the way similar DSO linkage
    problems were fixed: by linking the DSOs against the static libs.
    
    Finally, just linking FreeType was not enough! GD actually in addition
    requires PNG/ZLib. So, link in those, too.

  Summary:
    Revision    Changes     Path
    1.10        +29 -0      openpkg-src/rrdtool/rrdtool.patch
    1.70        +5  -6      openpkg-src/rrdtool/rrdtool.spec
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-src/rrdtool/rrdtool.patch
  ============================================================================
  $ cvs diff -u -r0 -r1.10 rrdtool.patch
  --- /dev/null 2005-07-06 16:29:48 +0200
  +++ rrdtool.patch     2005-07-06 16:29:48 +0200
  @@ -0,0 +1,29 @@
  +Index: bindings/perl-shared/Makefile.PL
  +--- bindings/perl-shared/Makefile.PL.orig    2005-07-06 16:06:03 +0200
  ++++ bindings/perl-shared/Makefile.PL 2005-07-06 16:20:33 +0200
  +@@ -1,24 +1,7 @@
  + use ExtUtils::MakeMaker;
  + use Config;
  +-# See lib/ExtUtils/MakeMaker.pm for details of how to influence
  +-# the contents of the Makefile that is written.
  + 
  +-# Specify the location of the archive containing PIC compiled object files.
  +-my $R = "";
  +-
  +-
  +-for ($^O){
  +-        /linux/   && do{ $R = "-Wl,--rpath -Wl,\$(RPATH)"};
  +-        /hpux/    && do{ $R = "+b\$(RPATH)"};
  +-        /solaris/ && do{ $R = "-R\$(RPATH)"};
  +-}
  +-
  +-# darwin works without this because librrd contains its
  +-# install_name which will includes the final location of the
  +-# library after it is installed. This install_name gets transfered
  +-# to the perl shared object.
  +-
  +-my $librrd = "-L../../src/.libs/ $R -lrrd";
  ++my $librrd = "-L../../src/.libs/ -lrrd -L$Config{prefix}/lib -lfreetype 
-lpng -lz -lart_lgpl";
  + 
  + WriteMakefile(
  +     'NAME'         => 'RRDs',
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/rrdtool/rrdtool.spec
  ============================================================================
  $ cvs diff -u -r1.69 -r1.70 rrdtool.spec
  --- openpkg-src/rrdtool/rrdtool.spec  5 Jul 2005 10:57:43 -0000       1.69
  +++ openpkg-src/rrdtool/rrdtool.spec  6 Jul 2005 14:29:48 -0000       1.70
  @@ -33,21 +33,22 @@
   Group:        Database
   License:      LGPL
   Version:      1.2.10
  -Release:      20050705
  +Release:      20050706
   
   #   package options
   %option       with_cgi  no
   
   #   list of sources
   Source0:      
http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/pub/rrdtool-%{version}.tar.gz
  +Patch0:       rrdtool.patch
   
   #   build information
   Prefix:       %{l_prefix}
   BuildRoot:    %{l_buildroot}
   BuildPreReq:  OpenPKG, openpkg >= 20040130, gcc, make, pkgconfig, 
perl-openpkg >= 5.8.3-20040126
   PreReq:       OpenPKG, openpkg >= 20040130
  -BuildPreReq:  perl, png, zlib, libart, freetype, freetype::with_shared = yes
  -PreReq:       perl, png, zlib, libart, freetype, freetype::with_shared = yes
  +BuildPreReq:  perl, png, zlib, libart, freetype
  +PreReq:       perl, png, zlib, libart, freetype
   %if "%{with_cgi}" == "yes"
   BuildPreReq:  cgilib, pkgconfig
   PreReq:       cgilib
  @@ -74,10 +75,8 @@
   
   %prep
       %setup -q
  +    %patch -p0
       rm -f perl-shared/ntmake.pl
  -    %{l_shtool} subst \
  -        -e 's;^\(my \$librrd =.*\$R \)-lrrd;\1 -R%{l_prefix}/lib/ftdyn -lrrd 
-lfreetype;' \
  -        bindings/perl-shared/Makefile.PL
   
   %build
       #   configure package
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     openpkg-cvs@openpkg.org

Reply via email to