Can't build -CURRENT on 4.7

Tim Kientzle kientzle at acm.org
Sat Jun 7 10:36:13 PDT 2003


David O'Brien wrote:

> On Fri, Jun 06, 2003 at 09:46:07PM -0700, Tim Kientzle wrote:
>>The compiler in 4.7 does not like this:
>>    -std=gnu99
>>As a result, buildworld of -CURRENT fails
>>rather early.
> 
> Committers are not required to support building 5-CURRENT, post
> 5.0-RELEASE on a 4.7 machine.  So this is not grounds to remove the
> change.  However, someone will probably patch the build system to
> tolerate it.


Hmm.. I'll upgrade the machine to 4-STABLE and
see if that addresses it.

I'm also looking at at some other approaches.
For example, the attached patch changes BMAKEENV to
override CSTD in the early build phases.  (This also
required changing a couple of 'inline' to '__inline'
in xlint/lint1/cgram.y.)  This seems to get
it through the bootstrap, at least, although I'm still running
into build problems later on (but the cross-tools
are built by then, so I think these may be unrelated).

Tim Kientzle
-------------- next part --------------
Index: Makefile.inc1
===================================================================
RCS file: /usr/src/cvs/src/Makefile.inc1,v
retrieving revision 1.363
diff -u -r1.363 Makefile.inc1
--- Makefile.inc1	31 May 2003 21:29:38 -0000	1.363
+++ Makefile.inc1	7 Jun 2003 04:52:43 -0000
@@ -200,7 +204,7 @@
 BMAKEENV=	DESTDIR= \
 		INSTALL="sh ${.CURDIR}/tools/install.sh" \
 		PATH=${BPATH}:${PATH} \
-		WORLDTMP=${WORLDTMP} \
+		WORLDTMP=${WORLDTMP} CSTD=c90 \
 		MAKEFLAGS="-m ${.CURDIR}/tools/build/mk ${.MAKEFLAGS}"
 BMAKE=		MAKEOBJDIRPREFIX=${WORLDTMP} \
 		${BMAKEENV} ${MAKE} -f Makefile.inc1 \
Index: usr.bin/xlint/lint1/cgram.y
===================================================================
RCS file: /usr/src/cvs/src/usr.bin/xlint/lint1/cgram.y,v
retrieving revision 1.7
diff -u -r1.7 cgram.y
--- usr.bin/xlint/lint1/cgram.y	3 Mar 2002 15:12:19 -0000	1.7
+++ usr.bin/xlint/lint1/cgram.y	7 Jun 2003 06:30:12 -0000
@@ -1642,17 +1642,17 @@
 	return (0);
 }
 
-static inline int uq_gt(uint64_t, uint64_t);
-static inline int q_gt(int64_t, int64_t);
+static __inline int uq_gt(uint64_t, uint64_t);
+static __inline int q_gt(int64_t, int64_t);
 
-static inline int
+static __inline int
 uq_gt(uint64_t a, uint64_t b)
 {
 
 	return (a > b);
 }
 
-static inline int
+static __inline int
 q_gt(int64_t a, int64_t b)
 {
 


More information about the freebsd-current mailing list