e7e33e2136
install.sub: - fix interface grovelling, ifmedia support, allow ifmedia and link to have a "none" (-> "") answer (which lets you give nothing when a default answer is given) - allow installing more than one set at a time, including "all" as a synonym for all remaining sets - mount -o async when extracting sets makeconf.awk: - put default "libs" section at the end rather than the start, so you can put other "libs" in before this list - minor cleanup mtree.conf: - create /kern sparc install.md: - MDSETS are now "kern xbase xcomp xcontrib xfont xserver" - use /kern & kernfs (replaces dmesg) - replace grep & cut pipe lines with sed - replace grep hackery with sed hackery - grep and cut are no longer required! yay! - deal with no /usr/bin/vi -- call disklabel -i - in md_copy_kern() link the netbsd.GENERIC we got from the kern set, rather than the miniroot kernel sparc miniroot list: - no more dmesg, cut or grep sparc ramdisk changes: Makefile: - `ramdiskbin.conf' is now generated by makeconf.awk - don't use libhack's opendir, it breaks dot.profile: - don't assume terminal is `sun' - set EDITOR=ed - list: - instbin -> ramdiskbin to make `makeconf.awk' work - CRUNCHSPECIAL those special dirs - add our LIBS as necessary libhack changes: - if NOLIBHACKOPENDIR is set, don't build opendir.o
70 lines
1.3 KiB
Awk
70 lines
1.3 KiB
Awk
# $NetBSD: makeconf.awk,v 1.6 1999/06/27 12:55:58 mrg Exp $
|
|
|
|
#
|
|
# generate crunchgen(1) configuration file from `list' spec.
|
|
#
|
|
|
|
BEGIN {
|
|
printf("#\n# This file is automatically generated by `makeconf'\n");
|
|
printf("#\n\n");
|
|
}
|
|
|
|
$1 == "LIBS" || $1 == "SRCDIRS" {
|
|
$1 = tolower($1);
|
|
print;
|
|
}
|
|
|
|
($1 == "LINK" || $1 == "SYMLINK") && index($2,CBIN) {
|
|
# find basenames for inclusion in crunchgen's `prog' and `ln' directives
|
|
n = split($3, x, "/");
|
|
p = x[n];
|
|
progs[p] = NF - 3;
|
|
for (i = 4; i <= NF; i++) {
|
|
n = split($i, x, "/");
|
|
l = x[n];
|
|
links[i - 3, p] = l;
|
|
}
|
|
}
|
|
|
|
$1 == "ARGVLINK" {
|
|
# add extra `ln' entries (these don't appear in the filesystem)
|
|
n = progs[$2];
|
|
progs[$2] = ++n;
|
|
links[n, $2] = $3;
|
|
}
|
|
|
|
$1 == "CRUNCHSPECIAL" {
|
|
# collect crunchgen `special' directives
|
|
$1 = "";
|
|
specials[$0] = 1;
|
|
}
|
|
|
|
END {
|
|
# write crunchgen configuration
|
|
|
|
# default libs
|
|
printf("\nlibs -lrmt -ledit -lutil -lcurses -ltermcap -lcrypt -ll -lm -lkvm\n");
|
|
|
|
# `prog' directives; print 8 to a line
|
|
column = 0;
|
|
for (p in progs) {
|
|
if ((column++ % 8) == 0)
|
|
printf("\nprogs");
|
|
printf(" %s", p);
|
|
}
|
|
printf("\n\n");
|
|
|
|
# `ln' directives
|
|
for (p in progs) {
|
|
n = progs[p];
|
|
for (i = 1; i <= n; i++)
|
|
printf("ln %s %s\n", p, links[i,p]);
|
|
}
|
|
printf("\n\n");
|
|
|
|
# `special' directives
|
|
for (s in specials) {
|
|
printf("special %s\n", s);
|
|
}
|
|
}
|