Subject: Re: road map for new immigrants?
To: None <current-users@netbsd.org>
From: der Mouse <mouse@Rodents.Montreal.QC.CA>
List: current-users
Date: 09/15/1998 09:06:03
> Same goes for the rest of the "toolchain" -- not just
> gcc/as/ld/ranlib/nm/lorder/tsort/size, but make, lex, yacc, config,
> rpcgen, and the rest of the usual suspects, too.
> Heck, I dont know if we even have a complete list of suspects.
I don't either, but I have a good start on one.
A while ago, I experimented with doing builds in a chrooted tree: build
a tree with /usr/src and a bunch of other files (cc, as, make, lex,
etc), chroot to it, and "make build".
The reason I mention this is that in the process I found a (minimal, at
the time) set of files I had to install in the chrooted tree to allow
the make build to run to completion. The set is probably no longer
correct, but it's probably a reasonably close approximation.
Given a tree (/test, say) with usr/src and nothing else in it, here's
what my notes say I needed to do:
# Non-chrooted (ie, with / being the real root)
cd /test
tar cf - -C / \
bin/cat \
bin/chmod \
bin/cp \
bin/csh \
bin/date \
bin/dd \
bin/echo \
bin/expr \
bin/hostname \
bin/ln \
bin/mv \
bin/pax \
bin/rm \
bin/sh \
bin/test \
bin/\[ \
\
dev/null \
\
usr/bin/ar \
usr/bin/as \
usr/bin/awk \
usr/bin/basename \
usr/bin/bc \
usr/bin/cap_mkdb \
usr/bin/cc \
usr/bin/cmp \
usr/bin/cpio \
usr/bin/cpp \
usr/bin/ctags \
usr/bin/cut \
usr/bin/egrep \
usr/bin/find \
usr/bin/flex \
usr/bin/g++ \
usr/bin/gencat \
usr/bin/getopt \
usr/bin/grep \
usr/bin/groff \
usr/bin/grotty \
usr/bin/install \
usr/bin/join \
usr/bin/ld \
usr/bin/lex \
usr/bin/lint \
usr/bin/lorder \
usr/bin/m4 \
usr/bin/make \
usr/bin/mkdep \
usr/bin/nm \
usr/bin/nroff \
usr/bin/paste \
usr/bin/printf \
usr/bin/ranlib \
usr/bin/rpcgen \
usr/bin/sed \
usr/bin/size \
usr/bin/sort \
usr/bin/strip \
usr/bin/tbl \
usr/bin/touch \
usr/bin/tr \
usr/bin/troff \
usr/bin/tsort \
usr/bin/uname \
usr/bin/wc \
usr/bin/which \
usr/bin/whoami \
usr/bin/xargs \
usr/bin/yacc \
\
usr/lib/libc.so.12.20 \
usr/lib/libgcc.a \
usr/lib/libgnumalloc.so.0.0 \
usr/lib/libm.so.0.1 \
usr/lib/libutil.so.4.2 \
\
usr/libexec/cpp \
usr/libexec/cc1 \
usr/libexec/cc1obj \
usr/libexec/cc1plus \
usr/libexec/ld.so \
usr/libexec/lint1 \
usr/libexec/lint2 \
\
usr/sbin/chown \
usr/sbin/mtree \
usr/sbin/pwd_mkdb \
\
usr/share/groff_font/devascii \
usr/share/mk \
usr/share/tmac \
| tar xvfp -
set -x
# the need to make usr/games is probably a bug, may no longer be needed
mkdir -p etc usr/games
cp /usr/src/etc/group etc/group
cp /usr/src/etc/master.passwd etc/master.passwd
chroot . /usr/sbin/pwd_mkdb -p /etc/master.passwd
# Chrooted to /test:
cd /usr/src/etc
DESTDIR=/ make distrib-dirs
cd /usr/src
make build
cd /usr/src/etc
DESTDIR=/ make distribution
der Mouse
mouse@rodents.montreal.qc.ca
7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B