forked from Imagelibrary/rtems
Patch from Ralf Corsepies <corsepiu@faw.uni-ulm.de> that
fixes handling of word-replace and removes tool/update.
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
AUTOMAKE_OPTIONS = foreign 1.4
|
||||
|
||||
EXTRA_DIST = \
|
||||
update word-replace word-replace2
|
||||
word-replace2
|
||||
|
||||
SUBDIRS = \
|
||||
bmenu \
|
||||
|
||||
@@ -2,7 +2,7 @@ dnl Process this file with autoconf to produce a configure script.
|
||||
dnl NOTE: This is a very coarse port to automake
|
||||
AC_PREREQ(2.13)
|
||||
|
||||
AC_INIT(update)
|
||||
AC_INIT(word-replace2)
|
||||
|
||||
AM_INIT_AUTOMAKE(rtemsdoc-tools,0.0.0,no)
|
||||
dnl Checks for programs.
|
||||
|
||||
221
doc/tools/update
221
doc/tools/update
@@ -1,221 +0,0 @@
|
||||
#!/bin/ksh
|
||||
#
|
||||
# Either bash or ksh will be ok for this; requires 'test -ot'
|
||||
# (-p above just says to not parse $ENV file; makes it faster for
|
||||
# those of us who set $ENV)
|
||||
#
|
||||
#
|
||||
# NOTE
|
||||
#
|
||||
# This is potentially a very dangerous program.
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
|
||||
# progname=`basename $0`
|
||||
progname=${0##*/} # fast basename hack for ksh, bash
|
||||
|
||||
USAGE=\
|
||||
"
|
||||
usage: $progname [ -vs ] [ -b base_directory ] [-p file] [-f] [files...]
|
||||
-v -- verbose
|
||||
-p -- file with replacement instructions
|
||||
-s -- skip prompt for backup verification
|
||||
-f -- do files at end of line
|
||||
|
||||
base_directory is the root directory of the source code to update. It
|
||||
defaults to the current directory.
|
||||
|
||||
This program updates C, H, and .inl files.
|
||||
"
|
||||
|
||||
fatal() {
|
||||
if [ "$1" ]
|
||||
then
|
||||
echo >&2
|
||||
echo $* >&2
|
||||
echo >&2
|
||||
fi
|
||||
echo "$USAGE" 1>&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
#
|
||||
# KLUDGE to figure out at runtime how to echo a line without a
|
||||
# newline.
|
||||
#
|
||||
count=`echo "\\c" | wc -c`
|
||||
if [ ${count} -ne 0 ] ; then
|
||||
EARG="-n"
|
||||
EOL=""
|
||||
else
|
||||
EARG=""
|
||||
EOL="\\c"
|
||||
fi
|
||||
|
||||
#
|
||||
# Function to make sure they do a backup
|
||||
#
|
||||
|
||||
WARNING=\
|
||||
"
|
||||
|
||||
*******************************************************************************
|
||||
*******************************************************************************
|
||||
*******************************************************************************
|
||||
**** ****
|
||||
**** WARNING!!! WARNING!!! WARNING!!! ****
|
||||
**** ****
|
||||
**** ALL SOURCE CODE SHOULD BE BACKED UP BEFORE RUNNING THIS PROGRAM!! ****
|
||||
**** ****
|
||||
**** WARNING!!! WARNING!!! WARNING!!! ****
|
||||
**** ****
|
||||
*******************************************************************************
|
||||
*******************************************************************************
|
||||
*******************************************************************************
|
||||
|
||||
"
|
||||
|
||||
verify_backup()
|
||||
{
|
||||
echo "$WARNING"
|
||||
continue="yes"
|
||||
while [ $continue = "yes" ]
|
||||
do
|
||||
echo ${EARG} "Do you wish to update the source tree at this time [y|n]? " ${EOL}
|
||||
read answer
|
||||
case $answer in
|
||||
[yY]*)
|
||||
continue="no"
|
||||
;;
|
||||
[nN]*)
|
||||
echo
|
||||
echo "Exitting at user request"
|
||||
echo
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
#
|
||||
# Default tools to use...
|
||||
#
|
||||
# NOTE: The GNU versions of both of these are faster.
|
||||
#
|
||||
find_prog=find
|
||||
xargs_prog=xargs
|
||||
|
||||
#
|
||||
# process the options
|
||||
#
|
||||
|
||||
verbose=""
|
||||
suffix=""
|
||||
mode=""
|
||||
base_directory=.
|
||||
do_files="no"
|
||||
do_prompt="yes"
|
||||
replacement_file=""
|
||||
|
||||
while getopts sfp:b:v OPT
|
||||
do
|
||||
case "$OPT" in
|
||||
v)
|
||||
verbose="yes";;
|
||||
s)
|
||||
do_prompt="no";;
|
||||
b)
|
||||
base_directory=${OPTARG};;
|
||||
p)
|
||||
replacement_file=${OPTARG};;
|
||||
f)
|
||||
do_files="yes";;
|
||||
*)
|
||||
fatal
|
||||
esac
|
||||
done
|
||||
|
||||
let $((shiftcount = $OPTIND - 1))
|
||||
shift $shiftcount
|
||||
|
||||
args=$*
|
||||
|
||||
#
|
||||
# Make sure they have done a backup
|
||||
#
|
||||
|
||||
if [ ${do_prompt} = "yes" ]
|
||||
then
|
||||
verify_backup
|
||||
fi
|
||||
|
||||
#
|
||||
# Validate the base directory
|
||||
#
|
||||
|
||||
if [ ! -d $base_directory ]
|
||||
then
|
||||
fatal "${base_directory} does not exist"
|
||||
fi
|
||||
|
||||
#
|
||||
# Validate the replacement file
|
||||
#
|
||||
|
||||
if [ ! -r $replacement_file ]
|
||||
then
|
||||
fatal "${replacement_file} does not exist or is not readable"
|
||||
fi
|
||||
|
||||
|
||||
#
|
||||
# Verify enough of the RTEMS environment variables are set
|
||||
#
|
||||
|
||||
RTEMS_HOME=/usr1/rtems/rtemsdoc-work
|
||||
if [ ! -d "${RTEMS_HOME}" ]
|
||||
then
|
||||
fatal "RTEMS_HOME environment variable is not initialized"
|
||||
fi
|
||||
|
||||
#
|
||||
# Update the files
|
||||
#
|
||||
|
||||
generate_list()
|
||||
{
|
||||
if [ ${do_files} = "yes" ]
|
||||
then
|
||||
for i in $args
|
||||
do
|
||||
echo $i
|
||||
done
|
||||
else
|
||||
${find_prog} ${base_directory} \( -name "*.[ch]" -o -name "*.inl" \) -print
|
||||
fi
|
||||
}
|
||||
|
||||
generate_list | ${xargs_prog} |
|
||||
while read line
|
||||
do
|
||||
|
||||
if [ ${verbose} = yes ] ; then
|
||||
echo ${RTEMS_HOME}/tools/word-replace -p ${replacement_file} ${line}
|
||||
fi
|
||||
${RTEMS_HOME}/tools/word-replace -p ${replacement_file} ${line}
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
exit 1
|
||||
fi
|
||||
for file in ${line}
|
||||
do
|
||||
mv ${file}.fixed ${file}
|
||||
done
|
||||
done
|
||||
|
||||
exit 0
|
||||
|
||||
# Local Variables: ***
|
||||
# mode:ksh ***
|
||||
# End: ***
|
||||
Reference in New Issue
Block a user