Subject: Re: problems w/current
To: None <Marc@Synergytics.Com>
From: Paul Kranenburg <pk@cs.few.eur.nl>
List: current-users
Date: 12/08/1993 01:29:05
>
>Other OS environments I have worked with usually provide special make rules
>which allow a non-native bootstrap build. I see that usr.bin/make has a
>Makefile.dist which appears to be a good starting place. It would appear that I
>need to modify the pathnames.h and the share/mk/*.mk files in order to generate
>native tools from the netBSD sources which can then be used to essentially cross
>compile.
>
>Has anybody else been through this process yet? If so, I am missing something
>important? If what I am seeing is accurate, should I consider trying to do this
>in a clean manner, so that changes could be merged in the main pool to aid the
> next person trying to do similiar things?
>
I have succesfully bootstrapped NetBSD/i386 on a Sparc (and also NetBSD/sparc
which was somewhat easier). It would surely be nice to have a more or less
generally useable cross-development environment. There a number of tedious
things you run into, like having to weed through /usr/include looking for
header files that are needed by your "cross" tools on the host.
I found I needed the following set of programs to compile for the i386 on
a Sparc that allow me to do `make; make install' in the major source
directories with only a few hickups (like strip wanting to strip itself):
% ls -F /usr/local/x386
ar* as* cc@ config* cpp* dbsym* diskless_setup* gcc@
install* ld* lib/ libexec/ lorder* make* mkdep*
nm* ranlib* size* strip* symorder*
Some of these are just there because the native tools expect different
command-line options than the BSD ones do; some of these are just shell
script wrappers. Endianess is of cause a major spoil sport and accounts
for the majority of source changes (I keep a `/usr/xsrc' for the purpose,
which must be maintained manually as source changes for the "originals"
come in).
Oh yes, remember to define MACHINE and MACHINE_ARCH properly when building
make for your target machine.
-pk
------------------------------------------------------------------------------