The below script should be copied and pasted into your system. When executed it will download the components you need, and then ask you whether you want to build them. This method should be slightly easier than using make for each component, and can easily be tailored to other systems.

# Version 0.9a
# Author Jon Spriggs (jon@spriggs.org.uk) 
# Copyright 2008-02-28 Jon Spriggs
# Licensed under the GNU General Public License.
#
# My preferred method of distribution is via the synce wiki. Please
# make and distribute your changes at
# http://www.synce.org/moin/SynceInstallation/Source/EEE-Script

echo "The following script assumes you have the following:
1. Performed apt-get install build-essential
2. Unpacked and Installed the Linux Source rar file from Asus
3. Unpacked the linux-source-2.6.21.4-eeepc.tar.gz file in /usr/src
4. Performed make oldconfig && make in /usr/src/linux-source-2.6.21.4-eeepc
5. Linked /usr/src/linux-source-2.6.21.4-eeepc to
     /lib/modules/2.6.21.4-eeepc/build using the ln -s command
6. Performed apt-get install libmimedir-dev libxml2-dev automake1.9 \\
        python-setuptools libexpat1-dev libpopt-dev zlib1g-dev libtool \\
        pkg-config libdbus-glib-1-dev python-dev libgnet-dev libhal-dev \\
        python-pyrex python-dbus libopensync0-dev python-libxslt1

If you have done the above then you can proceed. Do you want to proceed?"

# Next code block copied (not verbatim) from http://www.ibm.com/developerworks/library/l-bashfv.html

read RESPONSE
[ -z "$RESPONSE" ] && RESPONSE="N"
case "$RESPONSE" in 
  [yY]|[yY][eE]|[yY][eE][sS])
  ;;
  *)
  echo "OK, I'll leave it for now then..."
  exit 1
  ;;
esac

ftn_GetAndUnpack()
{
  if [ ! -d $1 ]; then
    rm -f $1.tar.gz
    wget http://downloads.sourceforge.net/synce/$1.tar.gz >/dev/null
    tar xfz $1.tar.gz
    rm -f $1.tar.gz
  fi
}

ftn_ConfigureMakeInstall()
{
  echo "$1 - Do you want to install this module? Answering no proceeds to the next module."
  read RESPONSE
  [ -z "$RESPONSE" ] && RESPONSE="N"
  case "$RESPONSE" in 
    [yY]|[yY][eE]|[yY][eE][sS])
      cd $1
      make clean
      ./configure
      ftn_Proceed
      make
      ftn_Proceed
      make install
      ftn_Proceed
      cd ..
      ;;
    *)
      echo "OK, I'll leave it for now then..."
      ;;
  esac
}

ftn_Proceed()
{
  echo "Were you happy with this text? Answering no exits this script."
  read RESPONSE
  [ -z "$RESPONSE" ] && RESPONSE="N"
  case "$RESPONSE" in 
    [yY]|[yY][eE]|[yY][eE][sS])
      ;;
    *)
      echo "OK, I'll leave it for now then..."
      exit 1
      ;;
  esac
}

mkdir -p /usr/src/synce
cd /usr/src/synce

ftn_GetAndUnpack libsynce-0.11
ftn_GetAndUnpack librapi2-0.11
ftn_GetAndUnpack odccm-0.11
ftn_GetAndUnpack usb-rndis-lite-0.11
ftn_GetAndUnpack librra-0.11
ftn_GetAndUnpack librtfcomp-1.1
ftn_GetAndUnpack wbxml2-0.9.2+svn49synce
ftn_GetAndUnpack pywbxml-0.1
ftn_GetAndUnpack sync-engine-0.11

echo "usb-rndis-lite-0.11 - Do you want to install this module? Answering no finishes this script."
read RESPONSE
[ -z "$RESPONSE" ] && RESPONSE="N"
case "$RESPONSE" in 
  [yY]|[yY][eE]|[yY][eE][sS])
    cd usb-rndis-lite-0.11
    make
    sh clean.sh
    make install
    cd ..
    ;;
  *)
    echo "OK, I'll leave it for now then..."
    exit 1
    ;;
esac

ftn_ConfigureMakeInstall libsynce-0.11
ftn_ConfigureMakeInstall librapi2-0.11
ftn_ConfigureMakeInstall odccm-0.11
ftn_ConfigureMakeInstall librra-0.11
ftn_ConfigureMakeInstall librtfcomp-1.1
ftn_ConfigureMakeInstall wbxml2-0.9.2+svn49synce
ftn_ConfigureMakeInstall pywbxml-0.1

# Bloomin' typical - there's always one which doesn't work the way you expect it to!

echo "sync-engine-0.11 - Do you want to install this module? Answering no finishes this script."
read RESPONSE
[ -z "$RESPONSE" ] && RESPONSE="N"
case "$RESPONSE" in 
  [yY]|[yY][eE]|[yY][eE][sS])
    cd sync-engine-0.11
    python setup.py build
    ftn_Proceed
    python setup.py install
    ftn_Proceed
    synce-install-plugins.py
    ftn_Proceed
    mkdir -p ~/.synce
    cp -i config/config.xml ~/.synce
    cd ..
    ;;
  *)
    echo "OK, I'll leave it for now then..."
    exit 1
    ;;
esac

SynceInstallation/Source/EEE-Script (last edited 2008-07-18 07:59:28 by JonTheNiceGuy)