NetBSD-Bugs archive

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

Re: toolchain/57584: Running build.sh with -N 3 or -N 4 causes debug logging to be included in the MKVARS shell variable in distrib/sets/sets.subr



On Tue, 5 Sep 2023, Christos Zoulas wrote:


Perhaps the issue is that sets.subr does MAKEVERBOSE= not MAKEVERBOSE=0 and the shell behaves differently on Solaris?


I see the same issue on both Solaris and NetBSD.

With the following patch which will print out what MKVARS contains in sets.subr:

diff --git a/distrib/sets/sets.subr b/distrib/sets/sets.subr
index 6f2223181713..63782bfcda71 100644
--- a/distrib/sets/sets.subr
+++ b/distrib/sets/sets.subr
@@ -129,7 +129,8 @@ done

 IFS=$oIFS

-MKVARS="$( MAKEVERBOSE= ${MAKE} -B -f ${rundir}/mkvars.mk mkvars | ${SED} -e 's,=.*,,' | ${XARGS} )" +MKVARS="$( ${MAKE} -B -f ${rundir}/mkvars.mk MAKEVERBOSE=0 mkvars | ${SED} -e 's,=.*,,' | ${XARGS} )"
+echo "sets.subr contains: " $MKVARS

 #####


Both Solaris and NetBSD incorrecly pollutes the MKVARS variable with "echo XXXXX" strings.

On Solaris:

opc@instance-20230726-2011:~$ uname -a
SunOS instance-20230726-2011 5.11 11.4.42.111.0 i86pc i386 i86pc kvm


opc@instance-20230726-2011:~/git/netbsd_src/distrib/sets$ ~/data/netbsd/build/sparc64/tooldir/bin/nbmake-sparc64 makesetfiles

...
+ echo USE_YP=yes
+ echo COMPATARCHDIRS=sparc
+ echo KMODARCHDIRS=
+ echo MKSOLARIS=yes
sets.subr contains: echo MKARGON2 MKARGON2 echo MKATF MKATF echo MKBINUTILS MKBINUTILS echo MKBSDTAR MKBSDTAR echo MKCLEANSRC MKCLEANSRC echo MKCLEANVERIFY MKCLEANVERIFY echo MKCOMPLEX MKCOMPLEX echo MKCVS MKCV S echo MKCXX MKCXX echo MKDOC MKDOC echo MKDTC MKDTC echo MKDYNAMICROOT MKDYNAMICROOT echo MKGCC MKGCC echo MKGDB MKGDB echo MKGROFF MKGROFF echo MKHESIOD MKHESIOD echo MKHTML MKHTML echo MKIEEEFP MKIEEEFP echo MKINET6 MKINET6 echo MKINFO MKINFO echo MKIPFILTER MKIPFILTER echo MKISCSI MKISCSI echo MKKERBEROS MKKERBEROS echo MKKMOD MKKMOD echo MKLDAP MKLDAP echo MKLIBSTDCXX MKLIBSTDCXX echo MKLINKLIB MKLINKLIB echo MKLV M MKLVM echo MKMAKEMANDB MKMAKEMANDB echo MKMAN MKMAN echo MKMANDOC MKMANDOC echo MKMDNS MKMDNS echo MKNLS MKNLS echo MKNPF MKNPF echo MKOBJ MKOBJ echo MKPAM MKPAM echo MKPF MKPF echo MKPIC MKPIC echo MKPICLIB M KPICLIB echo MKPOSTFIX MKPOSTFIX echo MKPROFILE MKPROFILE echo MKRUMP MKRUMP echo MKSHARE MKSHARE echo MKSKEY MKSKEY echo MKSTATICLIB MKSTATICLIB echo MKSTRIPSYM MKSTRIPSYM echo MKUNBOUND MKUNBOUND echo MKX11FON

...

+ echo COMPATARCHDIRS=sparc
+ echo KMODARCHDIRS=
+ echo MKSOLARIS=yes
/export/home/opc/data/netbsd/build/sparc64/tooldir/bin/nbawk: non-terminated string echo MKARG... at source line 21
 context is
MKOBJDIRS echo MKPCC MKPCC echo MKPICINSTALL MKPICINSTALL echo MKPIGZGZIP MKPIGZGZIP echo MKRADEONFIRMWARE MKRADEONFIRMWARE echo MKREPRO MKREPRO echo MKSLJIT MKSLJIT echo MKSOFTFLOAT MKSOFTFLOAT echo MKSTRIPIDENT MKSTRIPIDENT echo MKTEGRAFIRMWARE MKTEGRAFIRMWARE echo MKTPM MKTPM echo MKUNPRIVED >>> <<< MKUNPRIVED echo MKUPDATE MKUPDATE echo MKX11 MKX11 echo MKX11MOTIF MKX11MOTIF echo MKXORG_SERVER MKXORG_SERVER echo MKZFS MKZFS echo ARCH64 ARCH64 echo EABI EABI echo HAVE_ACPI HAVE_ACPI echo HAVE_BINUTILS HAVE_BINUTILS echo HAVE_GCC HAVE_GCC echo HAVE_GDB HAVE_GDB echo HAVE_LIBGCC_EH HAVE_LIBGCC_EH echo HAVE_MESA_VER HAVE_MESA_VER echo HAVE_NVMM HAVE_NVMM echo HAVE_OPENSSL HAVE_OPENSSL echo HAVE_SSP HAVE_SSP echo HAVE_UEFI HAVE_UEFI echo HAVE_XORG_GLAMOR HAVE_XORG_GLAMOR echo HAVE_XORG_SERVER_VER HAVE_XORG_SERVER_VER echo KERNEL_DIR KERNEL_DIR echo MACHINE MACHINE echo MACHINE_ARCH MACHINE_ARCH echo MACHINE_CPU MACHINE_CPU echo MAKEVERBOSE MAKEVERBOSE echo MKCOMPAT MKCOMPAT echo MKCOMPATMODULES MKCOMPATMODULES echo MKMANPAGES MKMANPAGES echo MKSTATICPIE MKSTATICPIE echo MKXORG MKXORG echo NETBSDSRCDIR NETBSDSRCDIR echo OBJECT_FMT OBJECT_FMT echo TARGET_ENDIANNESS TARGET_ENDIANNESS echo TOOLCHAIN_MISSING TOOLCHAIN_MISSING echo USE_INET6 USE_INET6 echo USE_KERBEROS USE_KERBEROS echo USE_LDAP USE_LDAP echo USE_YP USE_YP echo COMPATARCHDIRS COMPATARCHDIRS echo KMODARCHDIRS KMODARCHDIRS echo MKSOLARIS MKSOLARIS", needvars) /export/home/opc/data/netbsd/build/sparc64/tooldir/bin/nbawk: non-terminated string echo MKARG... at source line 22 /export/home/opc/data/netbsd/build/sparc64/tooldir/bin/nbawk: non-terminated string echo MKARG... at source line 23
/export/home/opc/data/netbsd/build/sparc64/tooldir/bin/nbawk: giving up
 source line number 235
xargs: Child killed with signal 13

Running on Solaris has issues with the extra "echo XXXXX" strings...



On NetBSD:

$ uname -a
NetBSD odin 9.1 NetBSD 9.1 (GENERIC) #0: Sun Oct 18 19:24:30 UTC 2020 mkrepro%mkrepro.NetBSD.org@localhost:/usr/src/sys/arch/amd64/compile/GENERIC amd64

...
+ echo 'USE_LDAP=yes'
+ echo 'USE_YP=yes'
+ echo COMPATARCHDIRS=sparc
+ echo KMODARCHDIRS=
+ echo MKSOLARIS=yes
sets.subr contains: echo MKARGON2 MKARGON2 echo MKATF MKATF echo MKBINUTILS MKBINUTILS echo MKBSDTAR MKBSDTAR echo MKCLEANSRC MKCLEANSRC echo MKCLEANVERIFY MKCLEANVERIFY echo MKCOMPLEX MKCOMPLEX echo MKCVS MKCVS echo MKCXX MKCXX echo MKDOC MKDOC echo MKDTC MKDTC echo MKDYNAMICROOT MKDYNAMICROOT echo MKGCC MKGCC echo MKGDB MKGDB echo MKGROFF MKGROFF echo MKHESIOD MKHESIOD echo MKHTML MKHTML echo MKIEEEFP MKIEEEFP echo MKINET6 MKINET6 echo MKINFO MKINFO echo MKIPFILTER MKIPFILTER echo MKISCSI MKISCSI echo MKKERBEROS MKKERBEROS echo MKKMOD MKKMOD echo MKLDAP MKLDAP echo MKLIBSTDCXX MKLIBSTDCXX echo MKLINKLIB MKLINKLIB echo MKLVM MKLVM echo MKMAKEMANDB MKMAKEMANDB echo MKMAN MKMAN echo MKMANDOC MKMANDOC echo MKMDNS MKMDNS echo MKNLS MKNLS echo MKNPF MKNPF echo MKOBJ MKOBJ echo MKPAM MKPAM echo MKPF MKPF echo MKPIC MKPIC echo MKPICLIB MKPICLIB echo MKPOSTFIX MKPOSTFIX echo MKPROFILE MKPROFILE echo MKRUMP MKRUMP echo MKSHARE MKSHARE echo MKSKEY MKSKEY echo MKSTATICLIB MKSTATICLIB echo MKSTRIPSYM MKSTRIPSYM echo MKUNBOUND MKUNBOUND echo MKX11FONTS MKX11FONTS echo MKYP MKYP echo MKGCCCMDS MKGCCCMDS echo MKAMDGPUFIRMWARE MKAMDGPUFIRMWARE echo MKARZERO MKARZERO echo MKBSDGREP MKBSDGREP echo MKCATPAGES MKCATPAGES echo MKCOMPATTESTS MKCOMPATTESTS echo MKCOMPATX11 MKCOMPATX11 echo MKCTF MKCTF echo MKDEBUG MKDEBUG echo MKDEBUGLIB MKDEBUGLIB echo MKDEPINCLUDES MKDEPINCLUDES echo MKDTB MKDTB echo MKDTRACE MKDTRACE echo MKFIRMWARE MKFIRMWARE echo MKGROFFHTMLDOC MKGROFFHTMLDOC echo

...

+ echo 'OBJECT_FMT=ELF'
+ echo 'TARGET_ENDIANNESS=4321'
+ echo 'TOOLCHAIN_MISSING=no'
+ echo 'USE_INET6=yes'
+ echo 'USE_KERBEROS=yes'
+ echo 'USE_LDAP=yes'
+ echo 'USE_YP=yes'
+ echo COMPATARCHDIRS=sparc
+ echo KMODARCHDIRS=
+ echo MKSOLARIS=yes
Creating set.text
$


completes without issues, even if MKVARS also contains the "echo XXXX" strings on NetBSD...




So I'm not still convinced that the "pollution" of MKVARS is platform specific. Apparently the additional words in MKVARS causes problems on Solaris - perhaps a size limit somewhere. But I still think that the root cause of the issue is the extra "echo XXXXXX" strings in MKVARS




Home | Main Index | Thread Index | Old Index