slackbuilds_ponce/libraries/barry/barry.SlackBuild
Robby Workman 84d2168900 Various: Set perms to 0644 on all SlackBuild scripts
These will (ideally, assuming we remember when generating tarballs)
still be mode 0755 inside the tarballs, but we would prefer to have
them mode 0644 on the server.  It's probably not really important,
but just call us OCD like that.  ;-)

Signed-off-by: Robby Workman <rworkman@slackbuilds.org>
2010-06-04 01:53:53 -05:00

150 lines
4.3 KiB
Bash

#!/bin/sh -e
## Barry is a GPL C++ library for interfacing with the RIM BlackBerry
## Handheld. It comes with a command line tool for exploring the device
## and a GUI for making quick backups. This project's goal is to create
## a fully functional syncing mechanism on Linux.
## http://sourceforge.net/projects/barry/
##
## Written by "Vincent Batts <vbatts@batts.mine.nu>"
##
## opensync consideration added thanks
## to "Heinz Wiesinger <HMWiesinger@gmx.at>"
# Modified by Robby Workman <rworkman@slackbuilds.org>
PRGNAM=barry
VERSION=0.16
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
arm*) ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$( uname -m ) ;;
esac
fi
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
# If you want to use a group other than "plugdev" for barry,
# specify it on the command line as BARRY_GROUP - for example:
# BARRY_GROUP=barry ./barry.SlackBuild
BARRY_GROUP=${BARRY_GROUP:-plugdev}
# Enable opensync-plugin?
OPENSYNC=${OPENSYNC:-no}
if [ "$OPENSYNC" = "no" ]; then
opensync_opt="dis"
else
opensync_opt="en"
fi
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
chmod -R a-s,u+rw,go+r-w .
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--disable-static \
--enable-boost \
--enable-gui \
--${opensync_opt}able-opensync-plugin \
--build=$ARCH-slackware-linux
make
make install DESTDIR=$PKG
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
# Install desktop file and icon for gui
mkdir -p $PKG/usr/share/{applications,pixmaps}
cat logo/barry_logo_icon.png > $PKG/usr/share/pixmaps/barry.png
cat $CWD/barrybackup.desktop > $PKG/usr/share/applications/barrybackup.desktop
# Install ppp scripts and such
mkdir -p $PKG/etc/ppp/peers
for i in \
rogers verizon sprint o2ireland tmobileus att_cingular chinamobile kpn ; \
do \
sed "s%/etc/chatscripts/%/etc/ppp/peers/%g" ppp/barry-$i > \
$PKG/etc/ppp/peers/barry-$i ;
cat ppp/barry-$i.chat > $PKG/etc/ppp/peers/barry-$i.chat ;
done
# berry-charge conflicts with barry
mkdir -p $PKG/etc/modprobe.d
printf "blacklist berry-charge\n" > $PKG/etc/modprobe.d/barry.conf.new
# Install udev rules
mkdir -p $PKG/lib/udev/rules.d/
cat udev/10-blackberry.rules > $PKG/lib/udev/rules.d/10-blackberry.rules
cat udev/99-blackberry-perms.rules > $PKG/lib/udev/rules.d/99-blackberry-perms.rules
if [ "$BARRY_GROUP" != "plugdev" ]; then
sed -i "s/GROUP=\"plugdev\""/GROUP=\"$BARRY_GROUP\"/ \
$PKG/lib/udev/rules.d/99-blackberry-perms.rules
fi
# Install hal stuff
mkdir -p $PKG/usr/share/hal/fdi/information/10freedesktop
cat hal/fdi/information/10freedesktop/10-blackberry.fdi > \
$PKG/usr/share/hal/fdi/information/10freedesktop/10-blackberry.fdi
mkdir -p $PKG/usr/share/hal/fdi/policy/10osvendor
cat hal/fdi/policy/10osvendor/19-blackberry-acl.fdi > \
$PKG/usr/share/hal/fdi/policy/10osvendor/19-blackberry-acl.fdi
cp -a hal/hal-blackberry $PKG/usr/bin
# Install bash completion scripts
mkdir -p $PKG/etc/bash_completion.d
cat bash/bjavaloader > $PKG/etc/bash_completion.d/bjavaloader
cat bash/btool > $PKG/etc/bash_completion.d/btool
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README TODO COPYING AUTHORS NEWS ChangeLog \
$PKG/usr/doc/$PRGNAM-$VERSION
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}