#!/bin/sh

# no manpages. I'll build help2man (& locale-gettext) some other day

[ -z $PREPKG ] && exit 1

PACKAGE=bumblebee
VERSION=3.2.1
FILES=$(cd $(dirname $0) ; pwd)
GROUP=$PACKAGE
GID=261 # as submitted to SBo

if ! grep -q ^$GROUP: /etc/group ; then
  echo
  echo "You must have a \"$GROUP\" group to run this script"
  echo
  echo "# groupadd -g $GID $GROUP"
  echo
  exit 1
fi

mkdir -p \
  $PREPKG/{install,etc/rc.d}/

tar xf $FILES/$PACKAGE-$VERSION.tar.gz || exit 1

chmod -R \
  g-w .
chown -R \
  root:root .
cd $PACKAGE-$VERSION/
CFLAGS="-O2 -march=i486 -mtune=i686" \
CONF_DRIVER=nvidia \
CONF_DRIVER_MODULE_NVIDIA=nvidia \
CONF_LDPATH_NVIDIA=/usr/lib/nvidia-bumblebee \
CONF_MODPATH_NVIDIA=/usr/lib/nvidia-bumblebee/xorg/modules,/usr/lib/xorg/modules \
CONF_PM_METHOD=bbswitch \
  ./configure \
  --prefix=/usr \
  --docdir=/usr/doc/$PACKAGE-$VERSION \
  --mandir=/usr/man \
  --sysconfdir=/etc \
  --build=i486-slackware-linux &> configure.output || exit 1
make $MAKEJOBS &> make.output || exit 1
make DESTDIR=$PREPKG install &> make_install.output || exit 1

# idiotproofing :)
mv \
  $PREPKG/etc/bumblebee/bumblebee.conf{,.new}
mv \
  $PREPKG/etc/bumblebee/xorg.conf.nouveau{,.new}
mv \
  $PREPKG/etc/bumblebee/xorg.conf.nvidia{,.new}

cp -p \
  scripts/sysvinit/${PACKAGE}d \
  $PREPKG/etc/rc.d/rc.${PACKAGE}d.new

cp -p \
  COPYING \
  $PREPKG/usr/doc/$PACKAGE-$VERSION/

cp \
  $FILES/{doinst.sh,slack-desc} \
  $PREPKG/install/

find $PREPKG -exec file {} \; \
  | awk -F : '/ ELF / {print $1}' \
  | xargs strip -p --strip-unneeded
