Meeting time Tuesday, 24 May 2005, 1300h - 1500h
Initial notes by
DanielAllen
Present: Dave Gawley, Jim Johnson,
DanielAllen, Chris Calzonetti
Dave expanded upon the list of steps in
XhierOneZeroOne16May2005. See that list for expansions.
What order do we need to add xhier packages, once we have compiled arch_param?
Use Ray's List of Packages (~rbutterw/Packages).
philosophical note: Dave suggests you don't need all the user IDs listed, because if a package wants users it should, by design, install users itself. So for now, Dave says don't add the users.
The file starts off:
# Before anything else:
# Create these userids:
# accounts
# console
# daemon
# jqpublic
# operator
# opnsutil
# Create these groups if they aren't already there:
# accounts
# daemon
# nobody
# none
# operator
# opcons
# source
# Install these programs and these libraries:
# mfcf-basics/arch_param (don't forget include/mfcf/config.h)
# mfcf-misc/libcfix
# mfcf-misc/libuw
# Do these packages next:
libmfcf
login_dev
accounts_dev
lpr_dev
nuwdir_dev
termcap
nettools_dev
# Other things that will eventually be needed:
# aceclient-2.1uw
# cracklib
# gnu *
# gzip
# secure-comm
# secure-comm_dev *
# Then xh-make-links
# Then do these:
mfcf-basics
mfcf-misc
mfcf-accounting
console
filetools
games
graveyard
imake
jqpublic
lockfile
nuwdir
op-comm
operations
script
security
setpw
shelltools
tcsh
vim-6.1
Three general tips:
- neat U of W tool: bury/exhume. They're useful for temporarily backing up a file, with the proviso that the backed up version will automatically be restored in less than a week. see manpages.)
- When do you need to xh-install a package? If you're editing a data-file, you don't need to. If you're editing a config file, you do.
- on a new machine machinename, you may want an xhier package named local_machinename. it should do anything specific that only gets run on that machine.
following dave's notes...
insert here: notes from dave's script, which I haven't yet gotten from Dave...
grab source for arch_param.
the only file we actually need is arch_param.c; the rest can be deleted, since cc (gcc actually) does the right things.
make arch_param
./arch_param >/tmp/param.h
diff /tmp/param.h /usr/include/param.h (which was the version we already installed from debian31)
there are lots of changes, all which seem to make sense. ints are twice as long, etc.
this is part of libmfcf, which is ray's area of expertise; if you don't understand what you're seeing here, ask ray.
turns out the compilation params we want are actually:
cc -I../Include arch_param.c -o arch_param
...so this will work before we've run xh-first-time. The -I is necessary for that.
next, according to Ray's list, build libcfix and libuw.
libcfix: is part of mfcf-misc. Which has been installed by
_?_ (sorry, didn't get that).
to build this, we want a makefile that's close to our system. Since it's a much more complicated package:
First send the source to the arch which is closest to ours;
capo:
xh-sdist -h debian31.cscf /usr/source/mfcf-misc/libcfix
debian31:
cd /usr/source/TEMP-CACHE/mfcf-misc/libcfix
xh-make -n
will produce the #xh-Makefile. which we need for xh-make.
try xh-sdist? xh-sdist -h ubuntu-x86-64.cscf /usr/source/TEMP-CACHE/mfcf-misc/libcfix -- looks like it works, but it puts it into a sub-sub-dir TEMP-CACHE/TEMPCACHE.
tar cf - mfcf-misc | rsh ubuntu5-x86-64.cscf "cd /usr/source/TEMP-CACHE; tar xvfBp -
vi #xh-Makefile
is there a -I../Include? yes. good.
need to update /usr/include/mfcf: config.h and param.h (if necessary)
config.h changed 32 to 64.
make -f \#xh-Makefile all
make -f \#xhMakefile install <-- hm, that required bury...
for people who are truly bootstrapping, they'll need to edit the makefile to replace 'bury' with 'echo' in the makefile to make it work.
install <-- hm, it required 'wipcheck'. get rid of wipcheck.
make -f succeeded! next up is libpw.
(noted: Future directions for another day:
- how to make a package out of a GNU package?
- how to make a package from X11's imake?
These are very standard problems to solve...)
--
DanielAllen - 27 May 2005