Changeset 1367


Ignore:
Timestamp:
May 30, 2009 8:45:32 PM (11 years ago)
Author:
bradbell
Message:

add propset Id key set on for each modified file

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/svn_add_id.sh

    r1366 r1367  
    1 # ! /bin/bash
     1#! /bin/bash
    22# $Id$
    3 # -----------------------------------------------------------------------------
    4 # CppAD: C++ Algorithmic Differentiation: Copyright (C) 2003-09 Bradley M. Bell
    5 #
    6 # CppAD is distributed under multiple licenses. This distribution is under
    7 # the terms of the
    8 #                     Common Public License Version 1.0.
    9 #
    10 # A copy of this license is included in the COPYING file of this distribution.
    11 # Please visit http://www.coin-or.org/CppAD/ for information on other licenses.
    12 # -----------------------------------------------------------------------------
    13 #
     3# ----------------------------------------------------------------------------
    144# Each of the cases in ext_list and file_list must be handled by the
    155#       case "$ext" in
    166# statment in the script below.
    177#
    18 # List of extensions that are handled by svn_add_id.sh.
    19 # Spaces must surround each entry.
     8# List of extensions that are handled by svn_add_id.sh
    209ext_list=" .sh .py .bat .c .h .cpp .hpp  .omh "
    2110#
    2211# List of specific file names that are handled by svn_add_id.sh
    23 # Spaces must surround each entry.
    24 # No special grep pattern matching characters, except for '.', can be used.
     12# (Assume no special grep pattern matching characters except for .)
    2513file_list=" makefile.am configure.ac "
    2614#
     
    3725        echo "This command adds the Subversion keyword comamnd \$Id"
    3826        echo "to files in and below the specified directory."
     27        echo "It also executes the command"
     28        echo "  svn propset svn:keywords Id set on name"
     29        echo "where name is the name of the file that was modified."
    3930        echo
    4031        echo "If a file already has a Subversion \$Id comamnd, it is"
     
    5344for name in $dir_list
    5445do
    55         if [ -d "$directory/$name" ]
     46        full_name="$directory/$name"
     47        if [ -d "$full_name" ]
    5648        then
    5749                # This is a directory so run svn_add_id.sh on it
    58                 if ! $command "$directory/$name" "$dry_run"
     50                if ! $command "$full_name" "$dry_run"
    5951                then
    60                         echo "Aborted $command $directory/$name $dry_run"
     52                        echo "Aborted $command $full_name $dry_run"
    6153                        exit 1
    6254                fi
     
    7163                        ext=""
    7264                else
    73                         if grep '\$Id.*\$' $directory/$name > /dev/null
     65                        if grep '\$Id.*\$' $full_name > /dev/null
    7466                        then
    7567                                # $Id command is already in this file
     
    8173                if echo "$file_list" | grep "$pattern" > /dev/null
    8274                then
    83                         if grep '\$Id.*\$' $directory/$name > /dev/null
     75                        if grep '\$Id.*\$' $full_name > /dev/null
    8476                        then
    8577                                # $Id command is already in this file
     
    9789                        # interpertor specification; e.g., ! /bin/bash
    9890                        .sh | .py )
    99                         sed < $directory/$name > svn_add_id.$$ \
     91                        sed < $full_name > svn_add_id.$$ \
    10092                                -e '1,1s/^[^!]*$/# $Id$\n&/' \
    10193                                -e '1,1s/^# *!.*$/& \n# $Id$/'
     
    10597                       .bat )
    10698                        echo "rem \$Id\$" > svn_add_id.$$
    107                         cat "$directory/$name" >> svn_add_id.$$
     99                        cat "$full_name" >> svn_add_id.$$
    108100                        ;;
    109101
     
    111103                       .c | .h | .cpp | .hpp )
    112104                        echo "/* \$Id\$ */" > svn_add_id.$$
    113                         cat "$directory/$name" >> svn_add_id.$$
     105                        cat "$full_name" >> svn_add_id.$$
    114106                        ;;
    115107
     
    117109                        .omh )
    118110                        echo "\$Id\$" > svn_add_id.$$
    119                         cat "$directory/$name" >> svn_add_id.$$
     111                        cat "$full_name" >> svn_add_id.$$
    120112                        ;;
    121113
    122114                        # Automake input files
    123115                        makefile.am )
    124                         sed < $directory/$name > svn_add_id.$$ \
     116                        sed < $full_name > svn_add_id.$$ \
    125117                                -e '1,1s/^.*$/# $Id$\n&/'
    126118                        ;;
     
    128120                        # Autoconf input files
    129121                        configure.ac )
    130                         sed < $directory/$name > svn_add_id.$$ \
     122                        sed < $full_name > svn_add_id.$$ \
    131123                                -e '1,1s/^.*$/dnl $Id$\n&/'
    132124                        ;;
     
    135127                # Must have matched one of the cases above because $ext is
    136128                # in $ext_list of $file_list
    137                 echo "$directory/$name"
    138                 if diff $directory/$name svn_add_id.$$
     129                echo "$full_name"
     130                if diff $full_name svn_add_id.$$
    139131                then
    140                         echo "Cannot add \$Id command to $directory/$name"
     132                        echo "Cannot add \$Id command to $full_name"
    141133                        exit 1
    142134                fi
    143135                if [ "$dry_run" == "" ]
    144136                then
    145                         if ! mv svn_add_id.$$ $directory/$name
     137                        if ! mv svn_add_id.$$ $full_name
    146138                        then
    147                                 echo "Cannot modify $directory/$name"
     139                                echo "Cannot modify $full_name"
    148140                                exit 1
     141                        fi
     142                        if ! svn propset svn:keywords Id set on $full_name
     143                        then
     144                                echo "Cannot set Id keyword on for $full_name"
    149145                        fi
    150146                else
Note: See TracChangeset for help on using the changeset viewer.