From cc9254b17cbfe044120d58053212eb9983631c11 Mon Sep 17 00:00:00 2001 From: David Levine Date: Sun, 11 Dec 2011 17:03:56 -0600 Subject: [PATCH] Added first cut at nmh.spec, along with rpm: target in Makefile.in. --- Makefile.in | 10 ++++++++++ nmh.spec | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 nmh.spec diff --git a/Makefile.in b/Makefile.in index 1fe2d38..a3ef699 100644 --- a/Makefile.in +++ b/Makefile.in @@ -111,6 +111,7 @@ clean-local: mostlyclean-local distclean-local: clean-local rm -f Makefile config.h config.status config.log config.cache stamp-h distname + $(RM) -r RPM realclean-local: distclean-local @@ -195,3 +196,12 @@ nmhrelease: cd $(ftpdir) && ln -s $(tarfile) nmh.tar.gz cd $(ftpdir) && md5sum *.gz > MD5SUM +# Create binary and source RPMs. Be care if using any existing build +# (make) products: it's usually a good idea to run make realclean first. +# _topdir puts build area in the RPM/ directory below the current one. +# _tmppath uses the specified local TMP. +rpm: all nmhdist + @rpmbuild --define '_topdir $(shell pwd)/RPM' \ + --define '_tmppath %{_topdir}/TMP' \ + --define 'srcdir $(shell pwd)' \ + -ba nmh.spec diff --git a/nmh.spec b/nmh.spec new file mode 100644 index 0000000..b736dc8 --- /dev/null +++ b/nmh.spec @@ -0,0 +1,64 @@ +# Assumes that rpmbuild was invoked main nmh directory using "make rpm". +# "make rpm" uses an RPM directory below the current directory. +# Note that Version cannot contain any dashes. + +Name: nmh +Version: 1.4.dev +Release: 1%{?dist} +Summary: A capable mail handling system with a command line interface. + +Group: Applications/Internet +License: BSD +URL: http://savannah.nongnu.org/projects/nmh +Source0: nmh-1.4-dev.tar.gz +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-build + +%description +Nmh is an email system based on the MH email system and is intended to +be a (mostly) compatible drop-in replacement for MH. Nmh isn't a +single comprehensive program. Instead, it consists of a number of +fairly simple single-purpose programs for sending, receiving, saving, +retrieving and otherwise manipulating email messages. You can freely +intersperse nmh commands with other shell commands or write custom +scripts which utilize nmh commands. If you want to use nmh as a true +email user agent, you'll want to also install exmh to provide a user +interface for it--nmh only has a command line interface. + +%prep +cp -p %{srcdir}/nmh-1.4-dev.tar.gz $RPM_SOURCE_DIR + + +%build + + +%install +rm -rf $RPM_BUILD_ROOT + +#### Assumes that configure was run with --prefix=/usr, at least. +#### The directory placements need to be cleaned up. +(cd %{srcdir} && \ + make install DESTDIR=$RPM_BUILD_ROOT SETGID_MAIL=) + +#### Not sure why .gz needs to be appended to man file names here. +#### But without it, the man files don't show the .gz extension: +find $RPM_BUILD_ROOT ! -type d -print | sed "s#^$RPM_BUILD_ROOT##g" > files + +#### Should do the following with an install target in docs/Makefile. +#### Note that these are excluded from files above because they're +#### added with doc's in the %files section below. +mkdir -p docs +cp -p %{srcdir}/VERSION %{srcdir}/COPYRIGHT . +for i in COMPLETION-* DIFFERENCES FAQ MAIL.FILTERING README* TODO; do + cp -p %{srcdir}/docs/$i docs +done + + +%clean +rm -rf files $RPM_BUILD_ROOT docs COPYRIGHT VERSION + + +%files -f files +%defattr(-,root,root,-) +%doc COPYRIGHT VERSION +%doc docs/COMPLETION-* docs/DIFFERENCES docs/FAQ docs/MAIL.FILTERING +%doc docs/README* docs/TODO -- 1.7.10.4