Date: Thu, 3 Apr 2003 18:19:22 +0300 From: Ruslan Ermilov <ru@FreeBSD.org> To: Bruce Evans <bde@zeta.org.au> Cc: Marcel Moolenaar <marcel@xcllnt.net> Subject: Re: cvs commit: src/libexec/talkd announce.c extern.h print.c table.c talkd.c Message-ID: <20030403151922.GA76895@sunbay.com> In-Reply-To: <20030403200459.H30311@gamplex.bde.org> References: <200304030513.h335DR60079544@repoman.freebsd.org> <20030402231638.A81523@FreeBSD.org> <20030403055049.GA67232@dhcp01.pn.xcllnt.net> <20030403180026.A29934@gamplex.bde.org> <20030403085350.GA37174@sunbay.com> <20030403093800.GA68012@dhcp01.pn.xcllnt.net> <20030403200459.H30311@gamplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
On Thu, Apr 03, 2003 at 08:26:05PM +1000, Bruce Evans wrote:
> On Thu, 3 Apr 2003, Marcel Moolenaar wrote:
>
> > On Thu, Apr 03, 2003 at 11:53:50AM +0300, Ruslan Ermilov wrote:
> > > >
> > > How's this bugfix?
> > >
> > > %%%
> > > Index: bsd.sys.mk
> > > ===================================================================
> > > RCS file: /home/ncvs/src/share/mk/bsd.sys.mk,v
> > > retrieving revision 1.12
> > > diff -u -r1.12 bsd.sys.mk
> > > --- bsd.sys.mk 31 Mar 2003 13:10:51 -0000 1.12
> > > +++ bsd.sys.mk 3 Apr 2003 08:48:40 -0000
> > > @@ -25,7 +25,7 @@
> > > . if ${WARNS} > 3
> > > CFLAGS += -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align
> > > . endif
> > > -. if ${WARNS} > 4
> > > +. if ${WARNS} > 4 && !empty(CFLAGS:M-O*) && empty(CFLAGS:M-O0)
> > > CFLAGS += -Wuninitialized
> > > . endif
> > > # BDECFLAGS
> > > %%%
> >
> > Should work in most cases, but beware DEBUG_FLAGS. The above does not
> > catch the case where DEBUG_FLAGS is defined to something like "-O0 -g".
> > I think this is a reasonable use of DEBUG_FLAGS.
> >
> > \begin{log}
> > dhcp01% setenv DEBUG_FLAGS "-O0 -g"
> > dhcp01% setenv CFLAGS -O
> > dhcp01% make
> > cc -O -mcpu=pentiumpro -I/usr/local/src/fpi/cpu/.. -O0 -g -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wuninitialized -c decode.c
> > cc1: warnings being treated as errors
> > cc1: warning: -Wuninitialized is not supported without -O
> > *** Error code 1
> > \end{log}
>
> The patch works for me, as it should since ${DEBUG_FLAGS} is added to
> CFLAGS before including bsd.sys.mk in at least bsd.prog.mk. Similarly
> for COPTS, except it is actually documented in mk/bsd.README.
>
> There are some other minor ordering problems. -Winitialized is not set
> for "-O -O0 -O" in ${CFLAGS},
>
I can fix this:
%%%
Index: bsd.sys.mk
===================================================================
RCS file: /home/ncvs/src/share/mk/bsd.sys.mk,v
retrieving revision 1.12
diff -u -r1.12 bsd.sys.mk
--- bsd.sys.mk 31 Mar 2003 13:10:51 -0000 1.12
+++ bsd.sys.mk 3 Apr 2003 15:12:56 -0000
@@ -25,8 +25,13 @@
. if ${WARNS} > 3
CFLAGS += -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align
. endif
-. if ${WARNS} > 4
+. if ${WARNS} > 4 && !empty(CFLAGS:M-O*)
+. for entry in ${CFLAGS:M-O*}
+_Oflag= ${entry}
+. endfor
+. if ${_Oflag} != "-O0"
CFLAGS += -Wuninitialized
+. endif
. endif
# BDECFLAGS
. if ${WARNS} > 5
%%%
> and there may be hackish makefiles that set
> CFLAGS after including <bsd.prog.mk>.
>
That set -O's after including? ;-)
These shouldn't probably be set to WARNS=5.
Cheers,
--
Ruslan Ermilov Sysadmin and DBA,
ru@sunbay.com Sunbay Software AG,
ru@FreeBSD.org FreeBSD committer,
+380.652.512.251 Simferopol, Ukraine
http://www.FreeBSD.org The Power To Serve
http://www.oracle.com Enabling The Information Age
[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (FreeBSD)
iD8DBQE+jFD6Ukv4P6juNwoRAj3YAJ9dPOGI8LwhymuvtS3rqiW+ise7WQCdHE6u
OVqHMIy8XtfYBbEwWxal6ts=
=LSdD
-----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030403151922.GA76895>
