fp@1619: #!/bin/sh fp@1619: fp@1619: #------------------------------------------------------------------------------ fp@1619: # fp@1619: # EtherCAT install script fp@1619: # fp@1619: # $Id$ fp@1619: # fp@1619: # Copyright (C) 2006 Florian Pose, Ingenieurgemeinschaft IgH fp@1619: # fp@1619: # This file is part of the IgH EtherCAT Master. fp@1619: # fp@1619: # The IgH EtherCAT Master is free software; you can redistribute it fp@1619: # and/or modify it under the terms of the GNU General Public License fp@1619: # as published by the Free Software Foundation; either version 2 of the fp@1619: # License, or (at your option) any later version. fp@1619: # fp@1619: # The IgH EtherCAT Master is distributed in the hope that it will be fp@1619: # useful, but WITHOUT ANY WARRANTY; without even the implied warranty of fp@1619: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the fp@1619: # GNU General Public License for more details. fp@1619: # fp@1619: # You should have received a copy of the GNU General Public License fp@1619: # along with the IgH EtherCAT Master; if not, write to the Free Software fp@1619: # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA fp@1619: # fp@1619: # The right to use EtherCAT Technology is granted and comes free of fp@1619: # charge under condition of compatibility of product made by fp@1619: # Licensee. People intending to distribute/sell products based on the fp@1619: # code, have to sign an agreement to guarantee that products using fp@1619: # software based on IgH EtherCAT master stay compatible with the actual fp@1619: # EtherCAT specification (which are released themselves as an open fp@1619: # standard) as the (only) precondition to have the right to use EtherCAT fp@1619: # Technology, IP and trade marks. fp@1619: # fp@1619: #------------------------------------------------------------------------------ fp@1619: fp@1619: # Fetch parameters fp@1619: fp@1619: if [ $# -ne 1 ]; then fp@1619: echo "This script is called by \"make\". Run \"make install\" instead." fp@1619: exit 1 fp@1619: fi fp@1619: fp@1619: KERNEL=$1 fp@1619: fp@1619: if [ ! -d /lib/modules/$KERNEL ]; then fp@1619: echo "Kernel \"$KERNEL\" does not exist in /lib/modules!" fp@1619: exit 1 fp@1619: fi fp@1619: fp@1619: echo "EtherCAT installer - Kernel: $KERNEL" fp@1619: fp@1619: #------------------------------------------------------------------------------ fp@1619: fp@1621: # Update module dependencies fp@1619: fp@1619: echo " Building module dependencies" fp@1619: depmod fp@1619: fp@1619: #------------------------------------------------------------------------------ fp@1619: fp@1619: # Create configuration file fp@1619: fp@1619: CONFIGFILE=/etc/sysconfig/ethercat fp@1619: fp@1619: if [ -s $CONFIGFILE ]; then fp@1619: echo " Note: Using existing configuration file." fp@1619: else fp@1619: echo " Creating $CONFIGFILE" fp@1619: cp script/sysconfig $CONFIGFILE || exit 1 fp@1619: echo " Note: Please edit DEVICE_INDEX in $CONFIGFILE!" fp@1619: fi fp@1619: fp@1619: #------------------------------------------------------------------------------ fp@1619: fp@1619: # Install rc script fp@1619: fp@1619: echo " Installing startup script" fp@1619: cp script/ethercat.sh /etc/init.d/ethercat || exit 1 fp@1619: chmod +x /etc/init.d/ethercat || exit 1 fp@1619: if [ ! -L /usr/sbin/rcethercat ]; then fp@1619: ln -s /etc/init.d/ethercat /usr/sbin/rcethercat || exit 1 fp@1619: fi fp@1619: fp@1619: #------------------------------------------------------------------------------ fp@1619: fp@1619: # Install tools fp@1619: fp@1619: echo " Installing tools" fp@1619: cp script/ec_list.pl /usr/local/bin/ec_list || exit 1 fp@1619: chmod +x /usr/local/bin/ec_list || exit 1 fp@1619: fp@1619: #------------------------------------------------------------------------------ fp@1619: fp@1619: # Finish fp@1619: fp@1619: echo "Done" fp@1619: exit 0 fp@1619: fp@1619: #------------------------------------------------------------------------------