summaryrefslogtreecommitdiff
path: root/setup/FreeBSD/oss/build/install.sh
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2013-05-03 21:08:42 +0400
committerIgor Pashev <pashev.igor@gmail.com>2013-05-03 21:08:42 +0400
commit1058def8e7827e56ce4a70afb4aeacb5dc44148f (patch)
tree4495d23e7b54ab5700e3839081e797c1eafe0db9 /setup/FreeBSD/oss/build/install.sh
downloadoss4-upstream.tar.gz
Imported Upstream version 4.2-build2006upstream/4.2-build2006upstream
Diffstat (limited to 'setup/FreeBSD/oss/build/install.sh')
-rw-r--r--setup/FreeBSD/oss/build/install.sh75
1 files changed, 75 insertions, 0 deletions
diff --git a/setup/FreeBSD/oss/build/install.sh b/setup/FreeBSD/oss/build/install.sh
new file mode 100644
index 0000000..872d43f
--- /dev/null
+++ b/setup/FreeBSD/oss/build/install.sh
@@ -0,0 +1,75 @@
+#!/bin/sh
+
+if test -f /etc/oss.conf
+then
+ . /etc/oss.conf
+else
+ OSSLIBDIR=/usr/lib/oss
+fi
+
+rm -f osscore_mainline.o
+ln -s osscore.lib osscore_mainline.o
+
+rm -f Makefile
+ln -s Makefile.osscore Makefile
+
+echo Compiling module osscore
+
+if ! make > compile.list 2>&1
+then
+ echo Compiling osscore module failed
+ cat compile.list
+ exit 1
+fi
+
+if ! test -d ../modules
+then
+ mkdir ../modules
+fi
+
+if ! test -d ../logs
+then
+ mkdir ../logs
+fi
+
+mv osscore.ko ../modules/
+make clean > /dev/null 2>&1
+
+for n in ../objects/*.o
+do
+ N=`basename $n .o`
+
+ rm -f $N"_mainline.o"
+ ln -s $n $N"_mainline.o"
+
+ rm -f Makefile
+ sed "s/MODNAME/$N/g" < Makefile.tmpl > Makefile
+
+ echo Compiling module $N
+
+ if ! make > compile.list 2>&1
+ then
+ echo Compiling module $N failed
+ cat compile.list
+ exit 2
+ fi
+
+ mv $N.ko* ../modules/
+ make clean > /dev/null 2>&1
+ rm -f Makefile
+done
+
+if ! test -f $OSSLIBDIR/etc/installed_drivers
+then
+ echo "-----------------------------"
+ /usr/sbin/ossdetect -v
+ echo "-----------------------------"
+ echo ""
+fi
+
+if test ! -f $OSSLIBDIR/etc/userdefs
+then
+ echo "autosave_mixer yes" > $OSSLIBDIR/etc/userdefs
+fi
+
+exit 0