diff options
author | Eric Hameleers <alien@slackware.com> | 2007-03-31 18:14:49 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2007-03-31 18:14:49 +0000 |
commit | ca26a9774ed58bc32f65e30edc1de2dd8ecd591a (patch) | |
tree | 0619ab3df9b0ce25d3c635d01b3be7b0d6352fcd /bcm5700 | |
parent | 51daf37218c5dd3b8477541f93592977ef3c722e (diff) | |
download | asb-ca26a9774ed58bc32f65e30edc1de2dd8ecd591a.tar.gz asb-ca26a9774ed58bc32f65e30edc1de2dd8ecd591a.tar.xz |
New SlackBuild for new release (works with kernel >= 2.6.18)
Diffstat (limited to 'bcm5700')
-rwxr-xr-x | bcm5700/build/bcm5700.SlackBuild | 104 |
1 files changed, 43 insertions, 61 deletions
diff --git a/bcm5700/build/bcm5700.SlackBuild b/bcm5700/build/bcm5700.SlackBuild index ffcac56e..ebf7e4ea 100755 --- a/bcm5700/build/bcm5700.SlackBuild +++ b/bcm5700/build/bcm5700.SlackBuild @@ -1,5 +1,5 @@ #!/bin/sh -# +# $Id$ # ----------------------------------------------------------------------------- # # Slackware SlackBuild script @@ -9,29 +9,37 @@ # URL: http://www.broadcom.com/drivers/downloaddrivers.php # Needs: # Changelog: -# 8.1.55-1: 09/Aug/2005 by Eric Hameleers <alien@sox.homeip.net> +# 8.1.55-1: 09/Aug/2005 by Eric Hameleers <alien@sox.homeip.net> # * Initial build. +# 8.3.14-1: 30/mar/2007 by Eric Hameleers <alien@slackware.com> +# * Upgrade needed for new 2.6 kernels... # -# Run 'sh SlackBuild --cleanup' to build a Slackware package. +# Run 'sh bcm5700.SlackBuild --cleanup' to build a Slackware package. # The package (.tgz) plus descriptive .txt file are created in /tmp . # Install using 'installpkg'. # # ----------------------------------------------------------------------------- -# --- INIT --- -# Set initial variables: +# Where do we look for sources? CWD=`pwd` -if [ "$TMP" = "" ]; then - TMP=/tmp -fi +SRCDIR=`dirname $0` +[ "${SRCDIR:0:1}" == "." ] && SRCDIR=${CWD}/${SRCDIR} + +# Place to build (TMP) package (PKG) and output (OUTPUT) the program: +TMP=${TMP:-/tmp/build} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} PRGNAM=bcm5700 -VERSION=8.1.55 +VERSION=8.3.14 ARCH=${ARCH:-i486} BUILD=1 -KVERSION=${KVERSION:-`/bin/uname -r`} -KSRC=${KSRC:-/lib/modules/${KVERSION}/build} +DOCS="DISTRIB.TXT LICENSE README.TXT RELEASE.TXT" + +KVER=${KVER:-`/bin/uname -r`} +KSRC=${KSRC:-/lib/modules/${KVER}/build} +PATCHLEVEL=`echo $KVER | cut -f 2 -d '.'` if [ "$ARCH" = "i386" ]; then SLKCFLAGS="-O2 -march=i386 -mcpu=i686" @@ -46,13 +54,19 @@ elif [ "$ARCH" = "athlon-xp" ]; then fi -PKG=$TMP/package-$PRGNAM - if [ ! -d $TMP/tmp-$PRGNAM ]; then mkdir -p $TMP/tmp-$PRGNAM # location to build the source +else + # Remove the remnants of previous build: + rm -rf $TMP/tmp-$PRGNAM/* fi if [ ! -d $PKG ]; then - mkdir -p $PKG # place for the package to be built + mkdir -p $PKG # place for the package to be built +else + rm -rf $PKG/* # We always erase old package's contents: +fi +if [ ! -d $OUTPUT ]; then + mkdir -p $OUTPUT # place for the package to be saved fi @@ -62,24 +76,17 @@ echo "++" echo "|| $PRGNAM-$VERSION" echo "++" -rm -rf $PKG/* - -cd $PKG - -# Explode the package framework: -if [ -f $CWD/_$PRGNAM.tar.gz ]; then - explodepkg $CWD/_$PRGNAM.tar.gz -fi cd $TMP/tmp-$PRGNAM - - -# --- TARBALL EXTRACTION,PATCH,MODIFY --- - echo "Extracting the program tarball for $PRGNAM..." -tar -xzvf $CWD/${PRGNAM}-${VERSION}.tar.gz +tar -xzvf $SRCDIR/${PRGNAM}-${VERSION}.tar.gz cd ${PRGNAM}-${VERSION}/src +# Patch Makefile so we can compile for more kernels than just the running one: +patch -p2 < $SRCDIR/bcm5700_Makefile.diff 2>&1 | tee $OUTPUT/patch-${PRGNAM}.log +# Patch to accommodate changes in the 2.6.18 kernel: +[ -f $KSRC/include/linux/utsrelease.h ] && \ + patch -p2 < $SRCDIR/bcm5700_kernel2.6.18.diff 2>&1 | tee -a $OUTPUT/patch-${PRGNAM}.log chown -R root.root * find . -perm 777 -exec chmod 755 {} \; @@ -90,19 +97,18 @@ find . -perm 777 -exec chmod 755 {} \; echo Building ... CFLAGS="$SLKCFLAGS" \ -make PREFIX=$PKG 2>&1 | tee $CWD/make-${PRGNAM}.log +make KVER=$KVER KSRC=$KSRC PREFIX=$PKG 2>&1 | tee $OUTPUT/make-${PRGNAM}.log # Install all the needed stuff to the package dir mkdir -p $PKG/usr/man/man4 -mkdir -p $PKG/lib/modules/${KVERSION}/kernel/drivers/net +mkdir -p $PKG/lib/modules/${KVER}/kernel/drivers/net -PATCHLEVEL=`uname -r | cut -f 2 -d '.'` if [ $PATCHLEVEL -eq 6 ]; then - cp bcm5700.ko $PKG/lib/modules/${KVERSION}/kernel/drivers/net/ + cp bcm5700.ko $PKG/lib/modules/${KVER}/kernel/drivers/net/ else gzip -c9 bcm5700.o > \ - $PKG/lib/modules/${KVERSION}/kernel/drivers/net/bcm5700.o.gz + $PKG/lib/modules/${KVER}/kernel/drivers/net/bcm5700.o.gz fi gzip -c9 bcm5700.4 > $PKG/usr/man/man4/bcm5700.4.gz @@ -110,48 +116,24 @@ cd .. # --- DOCUMENTATION --- -DOCS="DISTRIB.TXT LICENSE README.TXT RELEASE.TXT" - mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION -cp -a $DOCS \ - $PKG/usr/doc/$PRGNAM-$VERSION +cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION chmod -R a-w $PKG/usr/doc/$PRGNAM-$VERSION/* -# Compress the man page(s) -gzip -9f $PKG/usr/man/*/* -gzip -9f $PKG/usr/man/*/*/* - -# Strip binaries -( cd $PKG - find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null - find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -) - - -# --- OWNERSHIP, RIGHTS --- - -chmod -R o-w $PKG -chown root:bin $PKG/usr/bin/* $PKG/usr/sbin/* $PKG/bin/* $PKG/sbin/* \ - $PKG/usr/X11R6/bin/* $PKG/opt/kde/bin/* 2>/dev/null - # --- PACKAGE DESCRIPTION --- mkdir -p $PKG/install -cat $CWD/slack-desc > $PKG/install/slack-desc -if [ -f $CWD/doinst.sh ]; then - cat $CWD/doinst.sh > $PKG/install/doinst.sh -fi +cat $SRCDIR/slack-desc > $PKG/install/slack-desc # --- BUILDING --- # Build the package: cd $PKG -makepkg --linkadd y --chown n $TMP/${PRGNAM}-${VERSION}_${KVERSION}-${ARCH}-${BUILD}.tgz \ - 2>&1 | tee $CWD/makepkg-${PRGNAM}.log -(cd $TMP && md5sum ${PRGNAM}-${VERSION}_${KVERSION}-${ARCH}-${BUILD}.tgz > ${PRGNAM}-${VERSION}_${KVERSION}-${ARCH}-${BUILD}.tgz.md5) -cat $CWD/slack-desc | grep "^${PRGNAM}" > $TMP/${PRGNAM}-${VERSION}_${KVERSION}-${ARCH}-${BUILD}.txt +makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${VERSION}_$(echo $KVER | tr - _)-${ARCH}-${BUILD}.tgz 2>&1 | tee $OUTPUT/makepkg-${PRGNAM}.log +(cd $OUTPUT && md5sum ${PRGNAM}-${VERSION}_$(echo $KVER | tr - _)-${ARCH}-${BUILD}.tgz > ${PRGNAM}-${VERSION}_$(echo $KVER | tr - _)-${ARCH}-${BUILD}.tgz.md5) +cat $PKG/install/slack-desc | grep "^${PRGNAM}" > $OUTPUT/${PRGNAM}-${VERSION}_$(echo $KVER | tr - _)-${ARCH}-${BUILD}.txt # --- CLEANUP --- |