# If the emacs-el package has installed a pkgconfig file, use that to determine # install locations and Emacs version at build time, otherwise set defaults. %if %($(pkg-config emacs) ; echo $?) %define emacs_version 22.2 %define emacs_lispdir %{_datadir}/emacs/site-lisp %define emacs_startdir %{_datadir}/emacs/site-lisp/site-start.d %else %define emacs_version %{expand:%(pkg-config emacs --modversion)} %define emacs_lispdir %{expand:%(pkg-config emacs --variable sitepkglispdir)} %define emacs_startdir %{expand:%(pkg-config emacs --variable sitestartdir)} %endif %if %($(pkg-config xemacs) ; echo $?) %global xemacs_version 21.5 %global xemacs_lispdir %{_datadir}/xemacs/site-packages %global xemacs_startdir %{_datadir}/xemacs/site-packages/site-start.d %else %global xemacs_version %(pkg-config xemacs --modversion) %global xemacs_lispdir %(pkg-config xemacs --variable sitepkglispdir) %global xemacs_startdir %(pkg-config xemacs --variable sitestartdir) %endif Summary: A language for scientific illustration Name: gri Version: 2.12.21 Release: 1%{?dist} Group: Applications/Engineering Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz License: GPLv3 URL: http://gri.sourceforge.net #Gri builds an internal popt. Fedora has a libpopt already Patch0: gri-disable-popt.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: popt-devel BuildRequires: readline-devel BuildRequires: tex(latex) BuildRequires: ImageMagick BuildRequires: texinfo BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Requires(post): info Requires(preun): info %description Gri is a language for scientific graphics programming. It is a command-driven application, as opposed to a click/point application. It is analogous to latex, and shares the property that extensive power is the reward for tolerating a modest learning curve. Gri output is in industry-standard PostScript, suitable for incorporation in documents prepared by various text processors. #Emacs package %package -n emacs-%{name} Summary: Emacs lisp bytecode files for %{name} under GNU Emacs Requires: emacs(bin) >= %{emacs_version} Group: Applications/Engineering BuildRequires: emacs-el BuildRequires: emacs %package -n emacs-%{name}-el Summary: Emacs lisp source files for %{name} under GNU Emacs Group: Applications/Engineering Requires: emacs(bin) >= %{emacs_version} Requires: emacs-%{name} = %{version}-%{release} BuildRequires: emacs-el %description -n emacs-%{name} This package provides emacs support for %{name} %description -n emacs-%{name}-el This package provides emacs source files for %{name} #XEmacs package %package -n xemacs-%{name} Summary: Compiled elisp files to run %{name} under XEmacs Group: Applications/Engineering Requires: xemacs(bin) >= %{xemacs_version} Requires: emacs-common-%{name} = %{version}-%{release} %package -n xemacs-%{name}-el Summary: Emacs lisp source files for %{name} under GNU Emacs Group: Applications/Engineering Requires: xemacs(bin) >= %{xemacs_version} Requires: xemacs-%{name} = %{version}-%{release} BuildRequires: xemacs-el %description -n xemacs-%{name} This package provides xemacs support for %{name} %description -n xemacs-%{name}-el This package provides xemacs source files for %{name} %prep %setup -q %patch0 #Text re-encode to UTF8 pushd . cd doc for i in gri.info* gri.texi do iconv -c -f iso8859-1 -t utf-8 $i > $i.conv && mv -f $i.conv $i done popd #Ensure we don't use any of gri's popt #stuff -- fedora has its own copy. rm -rf ./src/popt/* autoreconf -f %build %configure --enable-linux_redhat #Do NOT use smpflags. the docs makefile races make %install rm -rf $RPM_BUILD_ROOT # remove docinst if it is there from a previous build rm -rf docinst (cd doc ; make CARD_DIR=.. install-refcards) (cd doc ; make DESTDIR=$RPM_BUILD_ROOT HTML_DIR=../docinst/html EXAMPLES_DIR=../docinst/examples html-install) (cd docinst/html; ln -sf index.html gri1.html) cp -f README-linux-redhat README || : (cd src ; make install DESTDIR=$RPM_BUILD_ROOT) (cd doc ; make install-data-local DESTDIR=$RPM_BUILD_ROOT) # Install emacs mode %{__install} -d $RPM_BUILD_ROOT%{emacs_lispdir} %{__install} -d $RPM_BUILD_ROOT%{emacs_startdir} %{__install} -d $RPM_BUILD_ROOT%{xemacs_lispdir} %{__install} -d $RPM_BUILD_ROOT%{xemacs_startdir} pushd src/ emacs -batch -f batch-byte-compile %{name}-mode.el %{__install} -pm 0644 %{name}-mode.el %{name}-mode.elc $RPM_BUILD_ROOT%{emacs_lispdir}/ rm %{name}-mode.elc xemacs -batch -f batch-byte-compile %{name}-mode.el %{__install} -pm 0644 %{name}-mode.el %{name}-mode.elc $RPM_BUILD_ROOT%{xemacs_lispdir}/ popd #remove dangling symlinks unlink ./docinst/html/examples %post # add a gri entry to {_infodir}/dir if [ "$1" = 1 ] ; then if ! grep -i gri %{_infodir}/dir > /dev/null then /sbin/install-info --dir-file="%{_infodir}/dir" %{_infodir}/gri.info.gz || : fi fi %preun # remove instances of gri in {_infodir}/dir if [ "$1" = "0" ] ; then if grep -i "gri" %{_infodir}/dir > /dev/null then /sbin/install-info --dir-file="%{_infodir}/dir" --remove %{_infodir}/gri.info.gz || : fi fi %clean rm -Rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) %doc README copyright.txt license.txt %doc docinst/html %{_bindir}/gri %{_bindir}/gri_unpage %{_bindir}/gri_merge %{_datadir}/gri %{_mandir}/man1/gri.* %{_mandir}/man1/gri_unpage.* %{_mandir}/man1/gri_merge.* %{_infodir}/gri.info* %files -n emacs-%{name} %defattr(-,root,root,-) %{_datadir}/emacs/site-lisp/gri-mode.elc %files -n emacs-%{name}-el %defattr(-,root,root,-) %{_datadir}/emacs/site-lisp/gri-mode.el %files -n xemacs-%{name} %defattr(-,root,root,-) %{xemacs_lispdir}/*.elc %files -n xemacs-%{name}-el %defattr(-,root,root,-) %{xemacs_lispdir}/*.el %changelog * Mon Nov 8 2010 D Haley 2.12.21-1 - Update to gri-2.12.19 * Sun Jul 19 2009 D Haley 2.12.19-1 - Update to gri-2.12.19 * Sun Jul 12 2009 D Haley 2.12.18-3 - Add XEmacs subpackages - Fix preun postun install scripts to conform to fedora guidelines - Disabled internal popt library * Tue Feb 10 2009 D Haley 2.12.18-2 - Cleared many old changelog entries by D, Kelly & T Powers (year<=2005) - Drop readline buildreq. - Fix lic. GPLv2 to GPLv2+ - Create emacs subpackages - Fix release line to include dist macro * Fri Feb 06 2009 D Haley 2.12.18-1 - Change defattr - Update source - Update version to 2.12.18 - Add licence field - Shorten description - Fix encoding on gri.info - Add neccesary requires * Mon Jan 16 2006 Add -private and -no_private commandline options