Damien asked me to forward this to the list. I''ll also add that my system is running the Aug 23 snapshot: OpenBSD 4.2 (GENERIC) #374: Thu Aug 23 10:41:10 MDT 2007 deraadt at i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC cpu0: Intel Pentium III ("GenuineIntel" 686-class, 128KB L2 cache) 898 MHz cpu0: FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXS R,SSE ---------- Forwarded message ---------- Date: Thu, 30 Aug 2007 22:43:37 -0600 (MDT) From: Jason George <jbg at masterplan.org> To: djm at mindrot.org Subject: flashboot build issue? Hi - I was wondering if there is an issue with 4.2-based source tree and flashboot. I hadn''t run any of the build scripts in about 3.5 months (around the time of the hackathon) but noticed yesterday that my scripts from January were now failing on the build-release portion. (They''d been running fine in different incarnations for well over a year) Initially, they failed trying to install the man page for ypclnt.3. This caused me to start digging. I then downloaded the 20070830 snapshot and encountered the same issue. I tracked it down to the options in mk-mini.conf. If I leave various options of KERBEROS, YP, etc equal to NO, then the build fails in different places when trying to install. My setup involves building a raw, clean source tree from fresh cvs tree from a daily cvsync snapshot. I merge my custom binaries in much later (nothing to do with the build-release script) so that isn''t the cause. Any thoughts? A standard build-world from /usr/src works just fine. It''s the mk-mini options that are crating the build for me. Did something change in "make" and how it handle its options in the last number of months that I''ve missed? Commenting options below allows the build-release to run to completion, and the followup scripts to build a compressed kernel, etc run, but the implication is that Kerberos is now compiled in, etc... Thanks! --Jason # more mk-mini.conf # $Id: mk-mini.conf,v 1.1 2006/08/26 17:52:44 jakob Exp $ WARNINGS=yes PIPE=-pipe STATICDEBUG #KERBEROS=no #KERBEROS5=no #YP=no #AFS=no #TCP_WRAPPERS=no # more build-release.sh #!/bin/sh # # $Id: build-release.sh,v 1.2 2006/09/03 18:28:33 jakob Exp $ set -xe ### PATH = /v00/embedded/src/ResourceChain/flashboot-20070830/ BASE=`pwd` #BSDSRCDIR=${BSDSRCDIR:-/usr/src} BSDSRCDIR=${BSDSRCDIR:-/v00/embedded/src/OpenBSD/OpenBSD-current/src} #BSDOBJDIR=${BSDOBJDIR:-${BASE}/flash-obj} BSDOBJDIR=${BSDOBJDIR:-/v00/embedded/obj/flashboot/flash-obj} #DESTDIR=${DESTDIR:-${BASE}/flash-dist} DESTDIR=${DESTDIR:-/v00/embedded/obj/flashboot/flash-dist} _MINI=-mini RELEASEDIR=${BASE}/release${_MINI} MAKECONF=${BASE}/mk${_MINI}.conf SUDO=sudo export BSDSRCDIR BSDOBJDIR DESTDIR RELEASEDIR MAKECONF SUDO cd ${BSDSRCDIR} mkdir -p ${BSDOBJDIR} ${DESTDIR} if [ "x$1" != "xbuilt" ] ; then rm -rf ${DESTDIR}/* make -k cleandir rm -rf ${BSDOBJDIR}/* make obj cd etc make distrib-dirs cd .. make build fi cd etc make distribution-etc-root-var cd .. #
Hi Jason, Sorry for the low attention on this lists, but for all I know the Flashboot-community is a bit thin. ;-) I haven''t tried to build using 4.2 as I''m not running it anywhere, but building 4.1 works like a charm. Other than that I can''t help you until I get my 4.2-snapshot going. Anyone else?? Rickard. Jason George wrote:> Damien asked me to forward this to the list. > > I''ll also add that my system is running the Aug 23 snapshot: > > OpenBSD 4.2 (GENERIC) #374: Thu Aug 23 10:41:10 MDT 2007 > deraadt at i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC > cpu0: Intel Pentium III ("GenuineIntel" 686-class, 128KB L2 cache) 898 MHz > cpu0: > FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXS > R,SSE > > > ---------- Forwarded message ---------- > Date: Thu, 30 Aug 2007 22:43:37 -0600 (MDT) > From: Jason George <jbg at masterplan.org> > To: djm at mindrot.org > Subject: flashboot build issue? > > > Hi - > > I was wondering if there is an issue with 4.2-based source tree and flashboot. > > I hadn''t run any of the build scripts in about 3.5 months (around the time of > the hackathon) but noticed yesterday that my scripts from January were now > failing on the build-release portion. (They''d been running fine in different > incarnations for well over a year) Initially, they failed trying to install > the man page for ypclnt.3. This caused me to start digging. > > I then downloaded the 20070830 snapshot and encountered the same issue. > > I tracked it down to the options in mk-mini.conf. If I leave various options > of KERBEROS, YP, etc equal to NO, then the build fails in different places when > trying to install. > > My setup involves building a raw, clean source tree from fresh cvs tree from a > daily cvsync snapshot. I merge my custom binaries in much later (nothing to do > with the build-release script) so that isn''t the cause. > > Any thoughts? A standard build-world from /usr/src works just fine. It''s the > mk-mini options that are crating the build for me. Did something change in > "make" and how it handle its options in the last number of months that I''ve > missed? > > Commenting options below allows the build-release to run to completion, and the > followup scripts to build a compressed kernel, etc run, but the implication is > that Kerberos is now compiled in, etc... > > Thanks! > > --Jason > > # more mk-mini.conf > # $Id: mk-mini.conf,v 1.1 2006/08/26 17:52:44 jakob Exp $ > > WARNINGS=yes > PIPE=-pipe > STATIC> DEBUG> > #KERBEROS=no > #KERBEROS5=no > #YP=no > #AFS=no > #TCP_WRAPPERS=no > > > > > > # more build-release.sh > #!/bin/sh > # > # $Id: build-release.sh,v 1.2 2006/09/03 18:28:33 jakob Exp $ > > set -xe > > ### PATH = /v00/embedded/src/ResourceChain/flashboot-20070830/ > BASE=`pwd` > > #BSDSRCDIR=${BSDSRCDIR:-/usr/src} > BSDSRCDIR=${BSDSRCDIR:-/v00/embedded/src/OpenBSD/OpenBSD-current/src} > > #BSDOBJDIR=${BSDOBJDIR:-${BASE}/flash-obj} > BSDOBJDIR=${BSDOBJDIR:-/v00/embedded/obj/flashboot/flash-obj} > > #DESTDIR=${DESTDIR:-${BASE}/flash-dist} > DESTDIR=${DESTDIR:-/v00/embedded/obj/flashboot/flash-dist} > > _MINI=-mini > > RELEASEDIR=${BASE}/release${_MINI} > MAKECONF=${BASE}/mk${_MINI}.conf > SUDO=sudo > > export BSDSRCDIR BSDOBJDIR DESTDIR RELEASEDIR MAKECONF SUDO > > cd ${BSDSRCDIR} > mkdir -p ${BSDOBJDIR} ${DESTDIR} > > if [ "x$1" != "xbuilt" ] ; then > rm -rf ${DESTDIR}/* > make -k cleandir > rm -rf ${BSDOBJDIR}/* > > make obj > cd etc > make distrib-dirs > cd .. > > make build > fi > > cd etc > make distribution-etc-root-var > cd .. > # > > _______________________________________________ > flashboot mailing list > flashboot at mindrot.org > https://lists.mindrot.org/mailman/listinfo/flashboot >
On Fri, Aug 31, 2007 at 07:35:39AM -0600, Jason George wrote: : the hackathon) but noticed yesterday that my scripts from January were now : failing on the build-release portion. (They''d been running fine in different : incarnations for well over a year) Initially, they failed trying to install : the man page for ypclnt.3. This caused me to start digging. : : I then downloaded the 20070830 snapshot and encountered the same issue. : : I tracked it down to the options in mk-mini.conf. If I leave various options : of KERBEROS, YP, etc equal to NO, then the build fails in different places when : trying to install. : : My setup involves building a raw, clean source tree from fresh cvs tree from a : daily cvsync snapshot. I merge my custom binaries in much later (nothing to do : with the build-release script) so that isn''t the cause. : : Any thoughts? A standard build-world from /usr/src works just fine. It''s the : mk-mini options that are crating the build for me. Did something change in : "make" and how it handle its options in the last number of months that I''ve : missed? I see the same thing and have not yet been able to track its cause down. I get the problem also when I build 4.2 using 4.1 make program, and 4.1 /usr/share/mk makefiles. install -c -o root -g bin -m 444 shmget.cat2 /extra/flash-dist/usr/share/man/cat2/shmget.0 install -c -o root -g bin -m 444 ypclnt.cat3 /extra/flash-dist/usr/share/man/cat3/ypclnt.0 install: ypclnt.cat3: No such file or directory *** Error code 71 Stop in /extra/OPENBSD_4_2/src/lib/libc (line 88 of /usr/share/mk/bsd.man.mk). *** Error code 1 Stop in /extra/OPENBSD_4_2/src/lib. *** Error code 1 Stop in /extra/OPENBSD_4_2/src (line 73 of Makefile).
Am Sonntag, 9. September 2007 23:43:41 schrieb Kevin Steves: Hi guys,> : the hackathon) but noticed yesterday that my scripts from January were > : now failing on the build-release portion. (They''d been running fine in > : different incarnations for well over a year) Initially, they failed > : trying to install the man page for ypclnt.3. This caused me to start > : digging. > : > : I then downloaded the 20070830 snapshot and encountered the same issue. > : > : I tracked it down to the options in mk-mini.conf. If I leave various > : options of KERBEROS, YP, etc equal to NO, then the build fails in > : different places when trying to install. > : > : My setup involves building a raw, clean source tree from fresh cvs tree > : from a daily cvsync snapshot. I merge my custom binaries in much later > : (nothing to do with the build-release script) so that isn''t the cause. > : > : Any thoughts? A standard build-world from /usr/src works just fine. > : It''s the mk-mini options that are crating the build for me. Did > : something change in "make" and how it handle its options in the last > : number of months that I''ve missed? > > I see the same thing and have not yet been able to track its > cause down.I think I found the cause for this trouble. Remember the recent changes to sudo? There is a new default that the environment isn''t inherited. There are some variables found in /etc/sudoers, that are kept nonetheless, but as far as I can see it, one is missing: MAKECONF. I can''t tell if this should be preserved by default, maybe Todd can say a few words? Take care, Stephan
On Sun, 9 Sep 2007, Kevin Steves wrote:> On Fri, Aug 31, 2007 at 07:35:39AM -0600, Jason George wrote: > : the hackathon) but noticed yesterday that my scripts from January were now > : failing on the build-release portion. (They''d been running fine in different > : incarnations for well over a year) Initially, they failed trying to install > : the man page for ypclnt.3. This caused me to start digging. > : > : I then downloaded the 20070830 snapshot and encountered the same issue. > : > : I tracked it down to the options in mk-mini.conf. If I leave various options > : of KERBEROS, YP, etc equal to NO, then the build fails in different places when > : trying to install. > : > : My setup involves building a raw, clean source tree from fresh cvs tree from a > : daily cvsync snapshot. I merge my custom binaries in much later (nothing to do > : with the build-release script) so that isn''t the cause. > : > : Any thoughts? A standard build-world from /usr/src works just fine. It''s the > : mk-mini options that are crating the build for me. Did something change in > : "make" and how it handle its options in the last number of months that I''ve > : missed? > > I see the same thing and have not yet been able to track its > cause down. > > I get the problem also when I build 4.2 using 4.1 make program, and > 4.1 /usr/share/mk makefiles. > > install -c -o root -g bin -m 444 shmget.cat2 /extra/flash-dist/usr/share/man/cat2/shmget.0 > install -c -o root -g bin -m 444 ypclnt.cat3 /extra/flash-dist/usr/share/man/cat3/ypclnt.0 > install: ypclnt.cat3: No such file or directory > *** Error code 71 > > Stop in /extra/OPENBSD_4_2/src/lib/libc (line 88 of /usr/share/mk/bsd.man.mk). > *** Error code 1 > > Stop in /extra/OPENBSD_4_2/src/lib. > *** Error code 1 > > Stop in /extra/OPENBSD_4_2/src (line 73 of Makefile). >I was out for my regular beers with Theo on Wednesday and mentioned this breakage (prefacing, of course, that I knew this isn''t supported through the regular channels). Since I can still repeat the error conditions running strictly as root and with the sudo references completely eliminated, the trigger is somewhere in the make and .mk file setup. Unfortunately, I think part of the solution is to checkout OPENBSD_4_1 and selectively update the local tree week by week since about the start of May. Then do a full rebuild and install and repeat... This will at least reduce the window of commits to have to go through that might be triggering the error.
Am Samstag, 15. September 2007 17:38:28 schrieb Jason George: Hi Jason,> I was out for my regular beers with Theo on Wednesday and mentioned this > breakage (prefacing, of course, that I knew this isn''t supported through > the regular channels). > > Since I can still repeat the error conditions running strictly as root and > with the sudo references completely eliminated, the trigger is somewhere > in the make and .mk file setup. > > Unfortunately, I think part of the solution is to checkout OPENBSD_4_1 and > selectively update the local tree week by week since about the start of > May. Then do a full rebuild and install and repeat... This will at least > reduce the window of commits to have to go through that might be > triggering the error.You might want to add MAKECONF to env_keep in /etc/sudoers and retry the build with sudo enabled. That is what worked for me (and what has changed between 4.1 and 4.2). Best regards, Stephan
On Sat, Sep 15, 2007 at 07:36:08PM +0200, Stephan Tesch wrote: : You might want to add MAKECONF to env_keep in /etc/sudoers and retry the build : with sudo enabled. That is what worked for me (and what has changed between : 4.1 and 4.2). yes, that addresses the problem. thanks for tracking it down.
Kevin Steves wrote:> On Sat, Sep 15, 2007 at 07:36:08PM +0200, Stephan Tesch wrote: > : You might want to add MAKECONF to env_keep in /etc/sudoers and retry the build > : with sudo enabled. That is what worked for me (and what has changed between > : 4.1 and 4.2). > > yes, that addresses the problem. thanks for tracking it down. >Excellent work tracking this down, can you provide us with a patch so that we can update the CVS? Rickard.
On Sun, 16 Sep 2007, Kevin Steves wrote:> On Sat, Sep 15, 2007 at 07:36:08PM +0200, Stephan Tesch wrote: > : You might want to add MAKECONF to env_keep in /etc/sudoers and retry the build > : with sudo enabled. That is what worked for me (and what has changed between > : 4.1 and 4.2). > > yes, that addresses the problem. thanks for tracking it down.I am running a version of the script without sudo (i.e. - references in the build-release.sh are removed). In order to get around any issues with the latest flag day because of Claudio''s 64-bit changes, I installed the Sep13 i386 snapshot. Now the flashboot release build process runs fine with a cvs tree updated a few hours ago through to completion.
Am Montag, 17. September 2007 17:18:13 schrieb Rickard Dahlstrand:> Kevin Steves wrote: > > On Sat, Sep 15, 2007 at 07:36:08PM +0200, Stephan Tesch wrote: > > : You might want to add MAKECONF to env_keep in /etc/sudoers and retry > > : the build with sudo enabled. That is what worked for me (and what has > > : changed between 4.1 and 4.2). > > > > yes, that addresses the problem. thanks for tracking it down. > > Excellent work tracking this down, can you provide us with a patch so > that we can update the CVS? > > Rickard.How about this, it fixes at least the build problems. --- build-release.sh.orig Tue Sep 18 21:15:32 2007 +++ build-release.sh Tue Sep 18 18:44:58 2007 @@ -14,7 +14,7 @@ RELEASEDIR=${BASE}/release${_MINI} MAKECONF=${BASE}/mk${_MINI}.conf -SUDO=sudo +SUDO="sudo MAKECONF=${MAKECONF}" export BSDSRCDIR BSDOBJDIR DESTDIR RELEASEDIR MAKECONF SUDO