NetBSD-Bugs archive

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

toolchain/52836: In kernel builds (non-standard extension) with filesystem images, NOGZIP is not correctly honored



>Number:         52836
>Category:       toolchain
>Synopsis:       In kernel builds (non-standard extension) with filesystem images, NOGZIP is not correctly honored
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    toolchain-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Dec 17 14:55:00 +0000 2017
>Originator:     Harold Gutch
>Release:        NetBSD 7.1
>Organization:
>Environment:
NetBSD  7.1 NetBSD 7.1 (GENERIC.201703111743Z) amd64
>Description:
When building kernels with built-in file system images (INSTALL images etc.), setting the MDSET_NOGZIP variable is supposed to disable gzipping of all kernels, and MDSET_NOGZIP.${FILENAME} is supposed to disable gzipping of the kernel called ${FILENAME}.  This is both documented and implemented in src/distrib/common/Makefile.mdset.  But for kernels with additional suffixes (created by setting MDSET_SUFFIXES), the test in l. 105 only disables gzipping if *both*, MDSET_NOGZIP.${FILENAME} *and* MDSET_NOGZIP are set.

Note that for standard kernels (i.e., no special suffix),, the test in l. 163 correctly disables gzipping if either MDSET_NOGZIP.${FILENAME} is set or gzipping of any kernel is disabled via MDSET_NOGZIP.
>How-To-Repeat:
1) In any Makefile in src/distrib that sets MDSET_SUFFIXES (e.g., evbarm/instkernel/instkernel/Makefile ) correspondingly set MDSET_NOGZIP.${FILENAME} or MDSET_NOGZIP (but not both).
2) build release
3) observe that gzipped kernels with the special suffixes are still built.
>Fix:
--- src/distrib/common/Makefile.mdset	20 Sep 2016 20:55:54 -0000
+++ src/distrib/common/Makefile.mdset	16 Dec 2017 23:46:40 -0000
@@ -102,7 +102,7 @@
 	false
 .endif
 
-.if defined(MDSET_NOGZIP.${_FILENAME}) && defined(MDSET_NOGZIP)
+.if defined(MDSET_NOGZIP.${_FILENAME}) || defined(MDSET_NOGZIP)
 KERNELS+=	${_KERNEL.${_K}.${_F}}.${_S}
 .else							# {
 KERNELS+=	${_KERNEL.${_K}.${_F}}.${_S}.gz



Home | Main Index | Thread Index | Old Index