Name: scilab Version: 5.2.0 Release: 1.beta1%{?dist} Summary: Scilab is a rapid development environment for numerical computing Group: Applications/Engineering License: CeCILL URL: http://www.scilab.org/ Source0: http://www.scilab.org/download/%{version}/scilab-%{version}-beta-1-src.tar.gz #Patch to modify java search paths to include JNI dirs #Todo: Test non x86 arch Patch0: %{name}-%{version}-java-default-dir.patch #Patch to disable the use of rpath Patch1: %{name}-%{version}-disable-rpath.patch #Patch to disable the GUI. as we don't have jogl Patch2: %{name}-%{version}-disable-gui.patch #Patch to disable hdf5, as we do not have jhdf5 Patch3: %{name}-%{version}-disable-hdf5.patch #Patch to correct pvm search paths Patch4: %{name}-%{version}-pvm-m4.patch #Patch to correct jarnames in docbook m4 Patch5: %{name}-%{version}-docbook-m4.patch #Patch to correct jarnames in configure.ac Patch6: %{name}-%{version}-jarnames.patch #Patch to locate PVM in fedora (TODO: need to find out pvm paths for non I386 archs...) #Patch0: scilab-pvmm4.patch #Patch1: scilab-5.1-disable-rpath.patch #Patch to fix java search paths to include JNI dirs #Patch2: scilab-javam4.patch #change jhall to javahelp2 and looks to jgoodies-looks #Patch3: scilab-5.1-java-package-name.patch #Fix scilab bug 4052 -- crash on startup #http://bugzilla.scilab.org/show_bug.cgi?id=4052 #Patch4: scilab-libxml.patch #Adjust scilab library search paths in launch script to include /usr/lib and /usr/lib64 #This is not a meta-patch, so it is hardcoded in the patch at this time #Patch5: scilab-lib-paths.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: atlas-devel BuildRequires: docbook5-schemas BuildRequires: fftw-devel BuildRequires: flexdock BuildRequires: gcc-gfortran BuildRequires: gettext BuildRequires: gluegen BuildRequires: java-devel BuildRequires: javahelp2 BuildRequires: jeuclid #BuildRequires: jogl BuildRequires: jrosetta BuildRequires: lapack-devel BuildRequires: libxml2-devel BuildRequires: ocaml BuildRequires: pcre-devel BuildRequires: suitesparse-devel BuildRequires: tcl-devel BuildRequires: tk-devel BuildRequires: checkstyle BuildRequires: jakarta-commons-beanutils Requires: atlas Requires: fftw Requires: lapack Requires: matio Requires: ocaml Requires: pcre Requires: suitesparse Requires: tcl Requires: tk #With Java GUI Requires: ant, ant-commons-logging, java, flexdock, javahelp2, jogl, gluegen, jrosetta Requires: jeuclid #With help BuildRequires: batik, saxon, fop Requires: batik, saxon, fop #With PVM BuildRequires: pvm Requires: pvm %description Scilab is a rapid development environment for numerical computing. It provides a wide range of data analysis and mathematical routines, with the core scripting language based around the manipulation of matricies and vectors. Primarily aimed at engineers and data analysts who need to quickly analyse data using readily available routines. Developed by the Institut national de recherche en informatique et en automatique (INRIA) and École nationale des ponts et chaussées (ENPC) in France. %package devel Group: Applications/Engineering License: CeCILL Summary: Provides development files for scilab c development. This allows for development of external routines which can be called from scilab. %description devel Scilab is a rapid development environment for numerical computing. It provides a wide range of data analysis and mathematical routines, with the core scripting language based around the manipulation of matricies and vectors. Primarily aimed at engineers and data analysts who need to quickly analyse data using readily available routines. Developed by the Institut national de recherche en informatique et en automatique (INRIA) and École nationale des ponts et chaussées (ENPC) in France. %prep %setup -q -n %{name}-%{version}-beta-1 %patch0 %patch1 %patch2 %patch3 %patch4 %patch5 %patch6 #build needs to auto-reconfigure in order to #enact changes made autoreconf %build export PVM_ROOT=/usr/share/pvm3/ #Modify LD_LIBRARY_PATH as per configure.ac to prevernt RPATH usage #This can be generated after a building the .so files with #DIR='$CURDIR'; for i in `find ./ -name *.so` ; do dirname $i; done | sort | uniq | tr \\n : | sed "s@\./@$DIR/@g" > tmp export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`cat tmp` #Export the LD paths so scilab will build without -rpath CURDIR=`pwd` export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CURDIR/libs/blas/.libs:$CURDIR/libs/doublylinkedlist/.libs:$CURDIR/libs/dynamiclibrary/.libs:$CURDIR/libs/hashtable/.libs:$CURDIR/libs/lapack/.libs:$CURDIR/libs/libst/.libs:$CURDIR/libs/MALLOC/.libs:$CURDIR/modules/action_binding/.libs:$CURDIR/modules/arnoldi/.libs:$CURDIR/modules/boolean/.libs:$CURDIR/modules/cacsd/.libs:$CURDIR/modules/completion/.libs:$CURDIR/modules/console/.libs:$CURDIR/modules/core/.libs:$CURDIR/modules/data_structures/.libs:$CURDIR/modules/differential_equations/.libs:$CURDIR/modules/double/.libs:$CURDIR/modules/dynamic_link/.libs:$CURDIR/modules/elementary_functions/.libs:$CURDIR/modules/fftw/.libs:$CURDIR/modules/fileio/.libs:$CURDIR/modules/graphic_export/.libs:$CURDIR/modules/graphics/.libs:$CURDIR/modules/gui/.libs:$CURDIR/modules/helptools/.libs:$CURDIR/modules/history_manager/.libs:$CURDIR/modules/integer/.libs:$CURDIR/modules/interpolation/.libs:$CURDIR/modules/intersci/.libs:$CURDIR/modules/io/.libs:$CURDIR/modules/javasci/.libs:$CURDIR/modules/jvm/.libs:$CURDIR/modules/.libs:$CURDIR/modules/linear_algebra/.libs:$CURDIR/modules/localization/.libs:$CURDIR/modules/matio/.libs:$CURDIR/modules/metanet/.libs:$CURDIR/modules/mexlib/.libs:$CURDIR/modules/optimization/.libs:$CURDIR/modules/output_stream/.libs:$CURDIR/modules/polynomials/.libs:$CURDIR/modules/pvm/.libs:$CURDIR/modules/randlib/.libs:$CURDIR/modules/renderer/.libs:$CURDIR/modules/scicos_blocks/.libs:$CURDIR/modules/scicos/.libs:$CURDIR/modules/shell/.libs:$CURDIR/modules/signal_processing/.libs:$CURDIR/modules/sound/.libs:$CURDIR/modules/sparse/.libs:$CURDIR/modules/special_functions/.libs:$CURDIR/modules/spreadsheet/.libs:$CURDIR/modules/statistics/.libs:$CURDIR/modules/string/.libs:$CURDIR/modules/symbolic/.libs:$CURDIR/modules/tclsci/.libs:$CURDIR/modules/time/.libs:$CURDIR/modules/umfpack/.libs:$CURDIR/modules/windows_tools/.libs: #Prefix command to work around this issue: #bug/limitation http://www.mail-archive.com/libtool@gnu.org/msg09038.html #With PVM #%configure --with-fftw --without-matio --prefix=%{_prefix} --enable-build-help --with-pvm --with-pvm-library=/usr/share/pvm3/lib/ --with-pvm-include=/usr/share/pvm3/include/ #Without PVM %configure --with-fftw --with-matio --prefix=%{_prefix} --enable-build-help --with-pvm-library=/usr/share/pvm3/lib/ --with-pvm-include=/usr/share/pvm3/include/ --disable-static --enable-shared --with-pvm --without-gui --without-hdf5 #Make does not build the .bin files required. Must use make all make %{?_smp_mflags} all %install rm -rf %{buildroot} make install DESTDIR=%{buildroot} #Remove pkg-config stuff rm -f /%{buildroot}/%{_libdir}/pkgconfig/scilab.pc #Remove static libraries (disable-static seems to leave .la files) rm -f /%{buildroot}/%{_libdir}/%{name}/*.la #Trash zero length files (this may disrupt test '.ref' files, but we dont use it) for file in $(find %{buildroot} -size 0) ; do rm -f "$file" done #Fix permissions one excutable scripts chmod 755 /%{buildroot}/%{_datadir}/scilab/modules/helptools/bin/manrev2sci chmod 755 /%{buildroot}/%{_datadir}/scilab/modules/helptools/bin/man2sci chmod 755 /%{buildroot}/%{_datadir}/scilab/modules/tclsci/demos/tk/timer chmod 755 /%{buildroot}/%{_datadir}/scilab/modules/helptools/bin/scivalid chmod 755 /%{buildroot}/%{_datadir}/scilab/modules/intersci/examples/sedprov %find_lang %{name} %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %clean rm -rf %{buildroot} %files -f %{name}.lang %defattr(-,root,root,-) %doc ACKNOWLEDGEMENTS CHANGES README_Unix Version.incl license.txt /%{_bindir}/intersci /%{_bindir}/modelicac /%{_bindir}/scilab /%{_bindir}/scilab-bin /%{_libdir}/scilab/*.so.* /%{_libdir}/scilab/*.so #%exclude /%{datadir}/scilab/*.c %exclude /%{_datadir}/scilab/contrib/toolbox_skeleton/sci_gateway/cpp/sci_cpp_find.cxx %exclude /%{_datadir}/scilab/contrib/toolbox_skeleton/sci_gateway/c/sci_csub.c %exclude /%{_datadir}/scilab/contrib/toolbox_skeleton/sci_gateway/c/sci_csum.c %exclude /%{_datadir}/scilab/contrib/toolbox_skeleton/sci_gateway/fortran/sci_fsum.c %exclude /%{_datadir}/scilab/contrib/toolbox_skeleton/src/c/csub.c %exclude /%{_datadir}/scilab/contrib/toolbox_skeleton/src/c/csum.c %exclude /%{_datadir}/scilab/modules/core/examples/call_scilab/c/common/myprog.c %exclude /%{_datadir}/scilab/modules/core/examples/call_scilab/c/LabWindow/CallsciC.c %exclude /%{_datadir}/scilab/modules/core/examples/call_scilab/cpp/common/ccmatrix1.cpp %exclude /%{_datadir}/scilab/modules/core/examples/call_scilab/cpp/common/ccmatrix.h %exclude /%{_datadir}/scilab/modules/core/examples/call_scilab/cpp/common/my_ode.c %exclude /%{_datadir}/scilab/modules/core/examples/call_scilab/cpp/common/myprog.c %exclude /%{_datadir}/scilab/modules/core/examples/call_scilab/c/visual_studio/CallsciC.c %exclude /%{_datadir}/scilab/modules/dynamic_link/examples/call_dll_in_scilab/tdll.c %exclude /%{_datadir}/scilab/modules/dynamic_link/examples/dynamic_link_c_and_fortran/*.c %exclude /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/displ.c %exclude /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/displ.h %exclude /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/matmul.c %exclude /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/matmul.h %exclude /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/sci_matmul.c %exclude /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/sci_view.c %exclude /%{_datadir}/scilab/modules/dynamic_link/examples/interfaces/c/*.c %exclude /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug_2085.c %exclude /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug_3191.c %exclude /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug_3392.c %exclude /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug3561Dll.cpp %exclude /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug3561Dll.h %exclude /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug_3630.c %exclude /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug_3639.c %exclude /%{_datadir}/scilab/modules/dynamic_link/tests/unit_tests/addinter.c %exclude /%{_datadir}/scilab/modules/dynamic_link/tests/unit_tests/addinter_template.c %exclude /%{_datadir}/scilab/modules/intersci/examples/*.c %exclude /%{_datadir}/scilab/modules/linear_algebra/examples/*.c %exclude /%{_datadir}/scilab/modules/mexlib/examples/cppmex/temptst2.cpp %exclude /%{_datadir}/scilab/modules/mexlib/examples/cppmex/temptst.cpp %exclude /%{_datadir}/scilab/modules/mexlib/examples/cppmex/temptst.h %exclude /%{_datadir}/scilab/modules/mexlib/examples/interface/f4.c %exclude /%{_datadir}/scilab/modules/mexlib/examples/interface/fmex1.c %exclude /%{_datadir}/scilab/modules/mexlib/examples/interface/fmex2.c %exclude /%{_datadir}/scilab/modules/mexlib/examples/interface/lib/bar.c %exclude /%{_datadir}/scilab/modules/mexlib/examples/interface/lib/foo.c %exclude /%{_datadir}/scilab/modules/mexlib/examples/interface/lib/pipo.h %exclude /%{_datadir}/scilab/modules/mexlib/examples/mexdll/libtst.c %exclude /%{_datadir}/scilab/modules/mexlib/examples/mexglx/foo.c %exclude /%{_datadir}/scilab/modules/mexlib/examples/mexglx/libtst.c %exclude /%{_datadir}/scilab/modules/scicos/demos/CodeGen/Fibo_standalone.c %exclude /%{_datadir}/scilab/modules/scicos/demos/CodeGen/Therm_standalone.c /%{_datadir}/scilab/ %files devel %defattr(-,root,root,-) /%{_includedir}/scilab/ #%{_datadir}/scilab/*.c /%{_datadir}/scilab/contrib/toolbox_skeleton/sci_gateway/cpp/sci_cpp_find.cxx /%{_datadir}/scilab/contrib/toolbox_skeleton/sci_gateway/c/sci_csub.c /%{_datadir}/scilab/contrib/toolbox_skeleton/sci_gateway/c/sci_csum.c /%{_datadir}/scilab/contrib/toolbox_skeleton/sci_gateway/fortran/sci_fsum.c /%{_datadir}/scilab/contrib/toolbox_skeleton/src/c/csub.c /%{_datadir}/scilab/contrib/toolbox_skeleton/src/c/csum.c /%{_datadir}/scilab/modules/core/examples/call_scilab/c/common/myprog.c /%{_datadir}/scilab/modules/core/examples/call_scilab/c/LabWindow/CallsciC.c /%{_datadir}/scilab/modules/core/examples/call_scilab/cpp/common/ccmatrix1.cpp /%{_datadir}/scilab/modules/core/examples/call_scilab/cpp/common/ccmatrix.h /%{_datadir}/scilab/modules/core/examples/call_scilab/cpp/common/my_ode.c /%{_datadir}/scilab/modules/core/examples/call_scilab/cpp/common/myprog.c /%{_datadir}/scilab/modules/core/examples/call_scilab/c/visual_studio/CallsciC.c /%{_datadir}/scilab/modules/dynamic_link/examples/call_dll_in_scilab/tdll.c /%{_datadir}/scilab/modules/dynamic_link/examples/dynamic_link_c_and_fortran/*.c /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/displ.c /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/displ.h /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/matmul.c /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/matmul.h /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/sci_matmul.c /%{_datadir}/scilab/modules/dynamic_link/examples/gateway/sci_view.c /%{_datadir}/scilab/modules/dynamic_link/examples/interfaces/c/*.c /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug_2085.c /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug_3191.c /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug_3392.c /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug3561Dll.cpp /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug3561Dll.h /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug_3630.c /%{_datadir}/scilab/modules/dynamic_link/tests/nonreg_tests/bug_3639.c /%{_datadir}/scilab/modules/dynamic_link/tests/unit_tests/addinter.c /%{_datadir}/scilab/modules/dynamic_link/tests/unit_tests/addinter_template.c /%{_datadir}/scilab/modules/intersci/examples/*.c /%{_datadir}/scilab/modules/linear_algebra/examples/*.c /%{_datadir}/scilab/modules/mexlib/examples/cppmex/temptst2.cpp /%{_datadir}/scilab/modules/mexlib/examples/cppmex/temptst.cpp /%{_datadir}/scilab/modules/mexlib/examples/cppmex/temptst.h /%{_datadir}/scilab/modules/mexlib/examples/interface/f4.c /%{_datadir}/scilab/modules/mexlib/examples/interface/fmex1.c /%{_datadir}/scilab/modules/mexlib/examples/interface/fmex2.c /%{_datadir}/scilab/modules/mexlib/examples/interface/lib/bar.c /%{_datadir}/scilab/modules/mexlib/examples/interface/lib/foo.c /%{_datadir}/scilab/modules/mexlib/examples/interface/lib/pipo.h /%{_datadir}/scilab/modules/mexlib/examples/mexdll/libtst.c /%{_datadir}/scilab/modules/mexlib/examples/mexglx/foo.c /%{_datadir}/scilab/modules/mexlib/examples/mexglx/libtst.c /%{_datadir}/scilab/modules/scicos/demos/CodeGen/Fibo_standalone.c /%{_datadir}/scilab/modules/scicos/demos/CodeGen/Therm_standalone.c %changelog * Sat Nov 14 2009 5.2.0-1.beta1 - Update to scilab 5.2.0-beta-1 * Thu Mar 05 2009 5.1-2 - Added patch to fix scilab bug 4052 - Minor changes to de-lint spec file - Change java-1.6 to java for requires & buildrequires - Move .so back to main, as scilab 5.1 won't run without them (many java exceptions) - Patch scilab binary launcher script to correct lib search dirs * Sat Feb 21 2009 5.1-1 - Update to new scilab release (5.1) - Add more build requires - Use fedora sparse libraries * Sat Jan 03 2009 5.0.3-2 - Fix up Requires & BuildRequires - Work around static lib installation (disable static libs issue?) - Trash zero length files during install - Added missing ldconfig in post/postun - Fix up file ownership to prevent duplicate owners - Fix up file permissions (644->755) on executable scripts - Fix so .so files are in -devel, .so.* are in main * Mon Dec 29 2008 5.0.3-1 - Update to new scilab release (5.0.3) - Add devel section for .h files - Disable static libs - Fix documentation build (added jeuclid-core) - Fix many rpmlint warnings (devel mainly.) * Sun Nov 23 2008 5.0.1-2 - Fix files section - Remove pkg-config file. - remove windows_tools dir - Add parallel building for those with smp_mflags - Set make target to "all" rather than blank - Add doc files * Sat Nov 22 2008 5.0.1-1 - First release