mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
ifchange: check the number of arguments
This commit is contained in:
parent
8da7f4abc7
commit
977252421b
2 changed files with 57 additions and 2 deletions
|
@ -3,6 +3,18 @@
|
||||||
|
|
||||||
# Used in generating revision.h via Makefiles.
|
# Used in generating revision.h via Makefiles.
|
||||||
|
|
||||||
|
help() {
|
||||||
|
cat <<HELP
|
||||||
|
usage: $0 [options] target new-file
|
||||||
|
options:
|
||||||
|
--timestamp[=file] touch timestamp file. (default: prefixed with ".time".
|
||||||
|
under the directory of the target)
|
||||||
|
--keep[=suffix] keep old file with suffix. (default: '.old')
|
||||||
|
--empty assume unchanged if the new file is empty.
|
||||||
|
--color[=always|auto|never] colorize output.
|
||||||
|
HELP
|
||||||
|
}
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
timestamp=
|
timestamp=
|
||||||
keepsuffix=
|
keepsuffix=
|
||||||
|
@ -10,6 +22,10 @@ empty=
|
||||||
color=auto
|
color=auto
|
||||||
until [ $# -eq 0 ]; do
|
until [ $# -eq 0 ]; do
|
||||||
case "$1" in
|
case "$1" in
|
||||||
|
--)
|
||||||
|
shift
|
||||||
|
break;
|
||||||
|
;;
|
||||||
--timestamp)
|
--timestamp)
|
||||||
timestamp=.
|
timestamp=.
|
||||||
;;
|
;;
|
||||||
|
@ -34,6 +50,14 @@ until [ $# -eq 0 ]; do
|
||||||
--debug)
|
--debug)
|
||||||
set -x
|
set -x
|
||||||
;;
|
;;
|
||||||
|
--help)
|
||||||
|
help
|
||||||
|
exit
|
||||||
|
;;
|
||||||
|
--*)
|
||||||
|
echo "$0: unknown option: $1" 1>&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
break
|
break
|
||||||
;;
|
;;
|
||||||
|
@ -41,6 +65,11 @@ until [ $# -eq 0 ]; do
|
||||||
shift
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
|
if [ "$#" != 2 ]; then
|
||||||
|
help
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
target="$1"
|
target="$1"
|
||||||
temp="$2"
|
temp="$2"
|
||||||
if [ "$temp" = - ]; then
|
if [ "$temp" = - ]; then
|
||||||
|
|
|
@ -1,13 +1,16 @@
|
||||||
@echo off
|
@echo off
|
||||||
:: usage: ifchange target temporary
|
:: usage: ifchange target temporary
|
||||||
|
|
||||||
|
for %%I in (%0) do set progname=%%~nI
|
||||||
set timestamp=
|
set timestamp=
|
||||||
set keepsuffix=
|
set keepsuffix=
|
||||||
set empty=
|
set empty=
|
||||||
set color=auto
|
set color=auto
|
||||||
:optloop
|
:optloop
|
||||||
for %%I in (%1) do set opt=%%~I
|
for %%I in (%1) do set opt=%%~I
|
||||||
if "%opt%" == "--timestamp" (
|
if "%opt%" == "--" (
|
||||||
|
shift
|
||||||
|
) else if "%opt%" == "--timestamp" (
|
||||||
set timestamp=.
|
set timestamp=.
|
||||||
shift
|
shift
|
||||||
goto :optloop
|
goto :optloop
|
||||||
|
@ -39,8 +42,18 @@ if "%opt%" == "--timestamp" (
|
||||||
shift
|
shift
|
||||||
echo on
|
echo on
|
||||||
goto :optloop
|
goto :optloop
|
||||||
|
) else if "%opt%" == "--help" (
|
||||||
|
call :help
|
||||||
|
exit /b
|
||||||
|
) else if "%opt:~0,2%" == "--" (
|
||||||
|
echo %progname%: unknown option: %1 1>&2
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
if "%2" == "" (
|
||||||
|
call :help 1>&2
|
||||||
|
exit /b 1
|
||||||
)
|
)
|
||||||
if "%opt%" == "" goto :end
|
|
||||||
|
|
||||||
set dest=%1
|
set dest=%1
|
||||||
set src=%2
|
set src=%2
|
||||||
|
@ -85,4 +98,17 @@ if "%timestamp%" == "" goto :end
|
||||||
for %%I in ("%dest%") do set timestamp=%%~dpI.time.%%~nxI
|
for %%I in ("%dest%") do set timestamp=%%~dpI.time.%%~nxI
|
||||||
)
|
)
|
||||||
goto :end > "%timestamp%"
|
goto :end > "%timestamp%"
|
||||||
|
|
||||||
|
:help
|
||||||
|
for %%I in (
|
||||||
|
"usage: %progname% [options] target new-file"
|
||||||
|
"options:"
|
||||||
|
" --timestamp[=file] touch timestamp file. (default: prefixed with '.time')"
|
||||||
|
" under the directory of the target)"
|
||||||
|
" --keep[=suffix] keep old file with suffix. (default: '.old')"
|
||||||
|
" --empty assume unchanged if the new file is empty."
|
||||||
|
" --color[=always|auto|never] colorize output."
|
||||||
|
) do echo.%%~I
|
||||||
|
goto :eof
|
||||||
|
|
||||||
:end
|
:end
|
||||||
|
|
Loading…
Reference in a new issue