Mercurial > hg > octave-lyh
view src/mk-oct-links @ 5210:996a08a3eb06 ss-2-9-0
[project @ 2005-03-15 20:46:03 by jwe]
author | jwe |
---|---|
date | Tue, 15 Mar 2005 20:46:03 +0000 |
parents | 02fcb550f20c |
children | 4c8a2e4e0717 |
line wrap: on
line source
#! /bin/sh -e # Create additional links to .oct files that define more than one # function. # If the first arg is -p, only print the links we need to make. # The first non-option arg is taken as the directory where the .oct # files are installed. The remaining arguments should be the list of # .df files corresponding to the source files that were used to # create the .oct files. SED=${SED:-'sed'} print_only=false if [ $1 = "-p" ]; then print_only=true shift fi links_dir=$1 shift for f in "$@"; do base=`basename $f | $SED 's/\.df$//'` fcns=`grep '^ *XDEFUN_DLD_INTERNAL' $f |\ $SED -e 's/XDEFUN_DLD_INTERNAL *( *//' -e 's/ *,.*$//' |\ sort -u` if [ -n "$fcns" ]; then for n in $fcns; do if [ "$n" = "$base" ]; then true else if $print_only; then echo $base.oct $n.oct else echo "creating link $n.oct -> $base.oct" ( cd $links_dir; rm -f $n.oct; ln $base.oct $n.oct ) fi fi done fi done exit $?