script/install.sh
branchstable-1.0
changeset 1619 0d4119024f55
child 1621 4bbe090553f7
equal deleted inserted replaced
1618:5cff10efb927 1619:0d4119024f55
       
     1 #!/bin/sh
       
     2 
       
     3 #------------------------------------------------------------------------------
       
     4 #
       
     5 #  EtherCAT install script
       
     6 #
       
     7 #  $Id$
       
     8 #
       
     9 #  Copyright (C) 2006  Florian Pose, Ingenieurgemeinschaft IgH
       
    10 #
       
    11 #  This file is part of the IgH EtherCAT Master.
       
    12 #
       
    13 #  The IgH EtherCAT Master is free software; you can redistribute it
       
    14 #  and/or modify it under the terms of the GNU General Public License
       
    15 #  as published by the Free Software Foundation; either version 2 of the
       
    16 #  License, or (at your option) any later version.
       
    17 #
       
    18 #  The IgH EtherCAT Master is distributed in the hope that it will be
       
    19 #  useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
       
    20 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
       
    21 #  GNU General Public License for more details.
       
    22 #
       
    23 #  You should have received a copy of the GNU General Public License
       
    24 #  along with the IgH EtherCAT Master; if not, write to the Free Software
       
    25 #  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
       
    26 #
       
    27 #  The right to use EtherCAT Technology is granted and comes free of
       
    28 #  charge under condition of compatibility of product made by
       
    29 #  Licensee. People intending to distribute/sell products based on the
       
    30 #  code, have to sign an agreement to guarantee that products using
       
    31 #  software based on IgH EtherCAT master stay compatible with the actual
       
    32 #  EtherCAT specification (which are released themselves as an open
       
    33 #  standard) as the (only) precondition to have the right to use EtherCAT
       
    34 #  Technology, IP and trade marks.
       
    35 #
       
    36 #------------------------------------------------------------------------------
       
    37 
       
    38 # Fetch parameters
       
    39 
       
    40 if [ $# -ne 1 ]; then
       
    41     echo "This script is called by \"make\". Run \"make install\" instead."
       
    42     exit 1
       
    43 fi
       
    44 
       
    45 KERNEL=$1
       
    46 
       
    47 if [ ! -d /lib/modules/$KERNEL ]; then
       
    48     echo "Kernel \"$KERNEL\" does not exist in /lib/modules!"
       
    49     exit 1
       
    50 fi
       
    51 
       
    52 #------------------------------------------------------------------------------
       
    53 
       
    54 # Copy files
       
    55 
       
    56 INSTALLDIR=/lib/modules/$KERNEL/kernel/drivers/net
       
    57 MODULES=(master/ec_master.ko devices/ec_8139too.ko)
       
    58 
       
    59 echo "EtherCAT installer - Kernel: $KERNEL"
       
    60 echo "  Installing modules"
       
    61 
       
    62 for mod in ${MODULES[*]}; do
       
    63     echo "    $mod"
       
    64     cp $mod $INSTALLDIR || exit 1
       
    65 done
       
    66 
       
    67 #------------------------------------------------------------------------------
       
    68 
       
    69 # Update dependencies
       
    70 
       
    71 echo "  Building module dependencies"
       
    72 depmod
       
    73 
       
    74 #------------------------------------------------------------------------------
       
    75 
       
    76 # Create configuration file
       
    77 
       
    78 CONFIGFILE=/etc/sysconfig/ethercat
       
    79 
       
    80 if [ -s $CONFIGFILE ]; then
       
    81     echo "  Note: Using existing configuration file."
       
    82 else
       
    83     echo "  Creating $CONFIGFILE"
       
    84     cp script/sysconfig $CONFIGFILE || exit 1
       
    85     echo "  Note: Please edit DEVICE_INDEX in $CONFIGFILE!"
       
    86 fi
       
    87 
       
    88 #------------------------------------------------------------------------------
       
    89 
       
    90 # Install rc script
       
    91 
       
    92 echo "  Installing startup script"
       
    93 cp script/ethercat.sh /etc/init.d/ethercat || exit 1
       
    94 chmod +x /etc/init.d/ethercat || exit 1
       
    95 if [ ! -L /usr/sbin/rcethercat ]; then
       
    96     ln -s /etc/init.d/ethercat /usr/sbin/rcethercat || exit 1
       
    97 fi
       
    98 
       
    99 #------------------------------------------------------------------------------
       
   100 
       
   101 # Install tools
       
   102 
       
   103 echo "  Installing tools"
       
   104 cp script/ec_list.pl /usr/local/bin/ec_list || exit 1
       
   105 chmod +x /usr/local/bin/ec_list || exit 1
       
   106 
       
   107 #------------------------------------------------------------------------------
       
   108 
       
   109 # Finish
       
   110 
       
   111 echo "Done"
       
   112 exit 0
       
   113 
       
   114 #------------------------------------------------------------------------------