%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