Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Oct 2017 10:59:43 -0700
From:      bob prohaska <fbsd@www.zefox.net>
To:        freebsd-arm@freebsd.org
Subject:   Re: Difficulty with armv6 to v7 transition.
Message-ID:  <20171013175943.GA74121@www.zefox.net>
In-Reply-To: <20171013020604.GA70845@www.zefox.net>
References:  <20171009175216.GA52497@www.zefox.net> <1507573171.84167.9.camel@freebsd.org> <20171011023356.GA57571@www.zefox.net> <CANCZdfrKYabu1-bWxX47=Lt=33e%2BFjBXCNBNiGPE7K-83KOAHA@mail.gmail.com> <CANCZdfqHfAe24q=6n8CxsHQv24j58bQLPG3z_7vi_xpGjdQzDg@mail.gmail.com> <20171011030021.GB57571@www.zefox.net> <20171013020604.GA70845@www.zefox.net>

next in thread | previous in thread | raw e-mail | index | archive | help
It turns out that simply commenting out lines 447-452 in 
/usr/src/Makefile.inc1 allows buildworld to run, even with
no /etc/make.conf in place. 

This seems like a fairly reckless experiment, but having no 
better ideas, would anybody hazard a guess as to odds that the 
resulting userland might be expected to run? Are there any 
pre-install tests to be tried? 

At this point the kernel is at r324562, /usr/src is at r324599.
Uname -p reports armv7.

Thanks for reading,

bob prohaska

On Thu, Oct 12, 2017 at 07:06:04PM -0700, bob prohaska wrote:
> It's starting to look as if the trouble might have little or nothing
> to do with the armv6-armv7 transition and instead has some other cause.
> 
> At this point /etc/make.conf contains
> KERNCONF=RPI2
> TARGET=arm
> TARGET_ARCH=armv7
> DESTDIR=/
> 
> Buildkernel works, installkernel demanded a DESTDIR and worked once it
> was added, so /etc/make.conf is being read and acted upon. 
> 
> If make buildworld is invoked, using the make.conf file above, make reports
> make[1]: "/usr/src/Makefile.inc1" line 450: To cross-build, set TARGET_ARCH.
> *** [buildworld] Error code 1
> 
> I had to reconstruct all of /usr after mistakenly deleting it during an
> attempted housecleaning. The restored /usr seems to boot normally and 
> builds kernels just fine, but does not allow su to root, so permissions
> (or something) are not entirely correct.
> 
> Might this be related to the failure to recognize or act upon the
> TARGET_ARCH=armv7 setting? /usr/src is at 324562, along with the
> kernel. Userland dates from late June.
> 
> Thanks for reading, and any ideas.
> 
> bob prohaska
> 
> On Tue, Oct 10, 2017 at 08:00:21PM -0700, bob prohaska wrote:
> > On Tue, Oct 10, 2017 at 08:41:17PM -0600, Warner Losh wrote:
> > > On Tue, Oct 10, 2017 at 8:39 PM, Warner Losh <imp@bsdimp.com> wrote:
> > > 
> > > >
> > > >
> > > > On Tue, Oct 10, 2017 at 8:33 PM, bob prohaska <fbsd@www.zefox.net> wrote:
> > > >
> > > >> On Mon, Oct 09, 2017 at 12:19:31PM -0600, Ian Lepore wrote:
> > > >> > On Mon, 2017-10-09 at 10:52 -0700, bob prohaska wrote:
> > > >> > > On an RPI2 model B, invoking?
> > > >> > > make -j4 -DNO_CLEAN MACHINE_ARCH=armv7 buildworld > buildworld.log
> > > >> >
> > > >> > Never set MACHINE_ARCH when building, use TARGET_ARCH. ?Be sure to set
> > > >> > TARGET_ARCH when installing as well.
> > > >>
> > > >> Tried it, like so:
> > > >> root@www:/usr/src # make -j4 buildworld TARGET_ARCH=armv7 >
> > > >> buildworld.log &    [1] 1006
> > > >> root@www:/usr/src # 1 error
> > > >>
> > > >> [1]    Exit 2                        make -j4 buildworld
> > > >> TARGET_ARCH=armv7 > buildworld.log
> > > >> root@www:/usr/src # more *.log
> > > >> --- buildworld ---
> > > >> make[1]: "/usr/src/Makefile.inc1" line 450: To cross-build, set
> > > >> TARGET_ARCH.
> > > >> *** [buildworld] Error code 1
> > > >>
> > > >> make: stopped in /usr/src
> > > >>
> > > >> I also tried setting TARGET=arm and WITHOUT_SYSTEM_COMPILER=yes in various
> > > >> iterations. Should the variables be set somewhere else, in a config file?
> > > >>
> > > >> At this point the kernel is at r324499, along with the sources. Userland
> > > >> dates from late June (operator error). Kernels build, but could that make
> > > >> the trouble I'm seeing? Clang -v reports
> > > >>
> > > >> FreeBSD clang version 4.0.0 (tags/RELEASE_400/final 297347) (based on
> > > >> LLVM 4.0.0)
> > > >> Target: armv6-unknown-freebsd12.0-gnueabihf
> > > >> Thread model: posix
> > > >> InstalledDir: /usr/bin
> > > >>
> > > >> Thanks again!
> > > >
> > > >
> > > > uname -a says what?
> > > >
> > >
> > root@www:/usr/src # 
> > root@www:/usr/src # uname -a
> > FreeBSD www.zefox.com 12.0-CURRENT FreeBSD 12.0-CURRENT #0 r324499: Tue Oct 10 18:06:39 PDT 2017     root@www.zefox.com:/usr/obj/usr/src/sys/RPI2  arm
> >  
> > > What happens if you do a build with TARGET_ARCH=armv7?
> > > 
> > 
> > root@www:/usr/src # make TARGET_ARCH=armv7 buildworld > buildworld.log 
> > make[1]: "/usr/src/Makefile.inc1" line 450: To cross-build, set TARGET_ARCH.
> > root@www:/usr/src # 
> > 
> > FWIW, /etc/make.conf does not exist. Seemingly the variable isn't recognized.
> > Maybe a config error someplace?
> > 
> > Thanks again,
> > 
> > bob prohaska
> > 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20171013175943.GA74121>