Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Jun 2001 02:10:13 +0300
From:      Peter Pentchev <roam@orbitel.bg>
To:        Jordan Hubbard <jkh@winston.osd.bsdi.com>
Cc:        arch@FreeBSD.org
Subject:   Re: src/release/Makefile NO_SENDMAIL fix
Message-ID:  <20010622021013.A626@ringworld.oblivion.bg>
In-Reply-To: <20010621132723P.jkh@osd.bsdi.com>; from jkh@osd.bsdi.com on Thu, Jun 21, 2001 at 01:27:23PM -0700
References:  <20010621201945.A22338@ringworld.oblivion.bg> <20010621132723P.jkh@osd.bsdi.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jun 21, 2001 at 01:27:23PM -0700, Jordan Hubbard wrote:
> From: Peter Pentchev <roam@orbitel.bg>
> Subject: src/release/Makefile NO_SENDMAIL fix
> Date: Thu, 21 Jun 2001 20:19:45 +0300
> 
> > Is there an overwhelming reason this should not go into the tree,
> > thus enabling custom NO_SENDMAIL release builds?
> 
> If FIXCRYPTO were also user overridable, I'd support the change.  It
> should be a more general knob than just something to switch sendmail
> on and off with.

Heh.. actually I was thinking about just this, on my way home :)
Well, how about the attached patch?  Just a simple 'FIXCRYPTO?=...'
doesn't work here, because if FIXCRYPTO was not defined in the first
place, we need the NO_SENDMAIL test; if it is defined, then we have
to assume that whoever defined it knew what they were doing, and we
should not blindly add sendmail in there.

And btw, this is not 'just something to switch sendmail on and off
with'.  The whole release build process supports local patches,
and it supports local patches to etc/defaults/make.conf.  The whole
build process goes perfectly well with NO_BIND, NO_OBJC, NO_UUCP,
NOPROFILE and NO_FORTRAN defined; all the build framework references
to BIND, ObjC, UUCP, profiled libs or Fortran respectively are wrapped
in tests for those knobs.  The FIXCRYPTO conditional inclusion of
sendmail is a fix, not a new feature - it is a fix prompted by the fact
that sendmail should also not be referenced anywhere in the tree without
checking for the NO_SENDMAIL knob first.  There is precedet for this
in src/release/Makefile - in the release.2 target, Kerberos 4 and 5 are
not built, unless the make.conf knobs allow this.

Taking this out into a variable also helps matters in case someone
decides to make a NO_PPP or NO_LIBPCAP knob - in that case, those
would also be ifdef'd out, instead of being blindly referenced
without checking if they've been built at all :)

G'luck,
Peter

-- 
If wishes were fishes, the antecedent of this conditional would be true.

Index: src/release/Makefile
===================================================================
RCS file: /home/ncvs/src/release/Makefile,v
retrieving revision 1.624
diff -u -r1.624 Makefile
--- src/release/Makefile	2001/06/14 23:48:13	1.624
+++ src/release/Makefile	2001/06/21 23:01:32
@@ -174,6 +174,14 @@
 
 ZIPNSPLIT=		gzip --no-name -9 -c | split -b 240640 -
 
+# Things that need to be compiled without crypto support in releases
+.if !defined(FIXCRYPTO)
+FIXCRYPTO=	bin/ed usr.sbin/ppp usr.sbin/pppd usr.sbin/tcpdump/tcpdump 
+.if !defined(NO_SENDMAIL)
+FIXCRYPTO+=	usr.sbin/sendmail
+.endif
+.endif
+
 
 # Things which may get you into trouble if you change them
 MTREEFILES=		${.CURDIR}/../etc/mtree
@@ -466,7 +474,7 @@
 #
 release.5:
 	# Handle some grief caused by the munition braindeadness.
-	for i in bin/ed usr.sbin/ppp usr.sbin/pppd usr.sbin/sendmail usr.sbin/tcpdump/tcpdump ; do \
+	for i in ${FIXCRYPTO}; do \
 		( cd ${.CURDIR}/../$$i; \
 		  make -DNOCRYPT clean all distribute DISTDIR=${RD}/trees ) ; \
 	done

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




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