README revision 1.3
1$NetBSD: README,v 1.3 2009/01/13 17:52:32 jmmv Exp $
2
3This directory contains Makefile fragments that will build all of the
4NetBSD libraries in 32-bit mode and install them into /usr/lib/<arch>
5and also install a /usr/libexec/ld.elf_so-<arch>.
6
7This is current only supported for the amd64 and sparc64 platforms,
8where <arch> is "i386" or "sparc" respectively.  (It could be used to
9build MIPS o32 libraries on n32 system, but not both n32 and o32 on
10a n64 system.  It only supports one extra target.)
11
12
13Most of the makefiles here were built with the "build-makefiles" script.
14The exceptions are lib/csu/Makefile and ld.elf_so/Makefile.
15
16
17The method used is the:
18	- evaluate some local variables
19	- switch .CURDIR
20	- include original Makefile,
21	- evaluate some variables
22	- switch .CURDIR back
23that is used by crunchgen to build eg, installer media or /rescue.
24
25
26
27TODO:
28	- some yacc issue -- libc, libipsec and libpcap need "make" run
29	  to generate headers properly, otherwise it complains about
30	  no way to get to foo.h.  this is currently hacked by putting
31	  a rule "foo.h: foo.c" in the (generated) makefiles
32	- there's an ugly hack to make libpam build correctly again the
33	  right libc.  ld.elf_so has a similar (but less ugly hack)
34	- not sure that /usr/lib/{i386,sparc}{,/i18n} are created 
35	  properly yet
36
37Future work
38
39Ideally this should be able to handle any number of compat targets.
40Perhaps using a "force MAKEOBJDIR, and run-run make" solution will
41work, but my initial attempts got me no where.  If not, perhaps
42build-makefiles could be expanded to be used at run-time in such
43a per-compat target obj-dir.
44