5
if which gawk >/dev/null
7
TXT2MAN=$SRCDIR/setup/txt2man
9
echo "No gawk found. Using lesser replacement" >&2
10
cc -o txt2man origdir/setup/txt2man.c
18
mkdir prototype/etc/rc.d
20
mkdir prototype/usr/bin
21
mkdir prototype/usr/sbin
22
mkdir -p prototype/$OSSLIBDIR
23
mkdir prototype/$OSSLIBDIR/etc
24
mkdir prototype/$OSSLIBDIR/lib
25
mkdir prototype/$OSSLIBDIR/include
26
mkdir prototype/$OSSLIBDIR/include/internals
27
mkdir prototype/$OSSLIBDIR/include/sys
28
mkdir prototype/$OSSLIBDIR/modules
29
mkdir prototype/$OSSLIBDIR/objects
30
mkdir prototype/usr/share
31
mkdir prototype/usr/share/man
32
mkdir prototype/usr/share/man/man1
33
mkdir prototype/usr/share/man/man7
34
mkdir prototype/usr/share/man/man8
35
mkdir prototype/$OSSLIBDIR/conf
37
echo "OSSLIBDIR=$OSSLIBDIR" > prototype/etc/oss.conf
39
# Regenerating the config file templates
41
if ! cc -o /tmp/confgen ./setup/FreeBSD/confgen.c
43
echo Building confgen failed
47
if ! /tmp/confgen prototype/$OSSLIBDIR/conf $OSSLIBDIR/conf kernel/drv/* kernel/nonfree/drv/*
49
echo Running confgen failed
55
cp -r $SRCDIR/setup/FreeBSD/oss/* prototype/$OSSLIBDIR/
56
cp $SRCDIR/kernel/OS/FreeBSD/wrapper/bsddefs.h prototype/$OSSLIBDIR/build/
58
cp $SRCDIR/include/*.h prototype/$OSSLIBDIR/include/sys/
59
cp $SRCDIR/lib/libOSSlib/midiparser.h prototype/$OSSLIBDIR/include/
60
cp kernel/framework/include/timestamp.h kernel/framework/include/local_config.h $SRCDIR/kernel/framework/include/*_core.h $SRCDIR/kernel/framework/include/ossddk/*.h prototype/$OSSLIBDIR/include/internals
61
cp kernel/framework/include/ossddk/oss_limits.h prototype/$OSSLIBDIR/include/internals
63
ld -r -o prototype/$OSSLIBDIR/build/osscore.lib target/objects/*.o
67
for n in target/modules/*.o
70
echo Check devices for $N
71
grep "^$N[ ]" ./devices.list >> devlist.txt
74
(cd target/bin; rm -f ossrecord; ln -s ossplay ossrecord)
75
cp target/modules/*.o prototype/$OSSLIBDIR/objects
76
cp target/build/*.c prototype/$OSSLIBDIR/build/
77
cp target/bin/* prototype/usr/bin/
78
cp target/sbin/* prototype/usr/sbin/
79
cp $SRCDIR/setup/FreeBSD/sbin/* prototype/usr/sbin/
80
cp $SRCDIR/setup/FreeBSD/etc/rc.d/oss prototype/etc/rc.d
81
cp lib/libOSSlib/libOSSlib.so prototype/$OSSLIBDIR/lib
83
cp devlist.txt prototype/$OSSLIBDIR/etc/devices.list
85
if test -d kernel/nonfree
87
rm -f $SRCDIR/devlists/FreeBSD
88
cp devlist.txt $SRCDIR/devlists/FreeBSD
91
# Generate Man pages for commands
95
$TXT2MAN -t "$CMD" -v "User Commands" -s 1 cmd/$CMD/$CMD.man | gzip -9 > prototype/usr/share/man/man1/$CMD.1.gz
99
for i in target/sbin/*
102
if test -f cmd/$CMD/$CMD.man
104
$TXT2MAN -t "$CMD" -v "System Administration Commands" -s 8 cmd/$CMD/$CMD.man | gzip -9 > prototype/usr/share/man/man8/$CMD.8.gz
109
for i in $SRCDIR/misc/man1m/*.man
112
$TXT2MAN -t "$CMD" -v "OSS System Administration Commands" -s 1 $i | gzip -9 > prototype/usr/share/man/man1/$N.1.gz
115
$TXT2MAN -t "ossdetect" -v "User Commands" -s 8 os_cmd/FreeBSD/ossdetect/ossdetect.man | gzip -9 > prototype/usr/share/man/man8/ossdetect.8.gz
118
for n in target/modules/*.o
121
ld -r -o prototype/$OSSLIBDIR/$MODULES/$N.o $n
122
echo Check devices for $N
123
grep "^$N[ ]" ./devices.list >> devlist.txt
125
rm -f /tmp/ossman.txt
127
if test -f $SRCDIR/kernel/drv/$N/$N.man
129
sed "s:CONFIGFILEPATH:$OSSLIBDIR/conf:g" < $SRCDIR/kernel/drv/$N/$N.man > /tmp/ossman.txt
130
$TXT2MAN -t "$CMD" -v "OSS Devices" -s 7 /tmp/ossman.txt|gzip -9 > prototype/usr/share/man/man7/$N.7.gz
132
if test -f $SRCDIR/kernel/nonfree/drv/$N/$N.man
134
sed "s:CONFIGFILEPATH:$OSSLIBDIR/conf:g" < $SRCDIR/kernel/nonfree/drv/$N/$N.man > /tmp/ossman.txt
135
$TXT2MAN -t "$CMD" -v "OSS Devices" -s 7 $SRCDIR/kernel/nonfree/drv/$N/$N.man|gzip -9 > prototype/usr/share/man/man7/$N.7.gz
140
sed "s:CONFIGFILEPATH:$OSSLIBDIR/conf:g" < $SRCDIR/kernel/drv/osscore/osscore.man > /tmp/ossman.txt
141
$TXT2MAN -t "osscore" -v "OSS Devices" -s 7 /tmp/ossman.txt|gzip -9 > prototype/usr/share/man/man7/osscore.7.gz
142
rm -f /tmp/ossman.txt
144
cp .version prototype/$OSSLIBDIR/version.dat
147
if test -f $SRCDIR/4front-private/osslic.c
149
cc -o prototype/usr/sbin/osslic -Isetup -Ikernel/nonfree/include -Ikernel/framework/include -Iinclude -Ikernel/OS/FreeBSD -I$SRCDIR $SRCDIR/4front-private/osslic.c
150
strip prototype/usr/sbin/osslic
152
BITS=3 # Default to 32 bit ELF format
153
if test "`uname -m` " = "amd64 "
155
BITS=6 # Use 64 bit ELF format
158
prototype/usr/sbin/osslic -q -u -$BITS./prototype/$OSSLIBDIR/build/osscore.lib
162
if test -f 4front-private/ossupdate.c
165
cc -I. 4front-private/ossupdate.c -s -o prototype/usr/sbin/ossupdate
168
sh $SRCDIR/setup/build_common.sh $SRCDIR $OSSLIBDIR
170
chmod 700 prototype/usr/sbin/*
171
chmod 755 prototype/usr/bin/*
172
chmod 700 prototype/$OSSLIBDIR
174
(cd prototype;ls usr/sbin/* usr/bin/* etc/* usr/share/man/man*/*) > prototype/$OSSLIBDIR/sysfiles.list