Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: ./build.sh -k feature request (was Re: GENERIC Kernel Build errors with -fsanitize=undefined option enabled)



[grudgingly keeping tech-kern and current-users both :-]

Reinoud Zandijk <reinoud%NetBSD.org@localhost> writes:

> @@ -1084,6 +1084,9 @@ Usage: ${progname} [-EhnoPRrUuxy] [-a ar
>                     Should not be used without expert knowledge of the build system.
>      -h             Print this help message.
>      -j njob        Run up to njob jobs in parallel; see make(1) -j.
> +    -k             Continue processing after errors are encountered, but only on
> +                   those targets that do not depend on the target whose creation
> +                   caused the error.
>      -M obj         Set obj root directory to obj; sets MAKEOBJDIRPREFIX.
>                     Unsets MAKEOBJDIR.
>      -m mach        Set MACHINE to mach.  Some mach values are actually

a few unrelated comments:

I think it's pretty clear that if you don't pass -k, nothing will
change.  So people that don't like -k or think it's unsafe can just not
pass it.

It would be nice if invoking build.sh with -k resulted in two
properties: if any subpart fails, getting a non-zero exit status from
build.sh, and having that be clear from the end of the log.  Currently
'make -k' in pkgsrc results in -k being passed to the WRKSRC make
invocation, which results in a zero status, which results in a
.build_done cookie, which is wrong.

The full release build is a number of substeps.   It makes sense to use
-k for the main build of the system, after the tools build, to get the
"find all problems" property you want.  But it's not clear to me that it
makes sense to build the main system if the tool build fails.   And it's
not clear that sets should be produced.  Therefore, I wonder if passing
-k to make should be limited to the main build, and the main build
should be deemed to fail if there are any errors, so that there are no
sets produced in that case.



Attachment: signature.asc
Description: PGP signature



Home | Main Index | Thread Index | Old Index