#!/bin/sh # Slackware build script for rt3090 # Written by Dimitris Tzemos (djemos@slackel.gr) PRGNAM=rt3090 VERSION=2.4.0.4_WiFiBTCombo_DPO BUILD=${BUILD:-1} TAG=${TAG:-dj} URLSRCNAM=2010_1217_RT3090_LinuxSTA_V SRCNAM=20101216_RT3090_LinuxSTA_V file=$URLSRCNAM$VERSION.zip SOURCES="http://people.salixos.org/djemos/salix-13.1/rt3090/$file" KERNEL=${KERNEL:-$(uname -r)} CHIPSETS=${CHIPSETS:-"3090"} if [ -z "$ARCH" ]; then case "$( uname -m )" in i?86) ARCH=i486 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac fi CWD=$(pwd) TMP=${TMP:-$CWD/src} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-$CWD} # Environment variables that aren't exported never survive recursive make calls. export KERNEL set -e if [ ! -e $CWD/$file ]; then wget $SOURCES fi rm -rf $PKG mkdir -p $TMP $PKG cd $TMP rm -rf $SRCNAM$VERSION unzip $CWD/$URLSRCNAM$VERSION.zip cd $SRCNAM$VERSION chown -R root:root . find . \ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ -exec chmod 755 {} \; -o \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; # Fixup a few things in various places patch -p1 < $CWD/patches/config.mk.diff patch -p1 < $CWD/patches/Makefile.diff patch -p1 < $CWD/patches/kill_tftpboot_creation.diff patch -p1 < $CWD/patches/Makefile.6.diff #patch -p1 < $CWD/patches/fix-rt3090.patch for CHIPSET in $(printf $CHIPSETS | tr , \ ); do echo "Working on $CHIPSET" ; sleep 5 export CHIPSET=$CHIPSET make make install DESTDIR=$PKG unset CHIPSET done find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -a \ README_STA_pci iwpriv_usage.txt sta_ate_iwpriv_usage.txt \ $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.Slackbuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.Slackbuild mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/doinst.sh > $PKG/install/doinst.sh for FILE in $(find $PKG/etc/rt3090 -name "*.dat"); do mv $FILE $FILE.new printf "config $(printf $FILE | sed "s,$PKG/,,").new\n" >> $PKG/install/doinst.sh done mkdir -p $PKG/etc/modprobe.d cp $CWD/ralink.conf $PKG/etc/modprobe.d cd $PKG ln -sf /etc/rt3090 etc/Wireless /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-${VERSION}_linux${KERNEL}-$ARCH-$BUILD$TAG.${PKGTYPE:-txz} cd $OUTPUT/ md5sum $PRGNAM-${VERSION}_linux${KERNEL}-$ARCH-$BUILD$TAG.${PKGTYPE:-txz} > $PRGNAM-${VERSION}_linux${KERNEL}-$ARCH-$BUILD$TAG.${PKGTYPE:-md5} mkdir -p $OUTPUT/binaries mv $PRGNAM-${VERSION}_linux${KERNEL}-$ARCH-$BUILD$TAG.${PKGTYPE:-txz} $PRGNAM-${VERSION}_linux${KERNEL}-$ARCH-$BUILD$TAG.${PKGTYPE:-md5} $OUTPUT/binaries