#toolbox/scilab def %define tarname ANN_Toolbox %define scilab_version %(rpm -q --queryformat "%{VERSION}" scilab) %define short_name ann %define module_dir macros/%short_name #package def %define name scilab-toolbox-ANN %define version 0.4.2 %define release 4mdk Summary: Artificial neural network toolbox Name: %{name} Version: %{version} Release: %{release} Source0: %{tarname}_%{version}.tar.bz2 License: GPL Group: Sciences/Mathematics Url: ftp://ftp.inria.fr/INRIA/Projects/Meta2/Scilab/contrib/ANN/ BuildRoot: %{_tmppath}/%{name}-buildroot Requires: scilab >= %scilab_version BuildRequires: scilab BuildArch: noarch %description Artificial Neural Networks Toolbox - Only layered feedforward networks are supported *directly* at the moment (for others use the "hooks" provided) - Unlimited number of layers - Unlimited number of neurons per each layer separately - User defined activation function (defaults to logistic) - User defined error function (defaults to SSE) - Algorithms implemented (so far): * standard (vanilla) with or without bias, on-line or batch * momentum with or without bias, on-line or batch * SuperSAB with or without bias, on-line or batch * Conjugate gradients * Jacobian computation * Computation of result of multiplication between "vector" and Hessian %prep %setup -q -n %{tarname}_%{version} %build ( cd %module_dir cat Makefile.in | sed \ -e "s|^include \.\./\.\./Makefile.incl|include %_libdir/scilab-%{scilab_version}/Makefile.incl|" \ -e "s|^include \.\./Make.lib|include %_libdir/scilab-%{scilab_version}/macros/Make.lib|" \ > Makefile make SCIDIR="%{_libdir}/scilab-%{scilab_version}" \ NAM=. ) ( cd man/%short_name echo 'lines(0);formatman("ann","ascii");quit' | scilab -nw for i in *.man; do bzip2 $i done ) %install rm -rf $RPM_BUILD_ROOT mkdir -p %buildroot%_libdir/scilab-%{scilab_version}/ mkdir -p %buildroot%_libdir/scilab-%{scilab_version}/%module_dir mkdir -p %buildroot%_mandir/scilab/%{short_name} cp %module_dir/{*.bin,*.sci,lib} %buildroot%_libdir/scilab-%{scilab_version}/%module_dir cp man/%short_name/*.man.bz2 %buildroot%_mandir/scilab/%{short_name} %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %doc examples/ann/* %dir %_libdir/scilab-%{scilab_version}/%module_dir %_libdir/scilab-%{scilab_version}/%module_dir/*.sci %_libdir/scilab-%{scilab_version}/%module_dir/*.bin %_libdir/scilab-%{scilab_version}/%module_dir/lib %_mandir/scilab/%{short_name} %post #Add module in scilab starting file if [ -z `grep '%module_dir/lib' %_libdir/scilab-%{scilab_version}/scilab.star` ]; then echo -e "load(\047%{_libdir}/scilab-%{scilab_version}/%{module_dir}/lib\047);" >> %_libdir/scilab-%{scilab_version}/scilab.star echo -e "%%helps = [%%helps; \"%{_mandir}/scilab/%{short_name}\",\"Artificial Neural Networks\";];" >> %_libdir/scilab-%{scilab_version}/scilab.star fi %postun if [ "$1" = "0" ]; then if [ -n `grep '%module_dir/lib' %_libdir/scilab-%{scilab_version}/scilab.star` ]; then cat %_libdir/scilab-%{scilab_version}/scilab.star | \ sed -e '\|%{_mandir}/scilab/%short_name| d' \ -e '\|%{_libdir}/scilab-%{scilab_version}/%{module_dir}/lib| d' \ > %_libdir/scilab-%{scilab_version}/scilab.star.new # mv -f %_libdir/scilab-%{scilab_version}/scilab.star.new %_libdir/scilab-%{scilab_version}/scilab.star fi fi %changelog * Sun Feb 08 2004 Olivier Thauvin <thauvin@aerov.jussieu.fr> 0.4.2-4mdk - fix dir ownerchip - fix buildrequires * Mon Mar 03 2003 Olivier Thauvin <thauvin@aerov.jussieu.fr> 0.4.2-3mdk - rebuild for scilab 2.7 * Mon Feb 10 2003 Olivier Thauvin <thauvin@aerov.jussieu.fr> 0.4.2-2mdk - check %%postun status * Sat Feb 08 2003 Olivier Thauvin <thauvin@aerov.jussieu.fr> 0.4.2-1mdk - Initial mdk rpm