# disable the debug package since it produces nothing useful due to e3
# being written in assembly
%global debug_package %{nil}
Name: e3
Version: 2.8
Release: 3%{?dist}
Summary: Text editor with key bindings similar to WordStar, Emacs, pico, nedit, or vi
Group: Applications/Editors
License: GPLv2
URL: https://sites.google.com/site/e3editor/
Source0: https://sites.google.com/site/e3editor/Home/%{name}-%{version}.tgz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# mark the stack as non-executable and disable tiny/crippled elf on 32
# bit linux so that stack can be marked as non-executable on it too
# http://www.gentoo.org/proj/en/hardened/gnu-stack.xml
Patch0: e3-gnu-stack.patch
BuildRequires: nasm
ExclusiveArch: %{ix86} x86_64
%description
e3 is a full-screen, user-friendly text editor with an key bindings similar to
that of either WordStar, Emacs, pico, nedit, or vi.
%prep
%setup -q
# delete the included binaries
rm -rf bin
%patch0 -p1
%build
%ifarch x86_64
make PREFIX=%{_prefix} MANDIR=%{_mandir}/man1 EXMODE=SED 64
%else
make PREFIX=%{_prefix} MANDIR=%{_mandir}/man1 EXMODE=SED 32
%endif
%install
rm -rf %{buildroot}
# The Makefile does not have the feature to speciy a DESTDIR so we do this by
# hand
mkdir -p %{buildroot}%{_bindir}
install -m 755 e3 %{buildroot}%{_bindir}
ln -sf %{_bindir}/e3 %{buildroot}%{_bindir}/e3ws
ln -sf %{_bindir}/e3 %{buildroot}%{_bindir}/e3em
ln -sf %{_bindir}/e3 %{buildroot}%{_bindir}/e3pi
ln -sf %{_bindir}/e3 %{buildroot}%{_bindir}/e3vi
ln -sf %{_bindir}/e3 %{buildroot}%{_bindir}/e3ne
mkdir -p %{buildroot}%{_mandir}/man1/
install -m 644 e3.man %{buildroot}%{_mandir}/man1/e3.1
ln -sf %{_mandir}/man1/e3.1 %{buildroot}%{_mandir}/man1/e3ws.1
ln -sf %{_mandir}/man1/e3.1 %{buildroot}%{_mandir}/man1/e3em.1
ln -sf %{_mandir}/man1/e3.1 %{buildroot}%{_mandir}/man1/e3pi.1
ln -sf %{_mandir}/man1/e3.1 %{buildroot}%{_mandir}/man1/e3vi.1
ln -sf %{_mandir}/man1/e3.1 %{buildroot}%{_mandir}/man1/e3ne.1
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%doc COPYRIGHT COPYING.GPL README README_OLD ChangeLog e3.html
%{_bindir}/e3*
%{_mandir}/man1/e3*
%changelog
* Fri Feb 22 2013 Mark McKinstry <mmckinst@nexcess.net> - 2.8-3
- patch to mark the stack as non-executable
* Wed Dec 5 2012 Mark McKinstry <mmckinst@nexcess.net> - 2.8-2
- disable deubg package
* Tue Jan 3 2012 Mark McKinstry <mmckinst@nexcess.net> 2.8-1
- initial build