%global realname lfe %global upstream rvirding %global debug_package %{nil} %global git_tag 15b36cb %global patchnumber 0 %if 0%{?el6}%{?fedora} %bcond_without emacs %else %bcond_with emacs %endif %if %{with emacs} # 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.1 %define emacs_lispdir %{_datadir}/emacs/site-lisp %define emacs_startdir %{_datadir}/emacs/site-lisp/site-start.d %else %define emacs_version %(pkg-config emacs --modversion) %define emacs_lispdir %(pkg-config emacs --variable sitepkglispdir) %define emacs_startdir %(pkg-config emacs --variable sitestartdir) %endif %endif Name: erlang-%{realname} Version: 0.6.2 Release: 1%{?dist} Summary: Lisp Flavoured Erlang Group: Development/Languages License: BSD URL: http://github.com/rvirding/lfe # wget --content-disposition http://github.com/rvirding/lfe/tarball/v0.6.2 Source0: %{upstream}-%{realname}-%{version}-%{patchnumber}-g%{git_tag}.tar.gz BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) BuildRequires: erlang-rebar %if %{with emacs} BuildRequires: emacs(bin), emacs-el >= 22.1-2 BuildRequires: pkgconfig BuildRequires: emacs BuildRequires: xemacs BuildRequires: emacs-el BuildRequires: xemacs-packages-extra-el %endif Requires: erlang-compiler%{?_isa} Requires: erlang-erts%{?_isa} Requires: erlang-kernel%{?_isa} # Error:erlang(unicode:characters_to_list/1) in R12B and earlier Requires: erlang-stdlib%{?_isa} >= R13B %description Lisp Flavoured Erlang, is a lisp syntax front-end to the Erlang compiler. Code produced with it is compatible with "normal" Erlang code. An LFE evaluator and shell is also included. %if %{with emacs} %package -n emacs-erlang-lfe Summary: Emacs major mode for Lisp Flavoured Erlang Group: Applications/Editors Requires: %{name} = %{version}-%{release} BuildArch: noarch %description -n emacs-erlang-lfe This package provides an Emacs major mode to edit Lisp Flavoured Erlang files. %package -n emacs-erlang-lfe-el Summary: Elisp source files for Lisp Flavoured Erlang under GNU Emacs Group: Applications/Editors Requires: %{name} = %{version}-%{release} BuildArch: noarch %description -n emacs-erlang-lfe-el This package contains the elisp source files for Lisp Flavoured Erlang under GNU Emacs. You do not need to install this package to run Lisp Flavoured Erlang. Install the emacs-erlang-lfe package to use Lisp Flavoured Erlang with GNU Emacs. %endif %prep %setup -q -n %{upstream}-%{realname}-%{git_tag} iconv -f iso-8859-1 -t UTF-8 README > README.utf8 mv -f README.utf8 README iconv -f iso-8859-1 -t UTF-8 examples/core-macros.lfe > examples/core-macros.lfe.utf8 mv -f examples/core-macros.lfe.utf8 examples/core-macros.lfe iconv -f iso-8859-1 -t UTF-8 doc/release_notes.txt > doc/release_notes.txt.utf8 mv -f doc/release_notes.txt.utf8 doc/release_notes.txt # Remove precompiled elisp binary rm emacs/lfe-mode.elc %build rebar compile -v %if %{with emacs} emacs -batch -f batch-byte-compile emacs/lfe-mode.el %endif %install rm -rf %{buildroot} install -p -m 0644 -D ebin/%{realname}.app %{buildroot}%{_libdir}/erlang/lib/%{realname}-%{version}/ebin/%{realname}.app install -p -m 0644 ebin/%{realname}_*.beam %{buildroot}%{_libdir}/erlang/lib/%{realname}-%{version}/ebin %if %{with emacs} mkdir -p %{buildroot}%{emacs_lispdir} mkdir -p %{buildroot}%{emacs_startdir} install -p -m 0644 emacs/lfe-mode.el %{buildroot}%{emacs_lispdir} install -p -m 0644 emacs/lfe-mode.elc %{buildroot}%{emacs_lispdir} install -p -m 0644 emacs/lfe-start.el %{buildroot}%{emacs_startdir} %endif %clean rm -rf %{buildroot} %check rebar eunit -v %files %doc COPYRIGHT README doc/ examples/ %if %{without emacs} %doc emacs/ %endif %dir %{_libdir}/erlang/lib/%{realname}-%{version} %dir %{_libdir}/erlang/lib/%{realname}-%{version}/ebin %{_libdir}/erlang/lib/%{realname}-%{version}/ebin/%{realname}.app %{_libdir}/erlang/lib/%{realname}-%{version}/ebin/%{realname}_*.beam %if %{with emacs} %files -n emacs-erlang-lfe %{emacs_startdir}/lfe-start.el %{emacs_lispdir}/lfe-mode.elc %files -n emacs-erlang-lfe-el %{emacs_lispdir}/lfe-mode.el %endif %changelog * Thu Oct 11 2012 Peter Lemenkov <lemenkov@gmail.com> - 0.6.2-1 - Ver. 0.6.2 (Backwards API/ABI compatible) * Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.1-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.1-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Wed Nov 17 2010 Peter Lemenkov <lemenkov@gmail.com> - 0.6.1-5 - Make building of emacs sub-packages conditional (and disable on EL-5) * Sun Nov 14 2010 Peter Lemenkov <lemenkov@gmail.com> - 0.6.1-4 - Remove duplicated emacs files from docs * Sun Oct 31 2010 Tim Niemueller <tim@niemueller.de> - 0.6.1-3 - Added Emacs sub-package - Fix inconsitent macro usage * Fri Oct 15 2010 Peter Lemenkov <lemenkov@gmail.com> - 0.6.1-2 - Provide (x)emacs subpackages * Fri Oct 1 2010 Peter Lemenkov <lemenkov@gmail.com> - 0.6.1-1 - Initial build