source: trunk/third/binutils/symlink-tree @ 15803

Revision 15803, 977 bytes checked in by ghudson, 23 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r15802, which included commits to RCS files with non-trunk default branches.
  • Property svn:executable set to *
Line 
1#!/bin/sh
2# Create a symlink tree.
3#
4# Syntax: symlink-tree srcdir "ignore1 ignore2 ..."
5#
6# where srcdir is the directory to create a symlink tree to,
7# and "ignoreN" is a list of files/directories to ignore.
8
9prog=$0
10srcdir=$1
11ignore="$2"
12
13ignore_additional=". .. CVS"
14
15# If we were invoked with a relative path name, adjust ${prog} to work
16# in subdirs.
17case ${prog} in
18/*) ;;
19*) prog=../${prog} ;;
20esac
21
22# Set newsrcdir to something subdirectories can use.
23case ${srcdir} in
24/*) newsrcdir=${srcdir} ;;
25*) newsrcdir=../${srcdir} ;;
26esac
27
28for f in `ls -a ${srcdir}`; do
29  if [ -d ${srcdir}/$f ]; then
30    found=
31    for i in ${ignore} ${ignore_additional}; do
32      if [ "$f" = "$i" ]; then
33        found=yes
34      fi
35    done
36    if [ -z "${found}" ]; then
37      echo "$f          ..working in"
38      if [ -d $f ]; then true; else mkdir $f; fi
39      (cd $f; ${prog} ${newsrcdir}/$f "${ignore}")
40    fi
41  else
42    echo "$f            ..linked"
43    rm -f $f
44    ln -s ${srcdir}/$f .
45  fi
46done
47
48exit 0
Note: See TracBrowser for help on using the repository browser.