Sophie

Sophie

distrib > Mageia > 3 > i586 > media > core-release-src > by-pkgid > dc9c6c7dba0aa328e414eb71d55e4fbb > files > 7

plplot-5.9.10-0.svn12284.4.mga3.src.rpm

%define         svnversion      5.9.9
%define         svnsnapshot     svn12284

%define         baseversion     %{svnversion}
%define         srcversion      %{version}%{svnsnapshot}

%define         majorplplot     11

%define         libname         %mklibname %{name} %{majorplplot}
%define         develname       %mklibname -d %{name}
%define         pythonname      python-%{name}
%define         ocamlname       ocaml-%{name}
%define         javaname        java-%{name}
%define         octavename      octave-%{name}

#OFF because not yet on mga
#needs itcl
%define         enable_itcl     OFF
#needs itk
%define         enable_itk      OFF
#needs PDL::Graphics::PLplot
%define         enable_pdl      OFF
#needs D compiler
%define         enable_d        OFF
#needs lasi
%define         enable_psttf    OFF

#to find fonts for freetype
%define         gnu_font_path   "/usr/share/fonts/gnu-free"

#to compile against TCL 8.6
%define         c_flags         "-DUSE_INTERP_RESULT -lm"

#to cd there such that makeinstall finds the Makefile
%define         build_dir       build

#make install default
%define         lua_version     5.2

#fortran and ada files reside in the gcc directory
%define         gccinstall_dir  %(LC_ALL=C %__cc --print-search-dirs | %__grep install | %__awk '{print $2}')
%define         includef_dir    %{gccinstall_dir}/finclude
%define         libada_dir      %{gccinstall_dir}/adalib
%define         includeada_dir  %{gccinstall_dir}/adainclude


Name:           plplot
Version:        5.9.10
Release:        %mkrel 0.%{svnsnapshot}.4
Summary:        A cross-platform software package for creating scientific plots
License:        LGPLv2+
Group:          Graphics/Utilities

URL:            http://plplot.sourceforge.net/
#Source0:        http://downloads.sourceforge.net/plplot/#{name}-#{version}.tar.gz
Source0:        %{name}-%{srcversion}.tar.bz2
# svn co https://plplot.svn.sourceforge.net/svnroot/plplot/trunk plplot
# mv plplot plplot-#{version}
# rm -fr plplot-#{version}/.svn
# tar jcf plplot-#{version}.tar.bz2 plplot-#{version}

Patch0:         plplot-5.9.9-wxwidgets.patch
Patch1:         plplot-5.9.9-lua5.2.patch
Patch2:         plplot-5.9.9-build-fpic.patch
Patch3:         plplot-5.9.9-qhull.patch
Patch4:         plplot-5.9.9-cairo-dpi.patch


BuildRequires:  cmake
BuildRequires:  pkgconfig
BuildRequires:  swig
BuildRequires:  gcc-gfortran
BuildRequires:  gcc-c++
BuildRequires:  gcc-gnat
BuildRequires:  libgnat
BuildRequires:  gnu-free-fonts-compat
BuildRequires:  gnu-free-mono-fonts
BuildRequires:  gnu-free-sans-fonts
BuildRequires:  gnu-free-serif-fonts
BuildRequires:  perl-PDL
BuildRequires:  perl-XML-DOM

BuildRequires:  libx11-devel
BuildRequires:  libxext-devel
BuildRequires:  libice-devel
BuildRequires:  libsm-devel
BuildRequires:  libqhull-devel
BuildRequires:  libncurses-devel
BuildRequires:  libltdl-devel
BuildRequires:  libxcomposite-devel
BuildRequires:  libqt4-devel
BuildRequires:  libwxgtku-devel

BuildRequires:  freetype-devel
BuildRequires:  tk-devel
BuildRequires:  tcl-devel
BuildRequires:  agg-devel
BuildRequires:  lua5.2-devel lua5.2
BuildRequires:  quadmath-devel

BuildRequires:  libcairo-devel
BuildRequires:  libpython-devel
BuildRequires:  python-numpy-devel
BuildRequires:  java-devel-openjdk
BuildRequires:  libgcj-devel
BuildRequires:  ocaml
BuildRequires:  ocaml-findlib
BuildRequires:  ocaml-doc
BuildRequires:  ocaml-camlidl-devel
BuildRequires:  ocaml-lablgtk2-devel
BuildRequires:  octave-devel

Requires:       %{libname} = %{version}-%{release}

%description
PLplot is a cross-platform software package for creating scientific
plots. To help accomplish that task it is organized as a core C
library, language bindings for that library, and device drivers which
control how the plots are presented in non-interactive and interactive
plotting contexts. The PLplot core library can be used to create
standard x-y plots, semi-log plots, log-log plots, contour plots, 3D
surface plots, mesh plots, bar charts and pie charts. Multiple graphs
(of the same or different sizes) may be placed on a single page, and
multiple pages are allowed for those device formats that support them.

%package -n %{libname}
Summary:        The PLplot libraries
Group:          System/Libraries
Requires:       %{name} = %{version}-%{release}

%description -n %{libname}
%{summary}.

%package -n %{develname}
Summary:        Development headers and libraries for PLplot
Group:          Development/Other
Requires:       %{libname} = %{version}-%{release}
Requires:       pkgconfig
Requires:       libqhull-devel
Requires:       freetype-devel
Requires:       libltdl-devel
Provides:       %{name}-devel = %{version}-%{release}
Provides:       lib%{name}-devel = %{version}-%{release}

%description -n %{develname}
%{summary}.


%package -n %{pythonname}
Summary:        PLplot support for Python
Group:          Development/Python
Requires:       %{libname} = %{version}-%{release}
Requires:       python
Provides:       %{name}-python = %{version}-%{release}

%description -n %{pythonname}
%{summary}.


%package -n %{ocamlname}
Summary:        PLplot support for OCaml
Group:          Development/Other
Requires:       %{libname} = %{version}-%{release}
Provides:       %{name}-ocaml = %{version}-%{release}

%description -n %{ocamlname}
%{summary}.


%package -n %{javaname}
Summary:        PLplot support for Java
Group:          Development/Java
Requires:       %{libname} = %{version}-%{release}
Requires:       java
Provides:       %{name}-java = %{version}-%{release}

%description -n %{javaname}
%{summary}.


%package -n %{octavename}
Summary:        PLplot support for Octave
Group:          Sciences/Mathematics
Requires:       %{libname} = %{version}-%{release}
Requires:       octave
Provides:       %{name}-octave = %{version}-%{release}

%description -n %{octavename}
%{summary}.


%prep
%setup -q -n %{name}-%{srcversion}
%patch0 -p1
%patch1 -p0
%patch2 -p1
%patch3 -p0
%patch4 -p1

%build
%cmake  -DENABLE_itcl=%{enable_itcl} \
        -DENABLE_itk=%{enable_itk} \
        -DENABLE_pdl=%{enable_pdl} \
        -DENABLE_d=%{enable_d} \
        -DPLD_psttf=%{enable_psttf} \
        -DPL_FREETYPE_FONT_PATH:PATH=%{gnu_font_path} \
        -DCMAKE_C_FLAGS:STRING=%{c_flags} \
        -DTEST_DYNDRIVERS=OFF \
        -DUSE_RPATH:BOOL=OFF \
        -DF95_MOD_DIR:PATH=%{includef_dir}/%{name} \
        -DF77_INCLUDE_DIR:PATH=%{includef_dir}/%{name} \
        -DOCAML_INSTALL_DIR:PATH=%{_libdir}/ocaml \
        -DJAVAWRAPPER_DIR:PATH=%{_libdir}/%{name} \
        -DCMAKE_BUILD_TYPE=RelWithDebInfo
%make


%install
cd %{build_dir}
%makeinstall_std
%__rm -f %{buildroot}%{_libdir}/libplf95demolibd.a

#install ada files into the right place, the DADA_LIB_DIR cannot be
#overloaded
%__mkdir_p %{buildroot}%{libada_dir}
%__mkdir_p %{buildroot}%{includeada_dir}
pushd %{buildroot}%{_datadir}/ada/adainclude
%__mv plplotadad    %{buildroot}%{libada_dir}/plplotadad
popd
pushd %{buildroot}%{_libdir}/ada/adalib
%__mv plplotadad    %{buildroot}%{includeada_dir}/plplotadad
popd


%files
%doc README README.* AUTHORS NEWS PROBLEMS FAQ ChangeLog.*
%{_bindir}/pl*
%{_mandir}/man1/*
%dir %{_datadir}/%{name}%{baseversion}
%{_datadir}/%{name}%{baseversion}/*.fnt
%{_datadir}/%{name}%{baseversion}/*.map
%{_datadir}/%{name}%{baseversion}/*.pal
%{_datadir}/%{name}%{baseversion}/*.tcl
%{_datadir}/%{name}%{baseversion}/tcl/


%files -n %{libname}
%doc ABOUT Copyright COPYING.*
%{_libdir}/libcsiro*.so.*
%{_libdir}/libqsastime.so.*
%{_libdir}/libplplot*.so.*
%{_libdir}/libtclmatrixd.so.*
%{libada_dir}/plplotadad
%dir %{_libdir}/%{name}%{baseversion}
%{_libdir}/%{name}%{baseversion}/driversd


%files -n %{develname}
%dir %{_includedir}/%{name}
%{_includedir}/%{name}/*.h
%dir %{includef_dir}/%{name}
#{includef_dir}/#{name}/*.h
%{includef_dir}/%{name}/*.mod
%{_libdir}/libcsiro*.so
%{_libdir}/libqsastime.so
%{_libdir}/libplplot*.so
%{_libdir}/libtclmatrixd.so
%{_libdir}/lua/%{lua_version}/plplot/plplotluac.so
%{_libdir}/pkgconfig/plplotd*.pc
%exclude %{_libdir}/pkgconfig/plplotd-ocaml.pc
#dir #{includeada_dir}
%{includeada_dir}/plplotadad
%dir %{_datadir}/%{name}%{baseversion}/examples
%{_datadir}/%{name}%{baseversion}/examples/CMakeLists.txt
%{_datadir}/%{name}%{baseversion}/examples/Makefile
%{_datadir}/%{name}%{baseversion}/examples/ada
%{_datadir}/%{name}%{baseversion}/examples/c++
%{_datadir}/%{name}%{baseversion}/examples/c
%{_datadir}/%{name}%{baseversion}/examples/cmake
#{_datadir}/#{name}#{baseversion}/examples/f77
%{_datadir}/%{name}%{baseversion}/examples/f95
%{_datadir}/%{name}%{baseversion}/examples/lena.pgm
%{_datadir}/%{name}%{baseversion}/examples/lua
%{_datadir}/%{name}%{baseversion}/examples/plplot-test*
%{_datadir}/%{name}%{baseversion}/examples/tcl
%{_datadir}/%{name}%{baseversion}/examples/test*
%exclude %{_datadir}/%{name}%{baseversion}/examples/test_ocaml.sh
%exclude %{_datadir}/%{name}%{baseversion}/examples/test_python.sh
%exclude %{_datadir}/%{name}%{baseversion}/examples/test_java.sh
%{_datadir}/%{name}%{baseversion}/examples/tk/
%exclude %{_datadir}/%{name}%{baseversion}/examples/tk/tk01

%files -n %{pythonname}
%{python_sitearch}/_plplotcmodule.so
%{python_sitearch}/plplot*
%{python_sitearch}/Plframe.py
%{python_sitearch}/TclSup.py
%{_datadir}/%{name}%{baseversion}/examples/python
%{_datadir}/%{name}%{baseversion}/examples/test_python.sh

%files -n %{ocamlname}
%{_libdir}/ocaml/%{name}
%{_libdir}/ocaml/stublibs/*
%{_libdir}/pkgconfig/plplotd-ocaml.pc
%{_datadir}/%{name}%{baseversion}/examples/ocaml/
%{_datadir}/%{name}%{baseversion}/examples/test_ocaml.sh


%files -n %{javaname}
%{_libdir}/%{name}/plplotjavac_wrap.so
%{_datadir}/java/plplot.jar
%{_datadir}/%{name}%{baseversion}/examples/java/
%{_datadir}/%{name}%{baseversion}/examples/test_java.sh

%files -n %{octavename}
%{_datadir}/plplot_octave/
%{_datadir}/octave/site/m/PLplot/
%{_libdir}/octave/site/oct/*/plplot_octave.oct
%{_datadir}/%{name}%{baseversion}/examples/lena.img
%{_datadir}/%{name}%{baseversion}/examples/octave/
%{_datadir}/%{name}%{baseversion}/examples/test_octave.sh
%{_datadir}/%{name}%{baseversion}/examples/test_octave_interactive.sh


%changelog

* Sat Apr 06 2013 malo <malo> 5.9.10-0.svn12284.4.mga3
+ Revision: 408586
- remove spurious requires

* Sun Jan 13 2013 umeabot <umeabot> 5.9.10-0.svn12284.3.mga3
+ Revision: 377932
- Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild

* Wed Jan 09 2013 eatdirt <eatdirt> 5.9.10-0.svn12284.2.mga3
+ Revision: 343441
- Remove wrong Provides

* Wed Jan 09 2013 eatdirt <eatdirt> 5.9.10-0.svn12284.1.mga3
+ Revision: 343432
- Fix compilation failure, clean adalib, upgrade to latest svn

  + joequant <joequant>
    - update plplot to latest svn
      update to lua5.2
      add cairo dpi patch

* Wed Oct 10 2012 fwang <fwang> 5.9.9-7.mga3
+ Revision: 304056
- do not test syndrivers
- try to recognize latest qhull
- enable rpath
- disable rpath

* Tue Oct 09 2012 fwang <fwang> 5.9.9-6.mga3
+ Revision: 303855
- add debian patch to build with recent system
- rebuild for new qhull

* Wed Jun 27 2012 fwang <fwang> 5.9.9-5.mga3
+ Revision: 264359
- br openjdk
- br lua 5.1
- find lua 5.1
- specify lua executable
- fix lua package name
- br lua 5.1
- recognize gcc 4.7
- rebuild for new gcc

* Sun Mar 25 2012 eatdirt <eatdirt> 5.9.9-4.mga2
+ Revision: 226406
- Rebuild against liboctave.so.1 (octave 3.6.1)

* Thu Jan 19 2012 fwang <fwang> 5.9.9-3.mga2
+ Revision: 198353
- try building wxgtku version

* Tue Dec 06 2011 fwang <fwang> 5.9.9-2.mga2
+ Revision: 177184
- recognize gcc 4.6
- br quadmath
- rebuild for new gcc

* Thu Nov 03 2011 eatdirt <eatdirt> 5.9.9-1.mga2
+ Revision: 162413
- upgrading to 5.9.9

* Tue Sep 06 2011 eatdirt <eatdirt> 5.9.8-1.mga2
+ Revision: 139306
-new verion 5.9.8
- imported package plplot


* Fri Jun 13 2011 Chris Ringeval <dirteat@gmail.com> 5.9.7-1mga1
- import plplot