## ## mutt.spec -- OpenPKG RPM Package Specification ## Copyright (c) 2000-2008 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.17 %define V_mutt_patches 1.5.17 %define V_mutt_patches_sidebar 1.5.17.sidebar.20080412 # 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: 20080412 # build options %option with_pop no %option with_imap no %option with_smtp no %option with_sasl no %option with_ssl no %option with_hcache no %option with_comp no %option with_nntp no %option with_initials no %option with_quote no %option with_sidebar no %option with_ncurses 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: http://lunar-linux.org/~tchan/mutt/patch-%{V_mutt_patches_sidebar}.txt Patch5: mutt.patch.sidebar # build information Prefix: %{l_prefix} BuildRoot: %{l_buildroot} BuildPreReq: OpenPKG, openpkg >= 20060622, make PreReq: OpenPKG, openpkg >= 20060622 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 AutoReq: no AutoReqProv: no %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 } prog mutt:patch_sidebar = { version = %{V_mutt_patches_sidebar} url = http://www.lunar-linux.org/index.php?option=com_content&task=view&id=44 regex = patch-(__VER__\.sidebar\.__VER__)\.txt } %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 -p1 -P 4 %patch -p0 -P 5 %endif %{l_shtool} subst \ -e 's;\(Mutt/%%s\);\1 %{l_openpkg_release -F "OpenPKG/%%t"};' \ sendlib.c %build # configure for particular platform options='' libs='' case "%{l_platform -t}" in *-freebsd* ) options="--enable-flock --disable-fcntl" ;; *-linux* ) libs="-ldl" ;; esac CC="%{l_cc}" \ CFLAGS="%{l_cflags -O}" \ %if "%{with_ncurses}" == "yes" CPPFLAGS="%{l_cppflags ncurses libidn .}" \ %else CPPFLAGS="%{l_cppflags libidn .}" \ %endif LDFLAGS="-Limap %{l_ldflags}" \ LIBS="$libs" \ INSTALL="%{l_shtool} install%{l_nil} -c" \ ./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-buffy-size \ --with-iconv \ --disable-warnings \ --disable-nls \ $options # perform standard build procedure %{l_make} %{l_mflags} %install rm -rf $RPM_BUILD_ROOT # 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 rm -rf $RPM_BUILD_ROOT