#!/bin/sh # Copyright (C) 2000 Aladdin Enterprises. All rights reserved. # # This software is provided AS-IS with no warranty, either express or # implied. # # This software is distributed under license and may not be copied, # modified or distributed except as expressly authorized under the terms # of the license contained in the file LICENSE in this distribution. # # For more information about licensing, please refer to # http://www.ghostscript.com/licensing/. For information on # commercial licensing, go to http://www.artifex.com/licensing/ or # contact Artifex Software, Inc., 101 Lucas Valley Road #110, # San Rafael, CA 94903, U.S.A., +1(415)492-9861. # $Id: gsindent 6300 2005-12-28 19:56:24Z giles $ # This script formats C source code per the Ghostscript C style guide. # The perl invocations work around a bug in GNU indent. if [ $# -ne 0 ]; then for f in $* do $0 < $f > /tmp/$$ cp -p $f $f.bak if ( test ! -e $f~ ) then cp -p $f $f~; fi mv /tmp/$$ $f done exit fi exec \ perl -pe 's{(#.*/\*)(\*.*)}{$1&$2}' | \ indent \ --blank-lines-after-declarations \ --no-blank-lines-after-procedures \ --leave-optional-blank-lines \ --braces-on-if-line \ --indent-level4 \ --case-indentation4 \ --no-space-after-function-call-names \ --dont-star-comments \ --declaration-indentation0 \ --procnames-start-lines \ --continue-at-parentheses \ --cuddle-else \ --no-space-after-casts \ --leave-preprocessor-space \ - | \ perl -pe 's{(#.*/\*)&(\*.*)}{$1$2}'