cvs commit: src/sys/modules/aic7xxx/aicasm Makefile
M. Warner Losh
imp at bsdimp.com
Mon Jan 3 13:01:05 PST 2005
In message: <41D97F51.8080907 at freebsd.org>
Scott Long <scottl at freebsd.org> writes:
: Robert Watson wrote:
: > On Sun, 2 Jan 2005, M. Warner Losh wrote:
: >
: >
: >>In message: <200501030536.j035atQo072140 at repoman.freebsd.org>
: >> Nate Lawson <njl at FreeBSD.org> writes:
: >>: NO_MAN is now NOMAN.
: >>
: >>Please back this out. You are going backwards. You need to use
: >>buildkernel or install a new world or setenv NO_MAN.
: >
: >
: > However, some change of this sort would be very useful -- the NO_MAN issue
: > is the only one of two issues preventing 6.x kernels from building on an
: > un-customized 5.x world. The other issue is changes in config(8), but
: > that's a lot more easily worked around as it doesn't require changes to
: > the global makefiles to fix. As someone who runs their build and remote
: > management boxes on RELENG_5, but remote test boxes on HEAD, I'd find it
: > very useful if we could find some solution to this. The one I've had in
: > mind is teaching the 5.x .mk files to also know about NO_MAN -- that way
: > at least newer RELENG_5 could build 6.x components without a full
: > buildworld.
: >
: > Robert N M Watson
: >
: >
:
: Compatibility should be put into a common and documented place like
: bsd.compat.mk. Putting special variables into each Makefile is both
: cumbersome and undocumented; it turns into folklore that no one
: understands years down the line.
Agreed. I believe that the following will do the trick. I'm not sure
where the right place to include this would be, since I believe that the
.if is expanded at parse time, which can lead to interesting
problems...
# $FreeBSD: src/share/mk/bsd.compat.mk,v 1.18 2004/12/21 12:49:24 ru Exp $
# Forward compatbility: allows limited, but useful, operations
# to succeed on older systems.
.for oldnew in \
NOATM:NO_ATM \
NOCLEAN:NO_CLEAN \
NOCLEANDIR:NO_CLEANDIR \
NOCRYPT:NO_CRYPT \
NODOCCOMPRESS:NO_DOCCOMPRESS \
NOEXTRADEPEND:NO_EXTRADEPEND \
NOFORTH:NO_FORTH \
NOFSCHG:NO_FSCHG \
NOGAMES:NO_GAMES \
NOHTML:NO_HTML \
NOINET6:NO_INET6 \
NOINFO:NO_INFO \
NOINFOCOMPRESS:NO_INFOCOMPRESS \
NOINSTALLLIB:NO_INSTALLLIB \
NOLIBC_R:NO_LIBC_R \
NOLIBPTHREAD:NO_LIBPTHREAD \
NOLIBTHR:NO_LIBTHR \
NOLINT:NO_LINT \
NOMAN:NO_MAN \
NOMANCOMPRESS:NO_MANCOMPRESS \
NOMLINKS:NO_MLINKS \
NOOBJ:NO_OBJ \
NOPAM:NO_PAM \
NOPIC:NO_PIC \
NOPROFILE:NO_PROFILE \
NOSHARE:NO_SHARE \
NOSHARED:NO_SHARED \
NOTAGS:NO_TAGS
.for old in ${oldnew:C/:.*//}
.for new in ${oldnew:C/.*://}
.if defined(${new}) && !defined(${old})
${old}= ${${new}}
.endif
.endfor
.endfor
.endfor
More information about the cvs-src
mailing list