Forráskód Böngészése

Change virtual package name from "mta" to "MTA" and also replace "sendmail" requirements to "MTA" in order to allow packages to work with Postfix instead of Sendmail.

Ralf S. Engelschall 24 éve
szülő
commit
3c4dc40fda
7 módosított fájl, 931 hozzáadás és 0 törlés
  1. 94 0
      dcron/dcron.spec
  2. 202 0
      inn/inn.spec
  3. 84 0
      nail/nail.spec
  4. 1 0
      postfix/postfix.spec
  5. 122 0
      qpopper/qpopper.spec
  6. 326 0
      sendmail/sendmail.spec
  7. 102 0
      ssmtp/ssmtp.spec

+ 94 - 0
dcron/dcron.spec

@@ -0,0 +1,94 @@
+##
+##  dcron.spec -- OpenPKG RPM Specification
+##  Copyright (c) 2000-2001 Cable & Wireless Deutschland GmbH
+##  Copyright (c) 2000-2001 Ralf S. Engelschall <rse@engelschall.com>
+##
+##  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 information
+Name:         dcron
+Summary:      Dillon's cron
+Group:        System
+URL:          http://www.ibiblio.org/pub/Linux/system/daemons/cron/
+Vendor:       Free Software Foundation
+Packager:     cs@openpkg.org
+Distribution: OpenPKG
+License:      GPL
+Version:      2.3.3
+Release:      2
+
+#   list of sources
+Source0:      http://www.ibiblio.org/pub/Linux/system/daemons/cron/dcron-%{version}.tar.gz
+Source1:      rc.dcron
+Patch0:       dcron-%{version}.patch
+
+#   build information
+Prefix:       %{l_prefix}
+BuildRoot:    %{l_buildroot}
+BuildPreReq:  OpenPKG, openpkg >= 0.9-30
+PreReq:       OpenPKG, openpkg >= 0.9-30, MTA, vim
+AutoReq:      no
+AutoReqProv:  no
+
+%description
+    A multi-user cron written from scratch by the author, similar to vixie-cron
+    but with significant differences. Attention paid less to feature creep and
+    more to usability and reliability.
+
+%prep
+    %setup -q
+    %patch -p1
+
+%build
+    %{l_rpmtool} subst \
+        's;/var/spool/cron/crontabs;%{l_prefix}/var/dcron/crontabs;' \
+        's;/usr/lib/sendmail;%{l_prefix}/sbin/sendmail;' \
+        's;/usr/bin/vi;%{l_prefix}/bin/vi;' \
+        's;/var/run/dcron.pid;%{l_prefix}/var/dcron/dcron.pid;' \
+        -- defs.h
+    %{l_make} %{l_mflags -O} \
+        CC="%{l_cc}" \
+        CFLAGS="%{l_cflags}"
+
+%install
+    rm -rf $RPM_BUILD_ROOT
+    %{l_shtool} mkdir -f -p -m 755 \
+        $RPM_BUILD_ROOT%{l_prefix}/bin \
+        $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d \
+        $RPM_BUILD_ROOT%{l_prefix}/man/man1 \
+        $RPM_BUILD_ROOT%{l_prefix}/man/man8 \
+        $RPM_BUILD_ROOT%{l_prefix}/sbin \
+        $RPM_BUILD_ROOT%{l_prefix}/var/dcron/crontabs
+    %{l_shtool} install -c -s -m 755 crontab $RPM_BUILD_ROOT%{l_prefix}/bin/
+    %{l_shtool} install -c -s -m 755 crond $RPM_BUILD_ROOT%{l_prefix}/sbin/
+    %{l_shtool} install -c -m 644 crontab.1 $RPM_BUILD_ROOT%{l_prefix}/man/man1/
+    %{l_shtool} install -c -m 644 crond.8 $RPM_BUILD_ROOT%{l_prefix}/man/man8/
+    %{l_shtool} install -c -m 755 -e 's;@l_prefix@;%{l_prefix};' \
+        %{SOURCE rc.dcron} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
+    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
+        %{l_files_std} \
+        '%attr(4755,root,%{l_fsgrp}) %{l_prefix}/bin/crontab'
+
+
+%files -f files
+
+%clean
+  rm -rf $RPM_BUILD_ROOT
+

+ 202 - 0
inn/inn.spec

@@ -0,0 +1,202 @@
+##
+##  inn.spec -- OpenPKG RPM Specification
+##  Copyright (c) 2000-2001 Cable & Wireless Deutschland GmbH
+##  Copyright (c) 2000-2001 Ralf S. Engelschall <rse@engelschall.com>
+##
+##  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 information
+Name:         inn
+Summary:      InterNetNews Usenet Server
+Group:        News
+URL:          http://www.isc.org/products/INN/
+Vendor:       Internet Software Consortium
+Packager:     rse@openpkg.org
+Distribution: OpenPKG
+License:      ISC
+Version:      2.3.2
+Release:      6
+
+#   list of sources
+Source0:      ftp://ftp.isc.org/isc/inn/inn-%{version}.tar.gz
+Source1:      ftp://ftp.openpkg.org/DST/inn/fakesyslog.tar.gz
+Source2:      rc.inn
+
+#   build information
+Prefix:       %{l_prefix}
+BuildRoot:    %{l_buildroot}
+BuildPreReq:  OpenPKG, openpkg >= 0.9-30, make, perl, db, openssl
+PreReq:       OpenPKG, openpkg >= 0.9-30, perl, MTA
+AutoReq:      no
+AutoReqProv:  no
+
+%description
+    InterNetNews (INN) is a complete Usenet system. It includes innd, an
+    NNTP server, and nnrpd, a newsreading server. INN separates hosts
+    that feed you news from those that have users reading news.
+
+%prep
+    %setup0 -q -c
+    %setup1 -q -T -D -a 1
+
+%build
+    #   make sure INN finds our own files
+    PATH="%{l_prefix}/bin:$PATH"
+    export PATH
+
+    #   build faked syslog(3) library
+    fakesyslogdir="`pwd`/fakesyslog"
+    ( cd fakesyslog
+      CC="%{l_cc}" \
+      CFLAGS="%{l_cflags -O}" \
+      ./configure \
+          --with-logfile=%{l_prefix}/var/inn/log/news.log
+      %{l_make} %{l_mflags} 
+    )
+
+    #   adjust some too strange INN paths
+    cd inn-%{version}
+    %{l_rpmtool} subst \
+        "s;^\\(PATHBIN.*=\\).*;\\1 \$(PATHNEWS)/libexec/inn;" \
+        -- Makefile.global.in
+    %{l_rpmtool} subst \
+        "s;^\\(pathbin:.*\\)@prefix@.*;\\1@prefix@/libexec/inn;" \
+        -- samples/inn.conf.in
+
+    #   configure the source tree
+    CC="%{l_cc}" \
+    CFLAGS="%{l_cflags -O}" \
+    LDFLAGS="-L$fakesyslogdir" \
+    LIBS="-lfakesyslog" \
+    ./configure \
+        --prefix=%{l_prefix} \
+        --bindir=%{l_prefix}/libexec/inn \
+        --with-etc-dir=%{l_prefix}/etc/inn \
+        --with-db-dir=%{l_prefix}/var/inn/db \
+        --with-control-dir=%{l_prefix}/libexec/inn/control \
+        --with-filter-dir=%{l_prefix}/libexec/inn/filter \
+        --with-lib-dir=%{l_prefix}/lib/inn \
+        --with-log-dir=%{l_prefix}/var/inn/log \
+        --with-run-dir=%{l_prefix}/var/inn/run \
+        --with-spool-dir=%{l_prefix}/var/inn/spool \
+        --with-tmp-path=%{l_prefix}/var/inn/tmp \
+        --with-openssl=%{l_prefix} \
+        --with-berkeleydb=%{l_prefix} \
+        --with-news-user=%{l_fsusr} \
+        --with-news-group=%{l_fsusr} \
+        --with-news-master=%{l_fsusr} \
+        --with-sendmail=%{l_prefix}/sbin/sendmail
+
+    #   build the INN system
+    %{l_make} %{l_mflags}
+
+%install
+    rm -rf $RPM_BUILD_ROOT
+    cd inn-%{version}
+
+    #   determine current user and group
+    thisuser=`(id -un) 2>/dev/null ||\
+          (whoami) 2>/dev/null ||\
+          (who am i | cut "-d " -f1) 2>/dev/null ||\
+          echo $LOGNAME`
+    thisgroup=`(cat /etc/passwd; ypcat passwd) 2>/dev/null |\
+               grep "^${thisuser}:" | awk -F: '{ print $4; }' | head -1`
+    thisgroup=`(cat /etc/group; ypcat group) 2>/dev/null |\
+               grep ":${thisgroup}:" | awk -F: '{ print $1; }' | head -1`
+    if [ ".$thisgroup" = . ]; then
+        thisgroup="$thisuser"
+    fi
+
+    #   adjust INN installation procedure
+    %{l_rpmtool} subst \
+        "s;^\\(prefix.*=\\).*;\\1 $RPM_BUILD_ROOT%{l_prefix};" \
+        "s;^\\(PATH.*=[    ]*\\)\\(%{l_prefix}\\);\\1 $RPM_BUILD_ROOT\\2;" \
+        "s;^\\(NEWSUSER.*=\\).*;\\1 $thisuser;" \
+        "s;^\\(NEWSGROUP.*=\\).*;\\1 $thisgroup;" \
+        "s;^\\(OWNER.*=\\).*;\\1;" \
+        "s;^\\(ROWNER.*=\\).*;\\1;" \
+        -- Makefile.global
+
+    #   perform installation procedure
+    %{l_make} %{l_mflags} install 
+
+    #   make some programs manually accessible
+    %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/bin/
+    for bin in controlbatch controlchan news2mail startinnfeed overchan \
+        archive innmail innconfval ctlinnd inews rnews nntpsend; do
+        ln $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/$bin \
+           $RPM_BUILD_ROOT%{l_prefix}/bin/$bin
+    done
+
+    #   strip installation
+    rm -f $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/filter/*.py
+    rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/inn/*.tcl
+    rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/inn/lib*.a
+    rm -f $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/ovdb_upgrade
+    ln $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/ovdb_recover \
+       $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/ovdb_upgrade
+
+    #   adjust configuration
+    ( echo ''
+      echo '# dummy entry to make INN happy as long as'
+      echo '# this server has no real newsfeeds configured.'
+      echo 'echo "dummy-feed:!*::'
+      echo ''
+    ) >>$RPM_BUILD_ROOT%{l_prefix}/etc/inn/newsfeeds
+    ( echo ''
+      echo '# use the traditional spool area for storage'
+      echo 'method tradspool {'
+      echo '       newsgroups: *'
+      echo '       class: 1'
+      echo '}'
+    ) >>$RPM_BUILD_ROOT%{l_prefix}/etc/inn/storage.conf
+
+    #   create initial history database
+    ( cd $RPM_BUILD_ROOT%{l_prefix}/var/inn/db
+      touch history
+      INNCONF=$RPM_BUILD_ROOT%{l_prefix}/etc/inn/inn.conf \
+      $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/makedbz -i -f ./history
+      chmod 644 history*
+    )
+
+    #   create empty logfiles
+    touch $RPM_BUILD_ROOT%{l_prefix}/var/inn/log/news.log
+
+    #   install run-command script
+    %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
+    %{l_shtool} install -c -m 755 \
+        -e 's;@l_prefix@;%{l_prefix};g' \
+        -e 's;@l_fsusr@;%{l_fsusr};g' \
+        -e 's;@l_fsgrp@;%{l_fsgrp};g' \
+        %{SOURCE rc.inn} \
+        $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
+
+    #   determine file list
+    %{l_rpmtool} files -v -o../files -r$RPM_BUILD_ROOT \
+        %{l_files_std} \
+        '%config %{l_prefix}/etc/inn/*' \
+        '%attr(4755,root,%{l_fsgrp}) %{l_prefix}/libexec/inn/inndstart' \
+        '%attr(4755,root,%{l_fsgrp}) %{l_prefix}/libexec/inn/startinnfeed'
+
+%files -f files
+
+%clean
+    rm -rf $RPM_BUILD_ROOT
+

+ 84 - 0
nail/nail.spec

@@ -0,0 +1,84 @@
+##
+##  nail.spec -- OpenPKG RPM Specification
+##  Copyright (c) 2000-2001 Cable & Wireless Deutschland GmbH
+##  Copyright (c) 2000-2001 Ralf S. Engelschall <rse@engelschall.com>
+##
+##  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 information
+Name:         nail
+Summary:      A MIME-capable Berkeley Mail
+Group:        Mail
+URL:          http://omnibus.ruf.uni-freiburg.de/~gritter/
+Vendor:       BSD, Gunnar Ritter
+Packager:     rse@openpkg.org
+Distribution: OpenPKG
+License:      BSD
+Version:      9.27
+Release:      2
+
+#   list of sources
+Source0:      http://omnibus.ruf.uni-freiburg.de/~gritter/archive/nail/nail-%{version}.tar.gz
+
+#   build information
+Prefix:       %{l_prefix}
+BuildRoot:    %{l_buildroot}
+BuildPreReq:  OpenPKG, openpkg >= 0.9-30, MTA
+PreReq:       OpenPKG, openpkg >= 0.9-30, MTA
+AutoReq:      no
+AutoReqProv:  no
+
+%description
+    Nail is a mail user agent derived from Berkeley Mail 8.1 and
+    contains builtin support for MIME messages. This means it can handle
+    international character sets as well as attachments. In recent
+    system environments, nail is Unicode/UTF-8 capable. It further
+    contains some minor enhancements like the ability to set a From:
+    Address.
+
+%prep
+    %setup -q 
+
+%build
+    CC="%{l_cc}" \
+    CFLAGS="%{l_cflags -O}" \
+    ./configure \
+        --prefix=%{l_prefix} \
+        --with-sendmail=%{l_prefix}/sbin/sendmail \
+        --disable-nls
+    %{l_make} %{l_mflags -O}
+
+%install
+    rm -rf $RPM_BUILD_ROOT
+    %{l_make} %{l_mflags} install \
+        DESTDIR=$RPM_BUILD_ROOT \
+        AM_MAKEFLAGS="DESTDIR=$RPM_BUILD_ROOT"
+    ln $RPM_BUILD_ROOT%{l_prefix}/bin/nail \
+       $RPM_BUILD_ROOT%{l_prefix}/bin/mail 
+    ln $RPM_BUILD_ROOT%{l_prefix}/man/man1/nail.1 \
+       $RPM_BUILD_ROOT%{l_prefix}/man/man1/mail.1
+    strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
+    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
+
+%files -f files
+
+%clean
+    rm -rf $RPM_BUILD_ROOT
+

+ 1 - 0
postfix/postfix.spec

@@ -51,6 +51,7 @@ BuildPreReq:  OpenPKG, openpkg >= 0.9-30, db, openssl
 PreReq:       OpenPKG, openpkg >= 0.9-30, db, openssl
 AutoReq:      no
 AutoReqProv:  no
+Provides:     MTA
 
 %description
     Postfix is a new-generation Mail Transfer Agent (MTA) aimed to

+ 122 - 0
qpopper/qpopper.spec

@@ -0,0 +1,122 @@
+##
+##  qpopper.spec -- OpenPKG RPM Specification
+##  Copyright (c) 2000-2001 Cable & Wireless Deutschland GmbH
+##  Copyright (c) 2000-2001 Ralf S. Engelschall <rse@engelschall.com>
+##
+##  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 information
+Name:         qpopper
+Summary:      POP3 Daemon
+Group:        Mail
+URL:          http://www.eudora.com/qpopper/
+Vendor:       Qualcom
+Packager:     rse@openpkg.org
+Distribution: OpenPKG
+License:      GPL
+Version:      4.0.3
+Release:      2
+
+#   list of sources
+Source0:      ftp://ftp.qualcomm.com/eudora/servers/unix/popper/qpopper%{version}.tar.gz
+Source1:      rc.qpopper
+
+#   build information
+Prefix:       %{l_prefix}
+BuildRoot:    %{l_buildroot}
+BuildPreReq:  OpenPKG, openpkg >= 0.9-30, MTA
+PreReq:       OpenPKG, openpkg >= 0.9-30, MTA
+AutoReq:      no
+AutoReqProv:  no
+
+%description
+    Qualcom Popper is a POP3 Daemon.
+
+%prep
+    %setup0 -q -n qpopper%{version}
+
+%build
+    CC="%{l_cc}" \
+    CFLAGS="%{l_cflags -O}" \
+    ./configure \
+        --prefix=%{l_prefix} \
+        --sbindir=%{l_prefix}/sbin \
+        --disable-bulldb \
+        --enable-servermode \
+        --enable-standalone \
+        --enable-log-login \
+        --with-pam=qpopper \
+        --enable-home-dir-mail=.mail/inbox \
+        --with-log-facility=LOG_LOCAL5 \
+        --enable-nonauth-file=%{l_prefix}/etc/qpopper/users.deny \
+        --disable-nls
+    %{l_rpmtool} subst \
+        's;\(MAIL_COMMAND[^"]*"\)[^"]*;\1%{l_prefix}/sbin/sendmail;' \
+        -- config.h
+    %{l_make} %{l_mflags -O}
+
+%install
+    rm -rf $RPM_BUILD_ROOT
+    %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/bin
+    %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/man/man8
+    %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/qpopper
+    %{l_shtool} install -c -s -m 755 popper/popper $RPM_BUILD_ROOT%{l_prefix}/bin/qpopper
+    %{l_shtool} install -c -m 644 man/popper.8 $RPM_BUILD_ROOT%{l_prefix}/man/man8/qpopper.8
+    %{l_shtool} install -c -m 644 /dev/null $RPM_BUILD_ROOT%{l_prefix}/etc/qpopper/users.deny
+    %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
+    %{l_shtool} install -c -m 755 -e "s;@l_prefix@;%{l_prefix};g" \
+        %{SOURCE rc.qpopper} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
+    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
+
+%files -f files
+
+%clean
+    rm -rf $RPM_BUILD_ROOT
+
+%post
+    #   add PAM configuration entry
+    check=`grep '^#<OpenPKG pkg=qpopper>' /etc/pam.conf`
+    if [ ".$check" = . ]; then
+        ( echo "#<OpenPKG pkg=qpopper>"
+          case "%{l_target}" in
+              *-freebsd* ) 
+                  echo "qpopper auth required pam_unix.so try_first_pass"
+                  ;;
+              *-linux* ) 
+                  echo "qpopper auth required /lib/security/pam_unix.so shadow nodelay"
+                  ;;
+              *-solaris* ) 
+                  echo "qpopper auth required /usr/lib/security/pam_unix.so try_first_pass"
+                  ;;
+          esac
+          echo "#</OpenPKG>"
+        ) >>/etc/pam.conf
+    fi
+
+%preun
+    #   remove PAM configuration entry
+    check=`grep '^#<OpenPKG pkg=qpopper>' /etc/pam.conf`
+    if [ ".$check" != . ]; then
+        cp /etc/pam.conf /etc/pam.conf.tmp && \
+        sed -e '/^#<OpenPKG pkg=qpopper>/,/^#<\/OpenPKG>/d' \
+        </etc/pam.conf.tmp >/etc/pam.conf && \
+        rm -f /etc/pam.conf.tmp
+    fi
+

+ 326 - 0
sendmail/sendmail.spec

@@ -0,0 +1,326 @@
+##
+##  sendmail.spec -- OpenPKG RPM Specification
+##  Copyright (c) 2000-2001 Cable & Wireless Deutschland GmbH
+##  Copyright (c) 2000-2001 Ralf S. Engelschall <rse@engelschall.com>
+##
+##  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. 
+##  
+
+%define       V_sendmail  8.11.6
+%define       V_wide      8.11.6+3.4W
+%define       V_smtpfeed  1.16
+%define       V_lmtp2nntp 1.0.0
+
+#   package information
+Name:         sendmail
+Summary:      Mail Transfer Agent
+Group:        Mail
+URL:          http://www.sendmail.org/
+Vendor:       Eric Allman
+Packager:     rse@openpkg.org
+Distribution: OpenPKG
+License:      BSD
+Version:      %{V_sendmail}
+Release:      11
+
+#   list of sources
+Source0:      ftp://ftp.sendmail.org/pub/sendmail/sendmail.%{V_sendmail}.tar.gz
+Source1:      ftp://ftp.kyoto.wide.ad.jp/pub/mail/smtpfeed/smtpfeed-%{V_smtpfeed}.tar.gz
+Source2:      ftp://ftp.ossp.org/pkg/lmtp2nntp/lmtp2nntp-%{V_lmtp2nntp}.tar.gz
+Source3:      etc.sendmail.tar
+Source4:      ftp://ftp.openpkg.org/DST/sendmail/fakesyslog.tar.gz
+Source5:      cf.tar
+Source6:      rc.sendmail
+Patch0:       ftp://ftp.kyoto.wide.ad.jp/pub/mail/sendmail/sendmail%{V_wide}.patch.gz
+Patch1:       sendmail.%{V_sendmail}.patch.autonomous
+
+#   build information
+Prefix:       %{l_prefix}
+BuildRoot:    %{l_buildroot}
+BuildPreReq:  openpkg >= 0.9-24, m4, make, db, openssl, sfio, patch
+PreReq:       openpkg >= 0.9-24, m4, make, perl, procmail
+AutoReq:      no
+AutoReqProv:  no
+Provides:     MTA
+
+%description
+    Sendmail is the most-popular Mail Transfer Agent (MTA).
+
+    Local specifics in this OpenPKG version:
+    o Sendmail uses two process pools (incoming and outgoing)
+    o Sendmail logs directly to the filesystem and not via syslog(3)
+    o Sendmail delivers local mail via Procmail to ~<user>/.mail/inbox
+    o Sendmail by default uses SMTPfeed for outgoing mass-delivery
+    o Sendmail by default supports STARTTLS
+
+%prep
+    #   unpack standard tarballs
+    %setup0 -q -c
+    %setup1 -q -T -D -a 1
+    %setup2 -q -T -D -a 2
+    %setup3 -q -T -D -a 3
+    %setup4 -q -T -D -a 4
+
+    #   apply Sendmail patch manually
+    ( cd sendmail-%{V_sendmail}/sendmail
+      %{l_gzip} -dc %{SOURCE sendmail%{V_wide}.patch.gz} |\
+      sed -e 's;LOG_INFO;LOG_DEBUG;' | %{l_patch} -p1
+      %{l_patch} -p1 <%{SOURCE sendmail.%{V_sendmail}.patch.autonomous}
+    )
+
+    #   add own M4 stuff to Sendmail configuration set
+    ( cd sendmail-%{V_sendmail}
+      %{l_tar} xf %{SOURCE cf.tar} 
+    )
+
+%build
+    PATH="%{l_prefix}/bin:$PATH"; export PATH
+
+    #   build faked syslog(3) library
+    fakesyslogdir="`pwd`/fakesyslog"
+    ( cd fakesyslog
+      CC="%{l_cc}" \
+      CFLAGS="%{l_cflags -O}" \
+      ./configure \
+          --with-logfile=%{l_prefix}/var/sendmail/sendmail.log
+      %{l_make} %{l_mflags} 
+    )
+
+    #   build Sendmail
+    ( cd sendmail-%{V_sendmail}
+
+      #   indicate with a plus sign that we use a patched version
+      chmod u+w sendmail/version.c
+      %{l_rpmtool} subst \
+          's;\(Version\[\][^"]*\)"[^"]*";\1"%{V_sendmail}+";' \
+          -- sendmail/version.c
+
+      #   configure Sendmail
+      (   echo "define(\`confMAPDEF', \`-DMAP_REGEX')dnl"
+          echo "define(\`confSBINOWN', \`%{l_fsusr}')dnl"
+          echo "define(\`confSBINGRP', \`%{l_fsgrp}')dnl"
+          echo "define(\`confUBINOWN', \`%{l_fsusr}')dnl"
+          echo "define(\`confUBINGRP', \`%{l_fsgrp}')dnl"
+          echo "define(\`confMANOWN', \`%{l_fsusr}')dnl"
+          echo "define(\`confMANGRP', \`%{l_fsgrp}')dnl"
+          echo "define(\`confEBINDIR', \`%{l_prefix}/libexec/sendmail')dnl"
+          echo "define(\`confHFDIR', \`%{l_prefix}/etc/sendmail')dnl"
+          echo "define(\`confHFFILE', \`sendmail.help')dnl"
+          echo "define(\`confINCLUDEDIR', \`%{l_prefix}/include/sendmail')dnl"
+          echo "define(\`confINSTALL_RAWMAN', \`1')dnl"
+          echo "define(\`confLIBDIR', \`%{l_prefix}/lib/sendmail')dnl"
+          echo "define(\`confMANROOT', \`%{l_prefix}/man/cat')dnl"
+          echo "define(\`confMANROOTMAN', \`%{l_prefix}/man/man')dnl"
+          echo "define(\`confMBINDIR', \`%{l_prefix}/sbin')dnl"
+          echo "define(\`confSBINDIR', \`%{l_prefix}/sbin')dnl"
+          echo "define(\`confSHAREDLIBDIR', \`%{l_prefix}/lib')dnl"
+          echo "define(\`confSTDIR', \`%{l_prefix}/var/sendmail')dnl"
+          echo "define(\`confSTFILE', \`sendmail.stat')dnl"
+          echo "define(\`confUBINDIR', \`%{l_prefix}/bin')dnl"
+          echo "define(\`confLNOPTS', \`-f')dnl"
+          echo "APPENDDEF(\`confENVDEF', \`-DPATCH_AUTONOMOUS')dnl"
+          echo "APPENDDEF(\`confENVDEF', \`-D_PATH_SENDMAILCF=\\\"%{l_prefix}/etc/sendmail/sendmail.cf\\\"')dnl"
+          echo "APPENDDEF(\`confENVDEF', \`-D_PATH_SENDMAILPID=\\\"%{l_prefix}/var/sendmail/sendmail.pid\\\"')dnl"
+          echo "APPENDDEF(\`confENVDEF', \`-DSFIO')dnl"
+          echo "APPENDDEF(\`confINCDIRS', \`-I%{l_prefix}/include')dnl"
+          echo "APPENDDEF(\`confLIBDIRS', \`-L%{l_prefix}/lib')dnl"
+          echo "APPENDDEF(\`confLIBS', \`-ldb')dnl"
+          echo "define(\`confSTDIO_TYPE', \`portable')dnl"
+          echo "APPENDDEF(\`confINCDIRS', \`-I%{l_prefix}/include/sfio')dnl"
+          echo "APPENDDEF(\`confLIBS', \`-lsfio')dnl"
+          echo "APPENDDEF(\`conf_sendmail_ENVDEF', \`-DSTARTTLS')dnl"
+          echo "APPENDDEF(\`conf_sendmail_LIBS', \`-lssl -lcrypto')dnl"
+          echo "APPENDDEF(\`confLIBDIRS', \`-L$fakesyslogdir')dnl"
+          echo "APPENDDEF(\`confLIBS', \`-lfakesyslog')dnl"
+      ) >devtools/Site/site.config.m4
+
+      #   build Sendmail package
+      %{l_make} %{l_mflags} 
+    )
+
+    #   build the LMTP mailer SMTPFeed 
+    ( cd smtpfeed-%{V_smtpfeed}
+      %{l_rpmtool} subst \
+          's;smtpfeed 1.[0-9]*;smtpfeed %{V_smtpfeed};' \
+          -- version.c
+      CC="%{l_cc}" \
+      CFLAGS="%{l_cflags -O}" \
+      LDFLAGS="-L$fakesyslogdir" \
+      LIBS="-lfakesyslog" \
+      ./configure \
+          --prefix=%{l_prefix}
+      %{l_make} %{l_mflags -O} 
+    )
+
+    #   build the LMTP mailer LMTP2NNTP 
+    ( cd lmtp2nntp-%{V_lmtp2nntp}
+      CC="%{l_cc}" \
+      CFLAGS="%{l_cflags -O}" \
+      ./configure \
+          --prefix=%{l_prefix}
+      %{l_make} %{l_mflags} 
+    )
+
+%install
+    rm -rf $RPM_BUILD_ROOT
+    PATH="%{l_prefix}/bin:$PATH"; export PATH
+
+    #   manually create filesystem hierarchy, because Sendmail's
+    #   install target doesn't properly create it itself.
+    %{l_shtool} mkdir -f -p -m 755 \
+        $RPM_BUILD_ROOT%{l_prefix} \
+        $RPM_BUILD_ROOT%{l_prefix}/etc/sendmail \
+        $RPM_BUILD_ROOT%{l_prefix}/bin \
+        $RPM_BUILD_ROOT%{l_prefix}/sbin \
+        $RPM_BUILD_ROOT%{l_prefix}/lib \
+        $RPM_BUILD_ROOT%{l_prefix}/libexec/sendmail \
+        $RPM_BUILD_ROOT%{l_prefix}/man \
+        $RPM_BUILD_ROOT%{l_prefix}/man/man1 \
+        $RPM_BUILD_ROOT%{l_prefix}/man/man5 \
+        $RPM_BUILD_ROOT%{l_prefix}/man/man8 \
+        $RPM_BUILD_ROOT%{l_prefix}/man/cat1 \
+        $RPM_BUILD_ROOT%{l_prefix}/man/cat5 \
+        $RPM_BUILD_ROOT%{l_prefix}/man/cat8
+
+    #   install Sendmail
+    ( cd sendmail-%{V_sendmail}
+      myusr=`(id -un) 2>/dev/null ||\
+             (whoami) 2>/dev/null ||\
+             (who am i | cut "-d " -f1) 2>/dev/null ||\
+             echo $LOGNAME`
+      mygrp=`(cat /etc/passwd; ypcat passwd) 2>/dev/null |\
+             grep "^${myusr}:" | awk -F: '{ print $4; }' | head -1`
+      mygrp=`(cat /etc/group; ypcat group) 2>/dev/null |\
+             grep ":${mygrp}:" | awk -F: '{ print $1; }' | head -1`
+      %{l_rpmtool} subst \
+          "s;^\\(SBINOWN.*=\\).*;\\1 $myusr;" \
+          "s;^\\(SBINGRP.*=\\).*;\\1 $mygrp;" \
+          "s;^\\(UBINOWN.*=\\).*;\\1 $myusr;" \
+          "s;^\\(UBINGRP.*=\\).*;\\1 $mygrp;" \
+          "s;^\\(MANOWN.*=\\).*;\\1 $myusr;" \
+          "s;^\\(MANGRP.*=\\).*;\\1 $mygrp;" \
+          's;ln -s *;$(LN) $(LNOPTS) $(DESTDIR);' \
+          -- Makefile */Makefile */*/Makefile
+      %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT
+      #   remember the Sendmail M4 stuff for re-configuration
+      (%{l_tar} cf $RPM_BUILD_ROOT%{l_prefix}/etc/sendmail/cf.tar cf)
+      compress $RPM_BUILD_ROOT%{l_prefix}/etc/sendmail/cf.tar
+      %{l_shtool} install -c -m 644 cf/README \
+          $RPM_BUILD_ROOT%{l_prefix}/etc/sendmail/cf.README
+      %{l_shtool} install -c -m 755 contrib/re-mqueue.pl \
+          $RPM_BUILD_ROOT%{l_prefix}/sbin/re-mqueue
+      %{l_shtool} install -c -m 755 -e 's;^#!.*;#!%{l_prefix}/bin/perl;' \
+          contrib/qtool.pl $RPM_BUILD_ROOT%{l_prefix}/sbin/qtool
+      %{l_shtool} install -c -m 755 -e 's;^#!.*;#!%{l_prefix}/bin/perl;' \
+          contrib/qtool.8 $RPM_BUILD_ROOT%{l_prefix}/man/man8/qtool.8
+    )
+
+    #   install SMTPFeed
+    ( cd smtpfeed-%{V_smtpfeed}
+      %{l_shtool} install -c -s -m 755 \
+          smtpfeed $RPM_BUILD_ROOT%{l_prefix}/libexec/sendmail/
+      %{l_shtool} install -c -m 644 \
+          smtpfeed.8 $RPM_BUILD_ROOT%{l_prefix}/man/man8/
+    )
+
+    #   install LMTP2NNTP
+    ( cd lmtp2nntp-%{V_lmtp2nntp}
+      %{l_shtool} install -c -s -m 755 \
+          lmtp2nntp $RPM_BUILD_ROOT%{l_prefix}/libexec/sendmail/
+      %{l_shtool} install -c -m 644 \
+          lmtp2nntp.1 %$RPM_BUILD_ROOT%{l_prefix}/man/man8/lmtp2nntp.8
+    )
+
+    #   install a reasonable default configuration
+    ( cd etc.sendmail 
+      l_hostname=`%{l_shtool} echo -e %h`
+      l_domainname=`%{l_shtool} echo -e %d | cut -c2-`
+      l_ostype=bsd4.4
+      case "%{l_target}" in
+          *-freebsd4*)  l_ostype=freebsd4 ;;
+          *-freebsd*)   l_ostype=bsd4.4   ;;
+          *-solaris2.8) l_ostype=solaris8 ;;
+          *-solaris*)   l_ostype=solaris2 ;;
+          *-linux*)     l_ostype=linux    ;;
+      esac
+      %{l_shtool} install -c -m 644 \
+          -e "s;@l_prefix@;%{l_prefix};g" \
+          -e "s;@l_fsusr@;%{l_fsusr};g" \
+          -e "s;@l_fsgrp@;%{l_fsgrp};g" \
+          -e "s;@l_hostname@;${l_hostname};g" \
+          -e "s;@l_domainname@;${l_domainname};g" \
+          -e "s;@l_ostype@;${l_ostype};g" \
+          * $RPM_BUILD_ROOT%{l_prefix}/etc/sendmail/
+    )
+
+    #   install the run-command script
+    %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
+    %{l_shtool} install -c -m 755 \
+        -e 's;@l_prefix@;%{l_prefix};g' \
+        -e 's;@l_fsusr@;%{l_fsusr};g' \
+        -e 's;@l_fsgrp@;%{l_fsgrp};g' \
+        %{SOURCE rc.sendmail} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
+
+    #   create important files which have to be present from the beginning
+    %{l_shtool} mkdir -f -p -m 700 $RPM_BUILD_ROOT%{l_prefix}/var/sendmail/mqueue
+    touch $RPM_BUILD_ROOT%{l_prefix}/var/sendmail/sendmail.in.pid
+    touch $RPM_BUILD_ROOT%{l_prefix}/var/sendmail/sendmail.out.pid
+    touch $RPM_BUILD_ROOT%{l_prefix}/var/sendmail/sendmail.log
+
+    #   adjust installation tree
+    rm -rf $RPM_BUILD_ROOT%{l_prefix}/man/cat*
+    chmod -R u+w $RPM_BUILD_ROOT%{l_prefix}/
+    strip $RPM_BUILD_ROOT%{l_prefix}/bin/* 2> /dev/null || true
+    strip $RPM_BUILD_ROOT%{l_prefix}/sbin/* 2> /dev/null || true
+
+    #   determine file list
+    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
+        %{l_files_std} \
+        '%attr(4755,root,%{l_fsgrp})        %{l_prefix}/sbin/sendmail' \
+        '%attr(4755,root,%{l_fsgrp})        %{l_prefix}/bin/hoststat' \
+        '%attr(4755,root,%{l_fsgrp})        %{l_prefix}/bin/mailq' \
+        '%attr(4755,root,%{l_fsgrp})        %{l_prefix}/bin/newaliases' \
+        '%attr(4755,root,%{l_fsgrp})        %{l_prefix}/bin/purgestat' \
+        '%config                            %{l_prefix}/etc/sendmail/*' \
+        '%config %attr(644,root,%{l_fsgrp}) %{l_prefix}/etc/sendmail/ca.crt' \
+        '%config %attr(644,root,%{l_fsgrp}) %{l_prefix}/etc/sendmail/sendmail.crt' \
+        '%config %attr(600,root,%{l_fsgrp}) %{l_prefix}/etc/sendmail/sendmail.key' \
+        '%attr(700,root,%{l_fsgrp})         %{l_prefix}/var/sendmail/mqueue' \
+        '%attr(644,root,%{l_fsgrp})         %{l_prefix}/var/sendmail/sendmail.log' \
+        '%attr(644,root,%{l_fsgrp})         %{l_prefix}/var/sendmail/sendmail.*.pid'
+
+%files -f files
+
+%clean
+    rm -rf $RPM_BUILD_ROOT
+
+%post 
+    if [ $1 -eq 1 ]; then
+        (cd $RPM_INSTALL_PREFIX/etc/sendmail; %{l_make} all >/dev/null 2>&1)
+    elif [ $1 -gt 1 ]; then
+        (cd $RPM_INSTALL_PREFIX/etc/sendmail; %{l_make} clean all >/dev/null 2>&1)
+        $RPM_INSTALL_PREFIX/etc/rc sendmail reload >/dev/null 2>&1 || true
+    fi
+
+%preun
+    if [ $1 -eq 0 ]; then
+        $RPM_INSTALL_PREFIX/etc/rc sendmail stop >/dev/null 2>&1 || true
+        (cd $RPM_INSTALL_PREFIX/etc/sendmail/; %{l_make} clean >/dev/null 2>&1)
+    fi
+

+ 102 - 0
ssmtp/ssmtp.spec

@@ -0,0 +1,102 @@
+##
+##  ssmtp.spec -- OpenPKG RPM Specification
+##  Copyright (c) 2000-2001 Cable & Wireless Deutschland GmbH
+##  Copyright (c) 2000-2001 Ralf S. Engelschall <rse@engelschall.com>
+##
+##  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 information
+Name:         ssmtp
+Summary:      Simple SMTP MTA
+Group:        Mail
+URL:          ftp://metalab.unc.edu/pub/Linux/system/mail/mta/
+Vendor:       Matt Ryan
+Packager:     rse@openpkg.org
+Distribution: OpenPKG
+License:      GPL
+Version:      2.39.1
+Release:      1
+
+#   list of sources
+Source0:      ftp://metalab.unc.edu/pub/Linux/system/mail/mta/ssmtp-%{version}.tar.gz
+Source1:      ssmtp.conf
+
+#   build information
+Prefix:       %{l_prefix}
+BuildRoot:    %{l_buildroot}
+BuildPreReq:  OpenPKG, openpkg >= 0.9-30, make
+PreReq:       OpenPKG, openpkg >= 0.9-30
+AutoReq:      no
+AutoReqProv:  no
+Provides:     MTA
+
+%description
+    This is sSMTP, a program that replaces sendmail on workstations
+    that should send their mail via the departmental mailhub from which
+    they pick up their mail (via pop, imap, rsmtp, pop_fetch, NFS... or
+    the like). This program accepts mail and sends it to the mailhub,
+    optionally replacing the domain in the From: line with a different
+    one.
+
+%prep
+    %setup -q -n ssmtp-2.39
+
+%build
+    CC="%{l_cc}" \
+    CFLAGS="%{l_cflags -O}" \
+    ./configure \
+        --prefix=%{l_prefix}
+    %{l_make} %{l_mflags} \
+        SSMTPCONFDIR="%{l_prefix}/etc/ssmtp" \
+        CONFIGURATION_FILE="%{l_prefix}/etc/ssmtp/ssmtp.conf" \
+        REVALIASES_FILE="%{l_prefix}/etc/ssmtp/ssmtp.revaliases"
+
+%install
+    rm -rf $RPM_BUILD_ROOT
+    %{l_shtool} mkdir -f -p -m 755 \
+        $RPM_BUILD_ROOT%{l_prefix}/sbin \
+        $RPM_BUILD_ROOT%{l_prefix}/etc/ssmtp \
+        $RPM_BUILD_ROOT%{l_prefix}/man/man8 \
+        $RPM_BUILD_ROOT%{l_prefix}/var/ssmtp
+    %{l_shtool} install -c -s -m 755 \
+        ssmtp $RPM_BUILD_ROOT%{l_prefix}/sbin/
+    chmod u+w ssmtp.8
+    %{l_shtool} install -c -m 644 \
+        -e 's;.B ssmtp;.B %{l_prefix}/sbin/ssmtp;' \
+        -e 's;.B /usr/lib/sendmail;.B %{l_prefix}/sbin/sendmail;' \
+        ssmtp.8 $RPM_BUILD_ROOT%{l_prefix}/man/man8/
+    ln $RPM_BUILD_ROOT%{l_prefix}/sbin/ssmtp \
+       $RPM_BUILD_ROOT%{l_prefix}/sbin/sendmail
+    ln $RPM_BUILD_ROOT%{l_prefix}/man/man8/ssmtp.8 \
+       $RPM_BUILD_ROOT%{l_prefix}/man/man8/sendmail.8
+    %{l_shtool} install -c -m 644 -e "s;@l_prefix@;%{l_prefix};g" \
+        %{SOURCE ssmtp.conf} \
+        $RPM_BUILD_ROOT%{l_prefix}/etc/ssmtp/
+    %{l_shtool} install -c -m 644 revaliases \
+        $RPM_BUILD_ROOT%{l_prefix}/etc/ssmtp/ssmtp.revaliases
+    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
+        %{l_files_std} \
+        '%config %{l_prefix}/etc/ssmtp/ssmtp.conf'
+
+%files -f files
+
+%clean
+    rm -rf $RPM_BUILD_ROOT
+