svn commit: r185499 - head
Bjoern A. Zeeb
bz at FreeBSD.org
Sun Jan 9 12:55:08 UTC 2011
On Mon, 1 Dec 2008, Alfred Perlstein wrote:
> Author: alfred
> Date: Mon Dec 1 00:45:51 2008
> New Revision: 185499
> URL: http://svn.freebsd.org/changeset/base/185499
>
> Log:
> Provide a 'tinderbox' target that compiles enough of FreeBSD that
> a developer can rest reasonably assured that the tinderbox will not
> be broken. This target leverages most of 'universe' but will exit
> non-zero and output a summary at the end.
>
> "make tinderbox"
Hi,
I noticed that the file always grew but was never displayed
automatically nor removed on a new run. I guess it's because I
have MAKEOBJDIRPREFIX set in the environment and `pwd` is not
${.CURDIR} for the two operations.
Anyone see any problems with this?
Index: Makefile
===================================================================
--- Makefile (revision 217191)
+++ Makefile (working copy)
@@ -301,7 +301,7 @@ targets:
.endfor
.if defined(DOING_TINDERBOX)
-FAILFILE=tinderbox.failed
+FAILFILE=${.CURDIR}/tinderbox.failed
MAKEFAIL=tee -a ${FAILFILE}
.else
MAKEFAIL=cat
> Modified:
> head/Makefile
>
> Modified: head/Makefile
> ==============================================================================
> --- head/Makefile Mon Dec 1 00:23:12 2008 (r185498)
> +++ head/Makefile Mon Dec 1 00:45:51 2008 (r185499)
> @@ -267,6 +267,10 @@ make: .PHONY
> ${MMAKE} all && \
> ${MMAKE} install DESTDIR=${MAKEPATH} BINDIR=
>
> +tinderbox:
> + cd ${.CURDIR} && \
> + DOING_TINDERBOX=YES ${MAKE} ${JFLAG} universe
> +
> #
> # universe
> #
> @@ -274,14 +278,24 @@ make: .PHONY
> # with a reasonable chance of success, regardless of how old your
> # existing system is.
> #
> -.if make(universe)
> +.if make(universe) || make(tinderbox)
> TARGETS?=amd64 arm i386 ia64 pc98 powerpc sparc64 sun4v
>
> +.if defined(DOING_TINDERBOX)
> +FAILFILE=tinderbox.failed
> +MAKEFAIL=tee -a ${FAILFILE}
> +.else
> +MAKEFAIL=cat
> +.endif
> +
> universe: universe_prologue
> universe_prologue:
> @echo "--------------------------------------------------------------"
> @echo ">>> make universe started on ${STARTTIME}"
> @echo "--------------------------------------------------------------"
> +.if defined(DOING_TINDERBOX)
> + rm -f ${FAILFILE}
> +.endif
> .for target in ${TARGETS}
> KERNCONFS!= cd ${.CURDIR}/sys/${target}/conf && \
> find [A-Z]*[A-Z] -type f -maxdepth 0 \
> @@ -296,15 +310,15 @@ universe_${target}:
> ${MAKE} ${JFLAG} buildworld \
> TARGET=${target} \
> > _.${target}.buildworld 2>&1 || \
> - echo "${target} world failed," \
> - "check _.${target}.buildworld for details")
> + (echo "${target} world failed," \
> + "check _.${target}.buildworld for details" | ${MAKEFAIL}))
> @echo ">> ${target} buildworld completed on `LC_ALL=C date`"
> .endif
> .if exists(${.CURDIR}/sys/${target}/conf/NOTES)
> @(cd ${.CURDIR}/sys/${target}/conf && env __MAKE_CONF=/dev/null \
> ${MAKE} LINT > ${.CURDIR}/_.${target}.makeLINT 2>&1 || \
> - echo "${target} 'make LINT' failed," \
> - "check _.${target}.makeLINT for details")
> + (echo "${target} 'make LINT' failed," \
> + "check _.${target}.makeLINT for details"| ${MAKEFAIL}))
> .endif
> .for kernel in ${KERNCONFS}
> @(cd ${.CURDIR} && env __MAKE_CONF=/dev/null \
> @@ -312,8 +326,8 @@ universe_${target}:
> TARGET=${target} \
> KERNCONF=${kernel} \
> > _.${target}.${kernel} 2>&1 || \
> - echo "${target} ${kernel} kernel failed," \
> - "check _.${target}.${kernel} for details")
> + (echo "${target} ${kernel} kernel failed," \
> + "check _.${target}.${kernel} for details"| ${MAKEFAIL}))
> .endfor
> @echo ">> ${target} completed on `LC_ALL=C date`"
> .endfor
> @@ -323,4 +337,11 @@ universe_epilogue:
> @echo ">>> make universe completed on `LC_ALL=C date`"
> @echo " (started ${STARTTIME})"
> @echo "--------------------------------------------------------------"
> +.if defined(DOING_TINDERBOX)
> + @if [ -e ${FAILFILE} ] ; then \
> + echo "Tinderbox failed:" ;\
> + cat ${FAILFILE} ;\
> + exit 1 ;\
> + fi
> +.endif
> .endif
>
--
Bjoern A. Zeeb You have to have visions!
<ks> Going to jail sucks -- <bz> All my daemons like it!
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/jails.html
More information about the svn-src-all
mailing list