diff -r eaa40d75d36a -r 804dbcd7beb4 mutt/mutt.spec --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mutt/mutt.spec Sun Aug 05 21:46:09 2012 +0200 @@ -0,0 +1,270 @@ +## +## mutt.spec -- OpenPKG RPM Package Specification +## Copyright (c) 2000-2011 OpenPKG Foundation e.V. +## +## Permission to use, copy, modify, and distribute this software for +## any purpose with or without fee is hereby granted, provided that +## the above copyright notice and this permission notice appear in all +## copies. +## +## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED +## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR +## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +## SUCH DAMAGE. +## + +# package version +%define V_mutt 1.5.21 +%define V_mutt_patches 1.5.21 + +# package information +Name: mutt +Summary: Mail User Agent +URL: http://www.mutt.org/ +Vendor: Michael Elkins +Packager: OpenPKG Foundation e.V. +Distribution: OpenPKG Community +Class: BASE +Group: Mail +License: BSD +Version: %{V_mutt} +Release: 20110123 + +# build options +%option with_pop yes +%option with_imap yes +%option with_smtp yes +%option with_sasl yes +%option with_ssl yes +%option with_ncurses yes +%option with_hcache no +%option with_comp no +%option with_nntp no +%option with_initials no +%option with_quote no +%option with_sidebar no + +# list of sources +Source0: ftp://ftp.mutt.org/mutt/devel/mutt-%{V_mutt}.tar.gz +Source1: mailcap +Source2: muttrc +Patch0: ftp://ftp.mutt.org.ua/pub/mutt/mutt-%{V_mutt_patches}/patch-%{V_mutt_patches}.rr.compressed.gz +Patch1: ftp://ftp.mutt.org.ua/pub/mutt/mutt-%{V_mutt_patches}/patch-%{V_mutt_patches}.vvv.nntp.gz +Patch2: ftp://ftp.mutt.org.ua/pub/mutt/mutt-%{V_mutt_patches}/patch-%{V_mutt_patches}.vvv.initials.gz +Patch3: ftp://ftp.mutt.org.ua/pub/mutt/mutt-%{V_mutt_patches}/patch-%{V_mutt_patches}.vvv.quote.gz +Patch4: mutt.patch.sidebar +Patch5: mutt.patch + +# build information +BuildPreReq: OpenPKG, openpkg >= 20100101, make, perl +PreReq: OpenPKG, openpkg >= 20100101 +BuildPreReq: libidn, libiconv +PreReq: libidn, libiconv +%if "%{with_ssl}" == "yes" +BuildPreReq: openssl +PreReq: openssl +%endif +%if "%{with_sasl}" == "yes" +BuildPreReq: sasl +PreReq: sasl +%endif +%if "%{with_hcache}" == "yes" +BuildPreReq: qdbm +PreReq: qdbm +%endif +%if "%{with_ncurses}" == "yes" +BuildPreReq: ncurses +PreReq: ncurses +%else +BuildPreReq: slang +PreReq: slang +%endif + +%description + Mutt is a small but very powerful text based program for reading + electronic mail under Unix operating systems, including support for + color terminals, MIME, and a threaded sorting mode. + +%track + prog mutt = { + version = %{V_mutt} + url = ftp://ftp.mutt.org/mutt/devel/ + regex = mutt-(__VER__)\.tar\.gz + } + prog mutt:patch_rr_compressed = { + version = %{V_mutt_patches} + url = ftp://ftp.mutt.org.ua/pub/mutt/ + regex = mutt-(1\.5(\.\d+)+) + url = ftp://ftp.mutt.org.ua/pub/mutt/mutt-__NEWVER__/ + regex = patch-(__VER__)\.rr\.compressed\.gz + } + prog mutt:patch_vvv_initials = { + version = %{V_mutt_patches} + url = ftp://ftp.mutt.org.ua/pub/mutt/ + regex = mutt-(1\.5(\.\d+)+) + url = ftp://ftp.mutt.org.ua/pub/mutt/mutt-__NEWVER__/ + regex = patch-(__VER__)\.vvv\.initials\.gz + } + prog mutt:patch_vvv_nntp = { + version = %{V_mutt_patches} + url = ftp://ftp.mutt.org.ua/pub/mutt/ + regex = mutt-(1\.5(\.\d+)+) + url = ftp://ftp.mutt.org.ua/pub/mutt/mutt-__NEWVER__/ + regex = patch-(__VER__)\.vvv\.nntp\.gz + } + prog mutt:patch_vvv_quote = { + version = %{V_mutt_patches} + url = ftp://ftp.mutt.org.ua/pub/mutt/ + regex = mutt-(1\.5(\.\d+)+) + url = ftp://ftp.mutt.org.ua/pub/mutt/mutt-__NEWVER__/ + regex = patch-(__VER__)\.vvv\.quote\.gz + } + +%prep + %setup -q -n mutt-%{V_mutt} +%if "%{with_comp}" == "yes" + %{l_gzip} -d -c <%{PATCH0} |\ + sed -e '/^diff.*Makefile\.am/,/^diff/d' \ + -e '/^diff.*configure\.in /,/^diff/d' \ + -e '/^diff.*acconfig\.h /,/^diff/d' |\ + %{l_patch} -p1 + # add target without requiring autoconf(1) to rebuild Makefile.in + # from Makefile.am since definitions of the patch are wrongly + # placed at the very beginning of Makefile.in and get overwritten + # latter. + %{l_shtool} subst -s \ + -e 's;^\( \| \{8,\}\)\(crypt.c cryptglue.c .*\)$; compress.c \2;' \ + -e 's;^\( attach.h buffy.h charset.h \)\(copy.h .*\)$;\1compress.h \2;' \ + -e 's;^\( buffy.$(OBJEXT) color.$(OBJEXT) \)\(.*\)$;\1compress.$(OBJEXT) \2;' \ + Makefile.in +%endif +%if "%{with_nntp}" == "yes" + %{l_gzip} -d -c <%{PATCH1} |\ + sed -e '/^diff.*configure\.in /,/^diff/d' \ + -e '/^diff.*acconfig\.h /,/^diff/d' |\ + %{l_patch} -p1 +%endif +%if "%{with_initials}" == "yes" + %patch -p1 -P 2 +%endif +%if "%{with_quote}" == "yes" + %patch -p1 -P 3 +%endif +%if "%{with_sidebar}" == "yes" + %patch -p0 -P 4 +%endif + %patch -p0 -P 5 + %{l_shtool} subst \ + -e 's;\(Mutt/%%s\);\1 %{l_openpkg_release -F "OpenPKG/%%t"};' \ + sendlib.c + +%build + # configure for particular platform + options='' + export CC="%{l_cc}" + export CFLAGS="%{l_cflags -O}" +%if "%{with_ncurses}" == "yes" + export CPPFLAGS="%{l_cppflags ncurses libidn .}" +%else + export CPPFLAGS="%{l_cppflags libidn .}" +%endif + export LDFLAGS="-Limap %{l_ldflags}" + export LIBS="" + export INSTALL="%{l_shtool} install%{l_nil} -c" + case "%{l_platform -t}" in + *-freebsd* ) options="--enable-flock --disable-fcntl" ;; + *-linux* ) LIBS="$LIBS -ldl" ;; + esac +%if "%{with_sasl}" == "yes" + CFLAGS="$CFLAGS `pkg-config sasl --cflags`" + LDFLAGS="$LDFLAGS `pkg-config sasl --libs-only-L`" + LIBS="$LIBS `pkg-config sasl --libs-only-l`" +%endif + ./configure \ + --prefix=%{l_prefix} \ + --mandir=%{l_prefix}/man \ + --sysconfdir=%{l_prefix}/etc/mutt \ + --with-docdir=%{l_prefix}/share/mutt \ +%if "%{with_ncurses}" == "yes" + --with-curses=%{l_prefix} \ +%else + --with-slang=%{l_prefix} \ +%endif +%if "%{with_pop}" == "yes" + --enable-pop \ +%endif +%if "%{with_imap}" == "yes" + --enable-imap \ +%endif +%if "%{with_smtp}" == "yes" + --enable-smtp \ +%endif +%if "%{with_sasl}" == "yes" + --with-sasl=%{l_prefix} \ +%endif +%if "%{with_ssl}" == "yes" + --with-ssl=%{l_prefix} \ +%endif +%if "%{with_hcache}" == "yes" + --enable-hcache \ + --with-qdbm=%{l_prefix} \ +%endif +%if "%{with_comp}" == "yes" + --enable-compressed \ +%endif +%if "%{with_nntp}" == "yes" + --enable-nntp \ +%endif + --enable-pgp \ + --enable-smime \ + --enable-iconv \ + --disable-warnings \ + --disable-nls \ + $options + + # perform standard build procedure + %{l_make} %{l_mflags} + +%install + + # perform standard installation procedure + %{l_shtool} subst \ + -e "s;chmod 2755;true;" \ + -e "s;chgrp mail;true;" \ + Makefile + %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT + + # strip down installation tree + rm -f $RPM_BUILD_ROOT%{l_prefix}/share/mutt/[A-Za-d]* + rm -f $RPM_BUILD_ROOT%{l_prefix}/share/mutt/patch-notes.txt + rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/mutt/html + rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/mutt/samples + rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/flea + rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/flea.1 + rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/muttbug + rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/muttbug.1 + strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true + + # install additional files + %{l_shtool} install -c -m 644 %{l_value -s -a} \ + %{SOURCE muttrc} $RPM_BUILD_ROOT%{l_prefix}/etc/mutt/Muttrc + %{l_shtool} install -c -m 644 %{l_value -s -a} \ + %{SOURCE mailcap} $RPM_BUILD_ROOT%{l_prefix}/etc/mutt/mailcap + + # determine installation files + %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \ + %{l_files_std} \ + '%config %{l_prefix}/etc/mutt/*' + +%files -f files + +%clean +