Date: Mon, 12 Mar 2001 18:44:47 -0800 (PST) From: John Baldwin <jhb@FreeBSD.org> To: Larry Rosenman <ler@lerctr.org> Cc: Marcel Moolenaar <marcel@cup.hp.com>, qa@FreeBSD.org, marcel@FreeBSD.org Subject: Re: cputype=486 Message-ID: <XFMail.010312184447.jhb@FreeBSD.org> In-Reply-To: <20010312195717.A17315@lerami.lerctr.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 13-Mar-01 Larry Rosenman wrote:
> * John Baldwin <jhb@FreeBSD.org> [010312 19:46]:
>>
>> On 13-Mar-01 Larry Rosenman wrote:
>> > * Marcel Moolenaar <marcel@cup.hp.com> [010312 18:32]:
>> >> Larry Rosenman wrote:
>> >> >
>> >> > > 4. Mount the i486 root partition on you P-III and
>> >> > > do the install on your P-III.
>> >> >
>> >> > > Ad 4: it would be nice if we had some sort of staging. That way, the
>> >> > > install can be performed on the P-III. The staging area could then be
>> >> > > mounted by other machines and "installed". This could be as simple as
>> >> > > doing a
>> >> >
>> >> > > tar cf - ${STAGING_DIR} | (cd /; tar xf -)
>> >> > As I said, I lose the P-III optimizations while it's a host,
>> >> > or is there a variable to installworld that says ROOT is HERE...???
>> >>
>> >> Yes. It's called DESTDIR, as in:
>> >>
>> >> make installworld DESTDIR=/foo/bar/baz
>> > NOPE, doesn't work, as install -fschg doesn't work across NFS.
>> >
>> > I'll post the log in a bit.
>> >
>> > SO, now I guess I have to ignore the CPUTYPE= setting while installing
>> > the 486.
>> >
>> > I don't think this was what was intended.
>>
>> Can you try editing src/Makefile.inc1 where it says something like this:
>>
>> installworld:
>> mkdir -p ${INSTALLTMP}
>> for prog in [ awk cat chflags chmod chown date echo egrep find grep
>> \
>> install ln make makewhatis mtree mv perl rm sed sh sysctl \
>> test true uname wc zic; do \
>> cp `which $$prog` ${INSTALLTMP}; \
>> done
>> cd ${.CURDIR}; ${IMAKE} reinstall
>> rm -rf ${INSTALLTMP}
>>
>> add 'strip' to the list of files copied in that loop and then try running a
>> normal installworld with an NFS mounted /usr/obj and /usr/src on the 486
>> like
>> you did originally?
>
> No dice:
>
> mkdir -p /tmp/install.20973
> for prog in [ awk cat chflags chmod chown date echo egrep find grep install
> ln make makewhatis mtree mv perl rm sed sh sysctl strip test true uname wc
> zic; do cp `which $prog` /tmp/install.20973; done
> cd /usr/src; MAKEOBJDIRPREFIX=/usr/obj
> COMPILER_PATH=/usr/obj/usr/src/i386/usr/libexec:/usr/obj/usr/src/i386/usr/bin
> LIBRARY_PATH=/usr/obj/usr/src/i386/usr/lib:/usr/obj/usr/src/i386/usr/lib
> OBJFORMAT_PATH=/usr/obj/usr/src/i386/usr/libexec PERL5LIB=/usr/obj/usr/src/i3
> 86/usr/libdata/perl/5.00503
> PATH=/usr/obj/usr/src/i386/usr/sbin:/usr/obj/usr/src/i386/usr/bin:/usr/obj/usr
> /src/i386/usr/games:/tmp/install.20973 make -f Makefile.inc1 reinstall
Oh, the /tmp/install.XXXX path is last here. Grrrr, so the cross tools gets
used during installworld. :( This is _bad_ and breaks cross built world
installs. Marcel, can we have just the /tmp/install.XXXXX' as the path for the
installworld?
Larry, it may not work, but you can try editing src/Makefile.inc1 again and
changing the IMAKEENV variable to just set PATH to ${INSTALLTMP} (i.e. remove
${STRICTTMPPATH}). You may have to add more binaries to the list of those
copied over in the installworld: target for it to work however. As for a
general solution, this still might not work for cross builds to other archs as
some of the binaries that are needed aren't statically linked I'm betting.
--
John Baldwin <jhb@FreeBSD.org> -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!" - http://www.FreeBSD.org/
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-qa" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.010312184447.jhb>
