diff options
Diffstat (limited to 'abs/mv-core/oss-sound/PKGBUILD.orig')
-rwxr-xr-x | abs/mv-core/oss-sound/PKGBUILD.orig | 147 |
1 files changed, 147 insertions, 0 deletions
diff --git a/abs/mv-core/oss-sound/PKGBUILD.orig b/abs/mv-core/oss-sound/PKGBUILD.orig new file mode 100755 index 0000000..e0e695b --- /dev/null +++ b/abs/mv-core/oss-sound/PKGBUILD.orig @@ -0,0 +1,147 @@ +pkgname=oss +pkgver=4.0_1016 +_pkgver=v4.0-1016 +pkgrel=14 +pkgdesc="OSS/Commercial driver" +url="http://www.opensound.com/" +license="" +depends=('glibc' 'gtk2') +makedepends=('make') +conflicts=('oss-linux') +provides=('oss-linux') +replaces=() +backup=() +#http://www.4front-tech.com/release/oss-linux-v4.0-1012-i386.tar.bz2 +install=oss.install +source=(http://www.4front-tech.com/release/oss-linux-v4.0-1016-i386.tar.bz2 install_sh.diff) +arch=('i686') + + +build() { + PREFIX=$startdir/pkg + OSSLIBDIR=$PREFIX/usr/lib/oss + + cd $startdir/src + find . -type d -exec chmod 755 '{}' ';' + patch -p0 < ../install_sh.diff || return 1 + + ## Install + cp -rp etc $PREFIX/ + cp -rp usr $PREFIX/ + cp -rp $PREFIX/usr/share/man $PREFIX/usr/ + rmdir $PREFIX/usr/share + mkdir $PREFIX/usr/lib/oss/logs + # mkdir -p $PREFIX/etc/rc.d + # install oss-linux $PREFIX/etc/rc.d/ + + mv $OSSLIBDIR/conf.tmpl $OSSLIBDIR/conf + mkdir -p $PREFIX/usr/lib + cd $PREFIX/usr/lib + ln -sf oss/lib/libOSSlib.so || return 1 + +#building modules +cd $OSSLIBDIR/build +REGPARM=REGPARM +pushd $OSSLIBDIR +rm -rf objects +ln -s objects.regparm objects +rm -rf modules +ln -s modules.regparm modules +popd + + +if ! test -f $OSSLIBDIR/objects/osscore.o +then + echo Error: OSS core module for $REGPARM kernel are not available + exit 1 +fi + +if ! test -f $OSSLIBDIR/modules/ich.o +then + echo Error: OSS driver modules for $REGPARM kernel are not available + exit 1 +fi + +echo +echo OSS build environment set up for $REGPARM kernels +BASEKERNEL=/lib/modules/2.6.26-ARCH +PKGKERNEL=$startdir/pkg$BASEKERNEL +KERNELDIR=$BASEKERNEL/build + +cp -f ../objects/osscore.o osscore_mainline.o + +ln -sf ../include/sys/*.h ../include/sys/ossddk . + +rm -f Makefile +ln -s Makefile.osscore Makefile + +if ! test -d $OSSLIBDIR/logs +then + mkdir $OSSLIBDIR/logs +fi + +echo Building module osscore + +if ! make KERNELDIR=$KERNELDIR> build.list 2>&1 +then + echo Failed to compile OSS + cat build.list + exit 2 +fi + +if ! test -d $PKGKERNEL/kernel/oss +then + mkdir -p $PKGKERNEL/kernel/oss +fi + +if ! test -d $PKGKERNEL/kernel/oss +then + echo OSS module directory $PKGKERNEL/kernel/oss does not exist. + exit 3 +fi + +if ! ld -r osscore.ko osscore_mainline.o -o $PKGKERNEL/kernel/oss/osscore.ko +then + echo Linking the osscore module failed + exit 5 +fi + +#depmod -a + +for n in ../modules/*.o +do + N=`basename $n .o` + echo Building module $N + + rm -f $N_mainline.o Makefile + + sed "s/MODNAME/$N/" < Makefile.tmpl > Makefile + ln -s $n $N_mainline.o + + if ! make KERNELDIR=$KERNELDIR > build.list 2>&1 + then + echo Compiling module $N failed + cat build.list + exit 4 + fi + + if ! ld -r $N.ko $N_mainline.o -o $PKGKERNEL/kernel/oss/$N.ko + then + echo Linking $N module failed + exit 6 + fi + + rm -f $N_mainline.o + make clean +done + +rm -f Makefile + + + + + + + + +} |