2006-11-24 02:33:56 +03:00
|
|
|
$NetBSD: README.mknative,v 1.4 2006/11/23 23:33:56 uwe Exp $
|
2006-06-02 19:33:34 +04:00
|
|
|
|
|
|
|
This file describes how to use the cross-compiler to generate the
|
|
|
|
native files for GDB on a target platform.
|
|
|
|
|
|
|
|
NOTE: DO NOT RUN "mknative" BY HAND! It requires the Makefile in this
|
|
|
|
directory to set up certain environments first.
|
|
|
|
|
|
|
|
Since libc's features change over time, the config.h files can change as a
|
|
|
|
result; thus the instructions below are the same no matter whether
|
|
|
|
bootstrapping on a cross or native host. This is important: even on a
|
|
|
|
"native" host, you should bootstrap the toolchain by building from an
|
|
|
|
up-to-date source tree to a $DESTDIR using the exact same instructions.
|
|
|
|
|
|
|
|
In these notes, MACHINE is the $MACHINE of the target. These files can be
|
|
|
|
cross-generated. Though a $MACHINE_ARCH all uses the same config files, you
|
|
|
|
must pick a specific $MACHINE so that building the requisite bits below will
|
|
|
|
work.
|
|
|
|
|
|
|
|
1. Set MKMAINTAINERTOOLS=yes in mk.conf. (Needed so that src/tools/gettext
|
|
|
|
gets built, eliciting proper HAVE_*GETTEXT* defns in config.h files.)
|
|
|
|
|
|
|
|
2. Build and install a cross toolchain (via "build.sh -m MACHINE tools").
|
|
|
|
|
|
|
|
3. At top level, do "nbmake-MACHINE do-distrib-dirs obj includes".
|
|
|
|
|
2006-10-19 12:18:45 +04:00
|
|
|
4. In src/gnu/lib/crtstuff4 do "nbmake-MACHINE depend all install"
|
2006-06-02 19:33:34 +04:00
|
|
|
|
2006-11-24 02:31:00 +03:00
|
|
|
5. In src/lib/csu, src/gnu/lib/libgcc4, and src/lib, do
|
|
|
|
"nbmake-MACHINE all install".
|
2006-06-02 19:33:34 +04:00
|
|
|
|
|
|
|
6. In src/tools/gdb, do "nbmake-MACHINE obj native-gdb".
|
|
|
|
|
|
|
|
This will do a full configury in ${.OBJDIR}/.native that is a "Canadian"
|
|
|
|
cross toolchain (--build reflects the host platform, but --host and
|
|
|
|
--target are the target). The result is a tree that would build a
|
|
|
|
native-to-NetBSD GDB on a cross host, and mknative pulls glue data
|
|
|
|
from this.
|
|
|
|
|
2006-11-24 02:33:56 +03:00
|
|
|
NOTE: this step writes files under src/gnu/usr.bin/gdb6, so you
|
|
|
|
need to do it in a writable src tree!
|
|
|
|
|
2006-06-02 19:33:34 +04:00
|
|
|
7. Try out a full build using "nbmake-MACHINE" in
|
|
|
|
src/gnu/usr.bin/gdb6; the result should include a native GDB.
|
|
|
|
|
|
|
|
8. If all is well, commit the glue files and directories added to
|
|
|
|
src/gnu/usr.bin/gdb6.
|