From 4a1a95108dd76c4259fe6c37c4471f7969b17983 Mon Sep 17 00:00:00 2001 From: Rong-En Fan Date: Sat, 20 Jan 2007 07:32:02 +0000 Subject: Import ncurses 5.6-20061217 onto the vender branch Approved by: delphij --- contrib/ncurses/misc/ncu-indent | 130 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 130 insertions(+) create mode 100755 contrib/ncurses/misc/ncu-indent (limited to 'contrib/ncurses/misc/ncu-indent') diff --git a/contrib/ncurses/misc/ncu-indent b/contrib/ncurses/misc/ncu-indent new file mode 100755 index 000000000000..1e1c7fffaeb2 --- /dev/null +++ b/contrib/ncurses/misc/ncu-indent @@ -0,0 +1,130 @@ +#!/bin/sh +#**************************************************************************** +#* Copyright (c) 2001-2005,2006 Thomas E. Dickey * +#* * +#* Permission is hereby granted, free of charge, to any person obtaining a * +#* copy of this software and associated documentation files (the * +#* "Software"), to deal in the Software without restriction, including * +#* without limitation the rights to use, copy, modify, merge, publish, * +#* distribute, distribute with modifications, sublicense, and/or sell * +#* copies of the Software, and to permit persons to whom the Software is * +#* furnished to do so, subject to the following conditions: * +#* * +#* The above copyright notice and this permission notice shall be included * +#* in all copies or substantial portions of the Software. * +#* * +#* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * +#* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * +#* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * +#* IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * +#* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * +#* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * +#* THE USE OR OTHER DEALINGS IN THE SOFTWARE. * +#* * +#* Except as contained in this notice, the name(s) of the above copyright * +#* holders shall not be used in advertising or otherwise to promote the * +#* sale, use or other dealings in this Software without prior written * +#* authorization. * +#****************************************************************************/ +# $Id: ncu-indent,v 1.16 2006/02/18 17:02:22 tom Exp $ +NOOP=no +OPTS=' +--blank-lines-after-procedures +--braces-on-if-line +--continuation-indentation0 +--continue-at-parentheses +--cuddle-else +--indent-level4 +--leave-preprocessor-space +--no-blank-lines-after-commas +--no-blank-lines-after-declarations +--no-space-after-function-call-names +--procnames-start-lines +--space-special-semicolon +--swallow-optional-blank-lines +--tab-size8 + +-T NCURSES_EXPORT_VAR +-T NCURSES_INLINE +-T SCREEN +-T TERMTYPE +-T attr_t +-T cchar_t +-T chtype +-T inline +-T wchar_t +-T wint_t + +-T BUFFER +-T CHARTYPE +-T FILE +-T GCC_NORETURN +-T LINE +-T MARK +-T RETSIGTYPE +-T TBUFF +-T WINDOW +-T size_t +-T va_list + +-T Cardinal +-T Widget +-T XtPointer +' +for name in $* +do + case $name in + -v|-n) + NOOP=yes + OPTS="$OPTS -v" + ;; + -*) + OPTS="$OPTS $name" + ;; + *.[ch]|*.cc|*.cpp) + save="${name}".a$$ + test="${name}".b$$ + rm -f "$save" "$test" + mv "$name" "$save" + sed \ + -e '/MODULE_ID(/s/)$/);/' \ + -e 's,\\),//\1,' \ + "$save" >"$test" + cp "$test" "$name" + chmod u+w "$name" + # ${INDENT_PROG-indent} --version + ${INDENT_PROG-indent} -npro $OPTS "$name" + sed \ + -e '/MODULE_ID(/s/);$/)/' \ + -e 's,;[ ]*//GCC_NORETURN;, GCC_NORETURN;,' \ + -e 's,;[ ]*//GCC_PRINTFLIKE(, GCC_PRINTFLIKE(,' \ + -e 's,;[ ]*//GCC_SCANFLIKE(, GCC_SCANFLIKE(,' \ + -e 's,//\(\\),\1,' \ + "$name" >"$test" + mv "$test" "$name" + rm -f "${name}~" + if test $NOOP = yes ; then + if (cmp -s "$name" "$save" ) then + echo "** no change: $name" + else + diff -u "$save" "$name" + fi + rm -f "$name" + mv "$save" "$name" + elif ( cmp -s "$name" "$save" ) ; then + echo "** unchanged $name" + rm -f "${name}" + mv "$save" "$name" + else + echo "** updated $name" + rm -f "$save" + fi + ;; + *) + echo "** ignored: $name" + ;; + esac +done -- cgit v1.2.3