[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Compilation/RPM creation problems
- To: Dan <dan@docisp.com>
- Subject: Re: Compilation/RPM creation problems
- From: Matti Aarnio <mea@nic.funet.fi>
- Date: Tue, 4 Apr 2000 17:56:34 +0300
- In-Reply-To: <38e9fff0.c88.0@docisp.com>; from dan@docisp.com on Tue, Apr 04, 2000 at 02:45:04PM +0000
- References: <38e9fff0.c88.0@docisp.com>
- Resent-date: Tue, 4 Apr 2000 15:15:20 GMT
- Resent-from: dan@docisp.com
- Resent-Message-Id: <200004041515.LAA03312@docmail.docisp.com>
- Resent-to: zmailer@nic.funet.fi
Problem solved!
****** Forwarded Message Follows *******
Ah, Xose has also asked me things privately, I will
try to return to the question next weekend (if I don't
have time before it.)
/Matti Aarnio
On Tue, Apr 04, 2000 at 02:45:04PM +0000, Dan wrote:
> If I edit zmailer.spec to remove tcp-wrappers support, everything compiles just
> fine after modification, BUT no binary rpm package is generated. rpm processing
> of the spec stops at provides/requires list, without generation of any errors.
> It does create a source rpm package with -bs just fine. spec file attached.
>
>
> >On Tue, Apr 04, 2000 at 10:15:44AM -0400, dan@docisp.com wrote:
> >>
> >> Hi. I am having trouble compiling Zmailer 2.99.53-pre1 on RH 6.2 with
> >> tcp-wrappers support. The thing compiles just fine in Debian.
> >> Here's what I am getting:
> >
> > The problem here is that the <explenative> tcp-wrapper as it is
> > done at RH 6.1/6.2 requires linkage against NIS (YP). A jolly
> > stupid idea... Similar happens already at Solaris 2.6, and
> > I am most unhappy there as well.
> >
> > Adding (manually) -lnsl to the library list definition at the
> > scheduler/Makefile will help you thru.
> > ( But won't help at RPM driven processing, of course.. there you
> > propably need to patch scheduler/Makefile.in )
> >
> > My medium term goal is to eradict tcp-wrapper due to this kind
> > of corruptions from ZMailer entirely. smtpserver doesn't need
> > it, after all. Similar controls can be done with smtpserver.auth
> > by adding there extra column of allowed contactee addresses/nets.
> >
> >> <SNIP>
> >> cc -DHAVE_CONFIG_H -I./../include -I../include -I.. -I/usr -o scheduler.x
> scheduler.o readconfig.o conf.o agenda.o transport.o pipes.o update.o qprint.o
> msgerror.o resources.o threads.o wantconn.o mq2.o mq2auth.o version.o -L../libs
> -lzm -lzc -lta -lsfio -L/usr -lwrap -lresolv
> >> /usr/bin/../lib/libwrap.a(hosts_access.o): In function `host_match':
> >> hosts_access.o(.text+0x400): undefined reference to `yp_get_default_domain'
>
> >> collect2: ld returned 1 exit status
> >> make[1]: *** [scheduler] Error 1
> >> make[1]: Leaving directory `/usr/src/redhat/BUILD/zmailer-2.99.53_pre1/scheduler'
>
> >> make: *** [all] Error 1
> >> Bad exit status from /var/tmp/rpm-tmp.13294 (%build)
> >> </SNIP>
> >>
> >> Also if I compile it without tcp-wrappers rpm doesn't build
> >> a binary package. Any ideas? Thanks.
> >
> > Uh ?
> >
> >--
> >/Matti Aarnio <mea@nic.funet.fi>
> >
> This Free Email is provided by http://www.docisp.com
> Summary: Mailer for extreme performance demands, secure mail delivery agent
> Name: zmailer
> Version: 2.99.53_pre1
> Release: 1
> Group: Networking/Daemons
> Packager: Xose Vazquez <xose@ctv.es>
> URL: http://www.zmailer.org
> Source: ftp://ftp.funet.fi/pub/unix/mail/zmailer/src/zmailer-%{version}.tar.gz
> Source1: zmailer.init
> Source2: zmailer.logrotate
> Source3: zmailer.cron
> Source4: zmailer.pam
> Source5: README-RPM
> License: Freely usable, see /usr/doc/zmailer-%{version}/README
> BuildRoot: /var/tmp/zmailer-%{version}-root
> Prereq: /sbin/chkconfig
> Provides: smtpdaemon
> Conflicts: sendmail qmail
>
> %description
> This is a package that implements an internet message transfer agent
> called ZMailer. It is intended for gateways or mail servers or other
> large site environments that have extreme demands on the abilities of
> the mailer. It was motivated by the problems of the Sendmail design
> in such situations. ZMailer is one of the mailers able to deal with
> huge quantities of mail and is more efficient any other mailer, qmail
> included, mostly due to its excellent queueing algorithms.
>
> Most users don't need this package -- for most users, sendmail or exim or
> smail will suffice.
>
> %package doc
> Summary: ZMailer documentation.
> Group: Networking/Daemons
>
> %description doc
> This package includes desing notes, the ZMailer manual, and a few
> papers written about ZMailer. The papers are available in PostScript,
> tex, html, txt and sgml.
>
> %prep
> # unpack zmalier (and patch it).
> %setup -q
>
> # build zmailer
> %build
> #CFLAGS="$RPM_OPT_FLAGS"
> ./configure --prefix=/usr/lib/zmailer \
> --with-openssl-include=/usr/include/openssl \
> --with-openssl-lib=/usr/lib \
> --with-postoffice=/var/spool/postoffice \
> --with-mailshare=/etc/zmailer \
> --with-mailvar=/etc/zmailer --with-zconfig=/etc/zmailer/zmailer.conf \
> --with-mailbin=/usr/lib/zmailer \
> --includedir=/usr/lib/zmailer \
> --with-sendmailpath=/usr/sbin/sendmail --with-logdir=/var/log/zmailer \
> --with-rmailpath=/usr/sbin/rmail --with-system-malloc \
> --with-ta-mmap \
> --with-logdir=/var/log/mail \
> --with-tcp-wrappers=/usr \
> --with-ldap-include-dir=/usr/local/include \
> --with-ldap-library-dir=/usr/local/lib
>
> make
>
> %install
> rm -rf $RPM_BUILD_ROOT
> make install prefix=$RPM_BUILD_ROOT
>
> # install man pages
> # make install can't create man[1,3,5,8]. Well, make it ourself.
> cd $RPM_BUILD_ROOT
> mkdir -p $RPM_BUILD_ROOT/usr/man/man{1,3,5,8}
>
> cd $RPM_BUILD_DIR/zmailer-%{version}/
> make prefix=$RPM_BUILD_ROOT -C man install
>
> # make install do not install authuser.3
> install -m644 $RPM_BUILD_DIR/zmailer-%{version}/man/authuser.3 \
> $RPM_BUILD_ROOT/usr/man/man3
>
> install -m644 $RPM_SOURCE_DIR/README-RPM \
> $RPM_BUILD_DIR/zmailer-%{version}
>
> # install SYSV init stuff
> mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
> install -m755 $RPM_SOURCE_DIR/zmailer.init \
> $RPM_BUILD_ROOT/etc/rc.d/init.d/zmailer
>
> for I in 0 1 6; do
> mkdir -p $RPM_BUILD_ROOT/etc/rc.d/rc$I.d
> ln -sf ../init.d/zmailer \
> $RPM_BUILD_ROOT/etc/rc.d/rc$I.d/K30zmailer
> done
> for I in 2 3 4 5; do
> mkdir -p $RPM_BUILD_ROOT/etc/rc.d/rc$I.d
> ln -sf ../init.d/zmailer \
> $RPM_BUILD_ROOT/etc/rc.d/rc$I.d/S80zmailer
> done
>
> # install log rotation stuff
> mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d
> install -m644 $RPM_SOURCE_DIR/zmailer.logrotate \
> $RPM_BUILD_ROOT/etc/logrotate.d/zmailer
>
> # install cron stuff
> mkdir -p $RPM_BUILD_ROOT/etc/cron.daily/
> install -m644 $RPM_SOURCE_DIR/zmailer.cron \
> $RPM_BUILD_ROOT/etc/cron.daily/zmailer
>
> # install pam support
> mkdir -p $RPM_BUILD_ROOT/etc/pam.d
> install -m644 $RPM_SOURCE_DIR/zmailer.pam \
> $RPM_BUILD_ROOT/etc/pam.d/smtpauth-login
>
> # config files
>
> for I in aliases fqdnaliases localnames routes smtp-policy.relay \
> smtp-policy.src ; do
> ln -sf proto/$I \
> $RPM_BUILD_ROOT/etc/zmailer/db/$I
> done
>
> for I in scheduler.conf sm.conf smtpserver.conf ; do
> ln -sf proto/$I \
> $RPM_BUILD_ROOT/etc/zmailer/$I
> done
>
> ln -sf cf/TELE-FI.cf \
> $RPM_BUILD_ROOT/etc/zmailer/router.cf
>
> ln -sf zmailer/db/proto/aliases $RPM_BUILD_ROOT/etc/aliases
>
> # sendmail compatible stuff
>
> ln -sf zmailer/sendmail $RPM_BUILD_ROOT/usr/lib/sendmail
>
> for I in rmail sendmail; do
> ln -sf ../lib/zmailer/$I $RPM_BUILD_ROOT/usr/sbin/$I
> done
>
> mkdir -p $RPM_BUILD_ROOT/usr/bin/
> for I in mailq newaliases vacation; do
> ln -sf ../lib/zmailer/$I \
> $RPM_BUILD_ROOT/usr/bin/$I
> done
>
> %preun
> # stop zmailer if it is running
> if ps auxw | egrep 'router|scheduler|smtpserver' | grep -v egrep \
> >> /dev/null ; then
> /usr/lib/zmailer/zmailer kill
> echo "1" > /var/run/.zmailer_was_run
> fi
>
> %post
> /sbin/chkconfig --add zmailer
>
> echo "localhost" >> /etc/zmailer/db/localnames
>
> # mail.conf stuff
> if [ -s /etc/mail.conf ] >> /dev/null ; then
> :
> else
> touch /etc/mail.conf
> fi
> if grep -c -v '^#' /etc/mail.conf >> /dev/null ; then
> :
> else
> [ -z "`hostname -d`" ] || echo "orgdomain=`hostname -d`" >> /etc/mail.conf
> [ -z "`hostname -d`" ] || echo "mydomain=`hostname -d`" >> /etc/mail.conf
> [ -z "`hostname -f`" ] || echo "hostname=`hostname -f`" >> /etc/mail.conf
> fi
>
> # make zmailer group
> if grep -c "^zmailer:" /etc/group >> /dev/null ; then
> :
> else
> # Use 'mail' group for zmailer...
> echo "zmailer::12:root,daemon,uucp" >> /etc/group
> fi
>
> # port to mailer transport queue
> if grep -c "^mailq" /etc/services >> /dev/null ; then
> :
> else
> echo "mailq 174/tcp # Mailer transport queue" >> /etc/services
> fi
>
> # rebuild the zmailer aliases database
> /usr/lib/zmailer/newaliases
>
> # recreates the FQDN alias map
> /usr/lib/zmailer/newfqdnaliases
>
> echo "`hostname -f`" >> /etc/zmailer/db/proto/localnames
> echo "`hostname`" >> /etc/zmailer/db/proto/localnames
> echo "`hostname -d`" >> /etc/zmailer/db/proto/localnames
> echo "localhost.`hostname -d`" >> /etc/zmailer/db/proto/localnames
>
> # start it back up again, after an upgrade
> if [ -s /var/run/.zmailer_was_run ] >> /dev/null ; then
> /etc/rc.d/init.d/zmailer start
> rm -f /var/run/.zmailer_was_run
> fi
>
> # notices
> echo " "
> echo " If you are running PROCMAIL as your local delivery agent"
> echo " read /usr/doc/zmailer-doc-%{version}/doc/guides/procmail "
> echo " "
> echo " This zmailer.spec links tcp wrapper code into smtpserver. To "
> echo " allow incoming SMTP traffic you must specify allowed ip-addresses"
> echo " domains in /etc/hosts.allow file. Read the README-RPM file. "
> echo " "
>
>
> %clean
> # rm -rf $RPM_BUILD_ROOT
>
> %changelog
>
> * Wed Oct 13 1999 Xose Vazquez <xose@ctv.es>
>
> - Zmailer-2.99.52 install strip bin files, wonderful.
> - delete the strip section.
>
> * Fri Aug 6 1999 Xose Vazquez <xose@ctv.es>
>
> - split zmailer, the doc is a independent rpm
>
> * Thu Jul 29 1999 Xose Vazquez <xose@ctv.es>
>
> - based on zmailer-%{version}/contrib/zmailer49.spec
> - this is the first version, is all ok ?
>
>
> %files
> %defattr(-,root,root)
> /etc/aliases
> %attr(644,root,root)/etc/pam.d/smtpauth-login
> %config %attr(755,root,root) /etc/cron.daily/zmailer
> %config /etc/logrotate.d/zmailer
> %config /etc/rc.d/init.d/zmailer
> %config(missingok) /etc/rc.d/rc0.d/K30zmailer
> %config(missingok) /etc/rc.d/rc1.d/K30zmailer
> %config(missingok) /etc/rc.d/rc2.d/S80zmailer
> %config(missingok) /etc/rc.d/rc3.d/S80zmailer
> %config(missingok) /etc/rc.d/rc4.d/S80zmailer
> %config(missingok) /etc/rc.d/rc5.d/S80zmailer
> %config(missingok) /etc/rc.d/rc6.d/K30zmailer
> %config(noreplace) /etc/zmailer/cf/*
> %config(noreplace) /etc/zmailer/db/*
> /etc/zmailer/forms
> /etc/zmailer/fqlists
> /etc/zmailer/lists
> %config(noreplace) /etc/zmailer/proto/*
> %config(noreplace) /etc/zmailer/router.cf
> %config(noreplace) /etc/zmailer/scheduler.conf
> %config(noreplace) /etc/zmailer/sm.conf
> %config(noreplace) /etc/zmailer/smtpserver.conf
> %config /etc/zmailer/vacation.msg
> %config /etc/zmailer/zmailer.conf
> /usr/bin/*
> /usr/include/zmailer/zmailer.h
> /usr/lib/libzmailer.a
> /usr/lib/sendmail
> /usr/lib/zmailer
> # man pages
> /usr/man/*/*
> /usr/sbin/*
> %dir /var/log/mail
> %attr(2755,root,root) %dir /var/spool/postoffice/
> %attr(750,root,root) /var/spool/postoffice/deferred/
> %attr(750,root,root) /var/spool/postoffice/freezer/
> %attr(750,root,root) /var/spool/postoffice/postman/
> %attr(1777,root,root) /var/spool/postoffice/public/
> %attr(750,root,root) %dir /var/spool/postoffice/queue/
> %attr(755,root,root) /var/spool/postoffice/queue/*
> %attr(1777,root,root) /var/spool/postoffice/router/
> %attr(755,root,root) /var/spool/postoffice/transport/
> %doc ChangeLog INSTALL MANIFEST Overview README* TODO contrib/README.debian README-RPM
>
> %files doc
> %doc doc
>
> # EOF