1 #!/bin/sh
   2 #
   3 # CDDL HEADER START
   4 #
   5 # The contents of this file are subject to the terms of the
   6 # Common Development and Distribution License (the "License").
   7 # You may not use this file except in compliance with the License.
   8 #
   9 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  10 # or http://www.opensolaris.org/os/licensing.
  11 # See the License for the specific language governing permissions
  12 # and limitations under the License.
  13 #
  14 # When distributing Covered Code, include this CDDL HEADER in each
  15 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  16 # If applicable, add the following below this CDDL HEADER, with the
  17 # fields enclosed by brackets "[]" replaced with your own identifying
  18 # information: Portions Copyright [yyyy] [name of copyright owner]
  19 #
  20 # CDDL HEADER END
  21 #
  22 
  23 #
  24 # Copyright 2002 Sun Microsystems, Inc.  All rights reserved.
  25 # Use is subject to license terms.
  26 #
  27 
  28 error=no
  29 while read dest
  30 do
  31         if [ -d $dest ]
  32         then
  33                 echo "$dest"
  34                 rmdir $dest || error=yes
  35         elif [ -f $dest ]
  36         then
  37                 echo "Modifying $dest"
  38 
  39                 # Strip PKG_INSTALL_ROOT from dest if installation is to an
  40                 # alternate root.
  41 
  42                 if [ -n "$PKG_INSTALL_ROOT" -a "$PKG_INSTALL_ROOT" != "/" ]; then
  43                         client_dest=`echo $dest | \
  44                                 /usr/bin/nawk -v rootdir="$PKG_INSTALL_ROOT" '{
  45                                     { print substr($0, length(rootdir)+1)} }'`
  46                         savepath=$PKGSAV/build${client_dest}
  47                 else
  48                         savepath=$PKGSAV/build${dest}
  49                 fi
  50 
  51                 chmod +x $savepath
  52                 if $savepath remove > /tmp/$$build
  53                 then
  54                         if [ ! -s /tmp/$$build ]
  55                         then
  56                                 rm -f $dest
  57                         else
  58                                 cp /tmp/$$build $dest || error=yes
  59                         fi
  60                 else
  61                         error=yes
  62                 fi
  63                 rm -f /tmp/$$build
  64         else
  65                 [ -r $dest ] && echo "$dest"
  66                 rm -f $dest || error=yes
  67         fi
  68 done
  69 [ "$error" = yes ] &&
  70         exit 2
  71 exit 0