Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Aug 2007 07:15:16 +0300
From:      Giorgos Keramidas <keramida@ceid.upatras.gr>
To:        brad davison <demonichandextensions@hotmail.com>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Cannot rebuild Sendmail (with sasl2)
Message-ID:  <20070830041516.GA2112@kobe.laptop>
In-Reply-To: <BAY116-F34A132EF765E6A354FCA20A1CD0@phx.gbl>
References:  <20070829220509.GB1641@kobe.laptop> <BAY116-F34A132EF765E6A354FCA20A1CD0@phx.gbl>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2007-08-30 02:14, brad davison <demonichandextensions@hotmail.com> wrote:
>>> After installing the cyrus-sasl2-saslauthd port, I am now unable to
>>> rebuild sendmail and/or The World.
>>
>> You need the security/cyrus-sasl2 port, not sasl2-saslauthd.
>
>  I have the cyrus-sasl2 as well as cyrus-sasl2-saslauthd installed
>
>  newmail# pkg_version -v
>  ...............................
>  cyrus-sasl-2.1.22                   =   up-to-date with port
>  cyrus-sasl-saslauthd-2.1.22         =   up-to-date with port
>  .................................

Nice.  The saslauthd port pulled in cyrus-sasl-2.1.22 as a dependency
too, I guess :)

> >     % script
> >     Script started, output file is typescript
> >     % make buildworld buildkernel
> >       [ snip output ]
> >     % exit
> >     exit
> >
> >     Script done, output file is typescript
> >     %
> >
> > Can you show us what your `make.conf' looks like, and describe how
> > you tried to build Sendmail?
>
> here is my make.conf
>
> # SASL (cyrus-sasl v2) sendmail build flags...
> SENDMAIL_CFLAGS=-I/usr/local/include -DSASL=2
> SENDMAIL_LDFLAGS=-L/usr/local/lib
> SENDMAIL_LDADD=-lsasl2
> # Adding to enable alternate port (smtps) for sendmail...
> SENDMAIL_CFLAGS+= -D_FFR_SMTP_SSL

Ok, this looks good so far.

> here is my script ... I wanted to make sure my sources were up to date
> so i did cvsup first (with src-all as all i was getting, I had just
> done this 2 days ago, but I wanted to make sure)

> Script started on Thu Aug 30 07:59:12 2007
> newmail# cvsup standard-supfile
> Connected to cvsup5.us.FreeBSD.org
> Updating collection src-all/cvs
> Finished successfully
> newmail# cd /usr/src
> newmail# pwd
> /usr/src
> newmail# make buildworld
>
> --------------------------------------------------------------
> >>> Rebuilding the temporary build tree
> --------------------------------------------------------------
> rm -rf /usr/obj/usr/src/tmp
> mkdir -p /usr/obj/usr/src/tmp/legacy/usr/bin
> mkdir -p /usr/obj/usr/src/tmp/legacy/usr/games
>
> [snip --- > an hour or so goes by]
>
> cc -O2 -fno-strict-aliasing -pipe
> -I/usr/src/usr.sbin/sendmail/../../contrib/sendmail/src
> -I/usr/src/usr.sbin/sendmail/../../contrib/sendmail/include -I. -DNEWDB
> -DNIS -DTCPWRAPPERS -DMAP_REGEX -DDNSMAP -DNETINET6 -DSTARTTLS -D_FFR_TLS_1
> -D_FFR_DEAL_WITH_ERROR_SSL -I/usr/local/include -DSASL=2 -std=iso9899:1990
> -c /usr/src/usr.sbin/sendmail/../../contrib/sendmail/src/util.c
> cc -O2 -fno-strict-aliasing -pipe
> -I/usr/src/usr.sbin/sendmail/../../contrib/sendmail/src
> -I/usr/src/usr.sbin/sendmail/../../contrib/sendmail/include -I. -DNEWDB
> -DNIS -DTCPWRAPPERS -DMAP_REGEX -DDNSMAP -DNETINET6 -DSTARTTLS -D_FFR_TLS_1
> -D_FFR_DEAL_WITH_ERROR_SSL -I/usr/local/include -DSASL=2 -std=iso9899:1990
> -c /usr/src/usr.sbin/sendmail/../../contrib/sendmail/src/version.c
> make: don't know how to make
> /usr/src/usr.sbin/sendmail/../../lib/libsmutil/libsmutil.a. Stop
> *** Error code 2

Hmmm, this is odd.  Your usr.sbin/sendmail is trying to find libsmutil.a
inside the source tree, instead of /usr/obj.  It looks like you have run
a plain 'make' command in usr.sbin/sendmail or one of its dependencies.

Try running:

	cd /usr/src/usr.sbin/sendmail
	make cleandir && make cleandir

	cd /usr/src/lib/libsm
	make cleandir && make cleandir

	cd /usr/src/lib/libsmutil
	make cleandir && make cleandir

	cd /usr/src/usr.sbin/sendmail
	make cleandir && make cleandir

The "make cleandir" commands _have_ to be run twice, to make sure that
they delete:

	(a) The /usr/obj files related to this source subdir.

	(b) Any object code, dependency information and other
	    build-time files from the source tree itself.

Then try 'buildworld' once again.

- Giorgos




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070830041516.GA2112>